# Copyright (c) Meta Platforms, Inc. and affiliates. # All rights reserved. # # This source code is licensed under the terms described in the LICENSE file in # the root directory of this source tree. import random import numpy as np import pytest from llama_stack.apis.vector_io import Chunk EMBEDDING_DIMENSION = 384 @pytest.fixture def vector_db_id() -> str: return f"test-vector-db-{random.randint(1, 100)}" @pytest.fixture(scope="session") def embedding_dimension() -> int: return EMBEDDING_DIMENSION @pytest.fixture(scope="session") def sample_chunks(): """Generates chunks that force multiple batches for a single document to expose ID conflicts.""" n, k = 10, 3 sample = [ Chunk(content=f"Sentence {i} from document {j}", metadata={"document_id": f"document-{j}"}) for j in range(k) for i in range(n) ] return sample @pytest.fixture(scope="session") def sample_embeddings(sample_chunks): np.random.seed(42) return np.array([np.random.rand(EMBEDDING_DIMENSION).astype(np.float32) for _ in sample_chunks])