Spaces:
Runtime error
Runtime error
| """Local embedding model wrapper (fastembed / ONNX — no torch dependency).""" | |
| from __future__ import annotations | |
| from functools import lru_cache | |
| from typing import List | |
| from .config import get_settings | |
| def _model(): | |
| from fastembed import TextEmbedding | |
| settings = get_settings() | |
| return TextEmbedding(model_name=settings.embedding_model) | |
| def embed_texts(texts: List[str]) -> List[List[float]]: | |
| if not texts: | |
| return [] | |
| # fastembed returns numpy arrays (already L2-normalized for bge models). | |
| return [v.tolist() for v in _model().embed(texts)] | |
| def embed_query(text: str) -> List[float]: | |
| return embed_texts([text])[0] | |