Spaces:
Sleeping
Sleeping
File size: 984 Bytes
61d5e4e | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | import numpy as np
from streamsearch import embed
from streamsearch.schema import EMBED_DIM
def test_embed_shape_and_norm():
vecs = embed.embed_texts(["hello world", "a second document"])
assert vecs.shape == (2, EMBED_DIM)
assert vecs.dtype == np.float32
# normalize_embeddings=True -> unit vectors
norms = np.linalg.norm(vecs, axis=1)
np.testing.assert_allclose(norms, 1.0, atol=1e-4)
def test_embed_is_deterministic():
a = embed.embed_texts(["reproducible embedding"])
b = embed.embed_texts(["reproducible embedding"])
np.testing.assert_allclose(a, b, atol=1e-6)
def test_empty_input_returns_empty():
vecs = embed.embed_texts([])
assert vecs.shape == (0, EMBED_DIM)
def test_model_loads_only_once():
# get_model is lru_cached: repeated calls return the same object.
embed.get_model.cache_clear()
m1 = embed.get_model()
m2 = embed.get_model()
assert m1 is m2
assert embed.get_model.cache_info().hits >= 1
|