__init__() — langchain Function Reference
Architecture documentation for the __init__() function in vectorstores.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 5850e811_c55d_a2f8_15f1_17047150a50a["__init__()"] d25f9e94_3ec0_b9ca_7d2f_eb7ef487ccab["Chroma"] 5850e811_c55d_a2f8_15f1_17047150a50a -->|defined in| d25f9e94_3ec0_b9ca_7d2f_eb7ef487ccab style 5850e811_c55d_a2f8_15f1_17047150a50a fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/partners/chroma/langchain_chroma/vectorstores.py lines 302–420
def __init__(
self,
collection_name: str = _LANGCHAIN_DEFAULT_COLLECTION_NAME,
embedding_function: Embeddings | None = None,
persist_directory: str | None = None,
host: str | None = None,
port: int | None = None,
headers: dict[str, str] | None = None,
chroma_cloud_api_key: str | None = None,
tenant: str | None = None,
database: str | None = None,
client_settings: chromadb.config.Settings | None = None,
collection_metadata: dict | None = None,
collection_configuration: CreateCollectionConfiguration | None = None,
client: chromadb.ClientAPI | None = None,
relevance_score_fn: Callable[[float], float] | None = None,
create_collection_if_not_exists: bool | None = True, # noqa: FBT001, FBT002
*,
ssl: bool = False,
) -> None:
"""Initialize with a Chroma client.
Args:
collection_name: Name of the collection to create.
embedding_function: Embedding class object. Used to embed texts.
persist_directory: Directory to persist the collection.
host: Hostname of a deployed Chroma server.
port: Connection port for a deployed Chroma server. Default is 8000.
ssl: Whether to establish an SSL connection with a deployed Chroma server.
Default is False.
headers: HTTP headers to send to a deployed Chroma server.
chroma_cloud_api_key: Chroma Cloud API key.
tenant: Tenant ID. Required for Chroma Cloud connections.
Default is 'default_tenant' for local Chroma servers.
database: Database name. Required for Chroma Cloud connections.
Default is 'default_database'.
client_settings: Chroma client settings
collection_metadata: Collection configurations.
collection_configuration: Index configuration for the collection.
client: Chroma client. Documentation:
https://docs.trychroma.com/reference/python/client
relevance_score_fn: Function to calculate relevance score from distance.
Used only in `similarity_search_with_relevance_scores`
create_collection_if_not_exists: Whether to create collection
if it doesn't exist. Defaults to `True`.
"""
_tenant = tenant or chromadb.DEFAULT_TENANT
_database = database or chromadb.DEFAULT_DATABASE
_settings = client_settings or Settings()
client_args = {
"persist_directory": persist_directory,
"host": host,
"chroma_cloud_api_key": chroma_cloud_api_key,
}
if sum(arg is not None for arg in client_args.values()) > 1:
provided = [
name for name, value in client_args.items() if value is not None
]
msg = (
f"Only one of 'persist_directory', 'host' and 'chroma_cloud_api_key' "
f"is allowed, but got {','.join(provided)}"
)
raise ValueError(msg)
if client is not None:
self._client = client
# PersistentClient
elif persist_directory is not None:
self._client = chromadb.PersistentClient(
path=persist_directory,
settings=_settings,
tenant=_tenant,
database=_database,
)
# HttpClient
elif host is not None:
Domain
Subdomains
Source
Frequently Asked Questions
What does __init__() do?
__init__() is a function in the langchain codebase, defined in libs/partners/chroma/langchain_chroma/vectorstores.py.
Where is __init__() defined?
__init__() is defined in libs/partners/chroma/langchain_chroma/vectorstores.py at line 302.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free