init_embeddings() — langchain Function Reference
Architecture documentation for the init_embeddings() function in base.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 90dc625b_5ad9_7f37_707f_7db8adb4f177["init_embeddings()"] 5edec524_25e6_28b9_8133_408bbec653d2["base.py"] 90dc625b_5ad9_7f37_707f_7db8adb4f177 -->|defined in| 5edec524_25e6_28b9_8133_408bbec653d2 53e18432_bc2a_ecdf_b7d3_a680a26a7108["_infer_model_and_provider()"] 90dc625b_5ad9_7f37_707f_7db8adb4f177 -->|calls| 53e18432_bc2a_ecdf_b7d3_a680a26a7108 514f2145_251e_32a3_b878_b36336e30082["_get_embeddings_class_creator()"] 90dc625b_5ad9_7f37_707f_7db8adb4f177 -->|calls| 514f2145_251e_32a3_b878_b36336e30082 style 90dc625b_5ad9_7f37_707f_7db8adb4f177 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain_v1/langchain/embeddings/base.py lines 190–267
def init_embeddings(
model: str,
*,
provider: str | None = None,
**kwargs: Any,
) -> Embeddings:
"""Initialize an embedding model from a model name and optional provider.
!!! note
Requires the integration package for the chosen model provider to be installed.
See the `model_provider` parameter below for specific package names
(e.g., `pip install langchain-openai`).
Refer to the [provider integration's API reference](https://docs.langchain.com/oss/python/integrations/providers)
for supported model parameters to use as `**kwargs`.
Args:
model: The name of the model, e.g. `'openai:text-embedding-3-small'`.
You can also specify model and model provider in a single argument using
`'{model_provider}:{model}'` format, e.g. `'openai:text-embedding-3-small'`.
provider: The model provider if not specified as part of the model arg
(see above).
Supported `provider` values and the corresponding integration package
are:
- `openai` -> [`langchain-openai`](https://docs.langchain.com/oss/python/integrations/providers/openai)
- `azure_openai` -> [`langchain-openai`](https://docs.langchain.com/oss/python/integrations/providers/openai)
- `bedrock` -> [`langchain-aws`](https://docs.langchain.com/oss/python/integrations/providers/aws)
- `cohere` -> [`langchain-cohere`](https://docs.langchain.com/oss/python/integrations/providers/cohere)
- `google_vertexai` -> [`langchain-google-vertexai`](https://docs.langchain.com/oss/python/integrations/providers/google)
- `huggingface` -> [`langchain-huggingface`](https://docs.langchain.com/oss/python/integrations/providers/huggingface)
- `mistralai` -> [`langchain-mistralai`](https://docs.langchain.com/oss/python/integrations/providers/mistralai)
- `ollama` -> [`langchain-ollama`](https://docs.langchain.com/oss/python/integrations/providers/ollama)
**kwargs: Additional model-specific parameters passed to the embedding model.
These vary by provider. Refer to the specific model provider's
[integration reference](https://reference.langchain.com/python/integrations/)
for all available parameters.
Returns:
An `Embeddings` instance that can generate embeddings for text.
Raises:
ValueError: If the model provider is not supported or cannot be determined
ImportError: If the required provider package is not installed
???+ example
```python
# pip install langchain langchain-openai
# Using a model string
model = init_embeddings("openai:text-embedding-3-small")
model.embed_query("Hello, world!")
# Using explicit provider
model = init_embeddings(model="text-embedding-3-small", provider="openai")
model.embed_documents(["Hello, world!", "Goodbye, world!"])
# With additional parameters
model = init_embeddings("openai:text-embedding-3-small", api_key="sk-...")
```
!!! version-added "Added in `langchain` 0.3.9"
"""
if not model:
providers = _BUILTIN_PROVIDERS.keys()
msg = f"Must specify model name. Supported providers are: {', '.join(providers)}"
raise ValueError(msg)
provider, model_name = _infer_model_and_provider(model, provider=provider)
return _get_embeddings_class_creator(provider)(model=model_name, **kwargs)
Domain
Subdomains
Source
Frequently Asked Questions
What does init_embeddings() do?
init_embeddings() is a function in the langchain codebase, defined in libs/langchain_v1/langchain/embeddings/base.py.
Where is init_embeddings() defined?
init_embeddings() is defined in libs/langchain_v1/langchain/embeddings/base.py at line 190.
What does init_embeddings() call?
init_embeddings() calls 2 function(s): _get_embeddings_class_creator, _infer_model_and_provider.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free