mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-09 08:08:32 +00:00
- introduce baseembeddingsprovider and helper for embedding functions - add core embedding types and migrate providers, factory, and storage modules - remove unused type aliases and fix pydantic schema error - update providers with env var support and related fixes
25 lines
779 B
Python
25 lines
779 B
Python
"""Cohere embeddings provider."""
|
|
|
|
from chromadb.utils.embedding_functions.cohere_embedding_function import (
|
|
CohereEmbeddingFunction,
|
|
)
|
|
from pydantic import Field
|
|
|
|
from crewai.rag.core.base_embeddings_provider import BaseEmbeddingsProvider
|
|
|
|
|
|
class CohereProvider(BaseEmbeddingsProvider[CohereEmbeddingFunction]):
|
|
"""Cohere embeddings provider."""
|
|
|
|
embedding_callable: type[CohereEmbeddingFunction] = Field(
|
|
default=CohereEmbeddingFunction, description="Cohere embedding function class"
|
|
)
|
|
api_key: str = Field(
|
|
description="Cohere API key", validation_alias="COHERE_API_KEY"
|
|
)
|
|
model_name: str = Field(
|
|
default="large",
|
|
description="Model name to use for embeddings",
|
|
validation_alias="COHERE_MODEL_NAME",
|
|
)
|