CocoIndex supports various embedding providers via global_settings.yml.
Local Models (SentenceTransformers)
Set provider: sentence-transformers. No API key is required.
- General Purpose:
nomic-ai/nomic-embed-text-v1.5 - Code Optimized:
nomic-ai/CodeRankEmbed (requires ~1 GB VRAM).
API-based Models (LiteLLM)
For most API providers, set provider: litellm (or omit it).
Common Provider Configurations:
Ollama (Local):
embedding:
model: ollama/nomic-embed-text
# Set OLLAMA_API_BASE in envs if not localhost:11434
OpenAI-compatible (vLLM, LM Studio, etc.):
embedding:
model: openai/your-model-name
envs:
OPENAI_BASE_URL: https://your-endpoint/v1
OPENAI_API_KEY: your-api-key
Azure OpenAI:
embedding:
model: azure/your-deployment-name
envs:
AZURE_API_KEY: your-api-key
AZURE_API_BASE: https://your-resource.openai.azure.com
AZURE_API_VERSION: "2024-06-01"
Other Providers:
- Gemini:
model: gemini/gemini-embedding-001 - Voyage:
model: voyage/voyage-code-3 - Cohere:
model: cohere/embed-v4.0 - AWS Bedrock:
model: bedrock/amazon.titan-embed-text-v2:0
Important: Switching embedding models changes the vector dimensions. You must run ccc reset && ccc index after changing models.
embedding:
provider: sentence-transformers
model: nomic-ai/CodeRankEmbed