OpenAI provides industry-leading embedding models that convert text into high-quality vector representations. These embeddings power Cognee’s semantic search capabilities and knowledge graph enhancement features.
OpenAI embeddings are the default choice in Cognee, offering excellent quality, reliability, and performance for most use cases.

Supported Models

text-embedding-3-large

Highest Quality
  • Dimensions: 3072
  • Max Tokens: 8191
  • Best for: Production applications requiring maximum quality

text-embedding-3-small

Cost Optimized
  • Dimensions: 1536
  • Max Tokens: 8191
  • Best for: Cost-conscious applications with good quality needs

text-embedding-ada-002

Legacy Model
  • Dimensions: 1536
  • Max Tokens: 8191
  • Best for: Compatibility with existing applications

Configuration

Default Configuration
# OpenAI embeddings (default)
EMBEDDING_PROVIDER=openai
EMBEDDING_MODEL=openai/text-embedding-3-large
EMBEDDING_DIMENSIONS=3072
EMBEDDING_API_KEY=your_openai_api_key
import cognee

# Use with Cognee
await cognee.add("Your content here")
await cognee.cognify()  # Uses OpenAI embeddings

# Search with semantic similarity
results = await cognee.search("your query")

Usage Examples

import cognee
import os

# Configure OpenAI embeddings
os.environ["EMBEDDING_PROVIDER"] = "openai"
os.environ["EMBEDDING_MODEL"] = "openai/text-embedding-3-large"
os.environ["EMBEDDING_API_KEY"] = "your_openai_api_key"

# Add and process data
await cognee.add("OpenAI provides excellent embedding models for semantic search.")
await cognee.cognify()

# Search uses OpenAI embeddings for similarity
results = await cognee.search("embedding models for search")
print(f"Found {len(results)} semantically similar results")

Performance Characteristics

Quality Comparison

Integration Examples

Vector Database Integration
# OpenAI embeddings with different vector stores

# LanceDB (default)
os.environ["VECTOR_DB_PROVIDER"] = "lancedb"
os.environ["EMBEDDING_PROVIDER"] = "openai"

# Qdrant
os.environ["VECTOR_DB_PROVIDER"] = "qdrant"
os.environ["EMBEDDING_PROVIDER"] = "openai"

# Weaviate
os.environ["VECTOR_DB_PROVIDER"] = "weaviate"
os.environ["EMBEDDING_PROVIDER"] = "openai"

# All work seamlessly with OpenAI embeddings
await cognee.add("Your content")
await cognee.cognify()

Troubleshooting

API Key Issues

Next Steps