(self, texts: Iterable[str])
| 69 | return self.embed_batch([text])[0] |
| 70 | |
| 71 | def embed_batch(self, texts: Iterable[str]) -> List[List[float]]: |
| 72 | inputs = [text or " " for text in texts] |
| 73 | kwargs: dict[str, object] = {"model": self.model, "input": inputs} |
| 74 | if self.model.startswith("text-embedding-3"): |
| 75 | kwargs["dimensions"] = self.dimensions |
| 76 | response = self._client.embeddings.create(**kwargs) |
| 77 | return [_resize(list(item.embedding), self.dimensions) for item in response.data] |
| 78 | |
| 79 | |
| 80 | class SentenceTransformersEmbedding: |