Embeddings¶
Generate vector embeddings from text using embed() and aembed().
Basic usage¶
from llmgate import embed
# Single string
resp = embed("text-embedding-3-small", "Hello world")
vector: list[float] = resp.embeddings[0]
print(len(vector)) # 1536
# Batch — list of strings
resp = embed("text-embedding-3-small", ["Hello", "world", "foo"])
vectors: list[list[float]] = resp.embeddings # one per input
Async¶
Provider examples¶
The EmbeddingResponse¶
resp.embeddings # list[list[float]] — one vector per input string
resp.model # str — model name
resp.provider # str — "openai" | "gemini" | ...
resp.usage # TokenUsage
resp.usage.prompt_tokens
resp.usage.total_tokens
Provider support¶
| Provider | Supported | Notes |
|---|---|---|
| OpenAI | ✅ | dimensions param to truncate |
| Google Gemini | ✅ | Uses gemini/ prefix |
| Azure OpenAI | ✅ | Uses azure/ prefix |
| Cohere | ✅ | Batch supported |
| Mistral | ✅ | |
| Bedrock | ✅ | Titan models |
| Ollama | ✅ | Local models |
| Anthropic | ❌ | Raises EmbeddingsNotSupported |
| Groq | ❌ | Raises EmbeddingsNotSupported |