_parse_model_string() — langchain Function Reference
Architecture documentation for the _parse_model_string() function in base.py from the langchain codebase.
Entity Profile
Dependency Diagram
graph TD 2a8b9857_fe98_75a6_d349_c611b3fed406["_parse_model_string()"] 5edec524_25e6_28b9_8133_408bbec653d2["base.py"] 2a8b9857_fe98_75a6_d349_c611b3fed406 -->|defined in| 5edec524_25e6_28b9_8133_408bbec653d2 53e18432_bc2a_ecdf_b7d3_a680a26a7108["_infer_model_and_provider()"] 53e18432_bc2a_ecdf_b7d3_a680a26a7108 -->|calls| 2a8b9857_fe98_75a6_d349_c611b3fed406 daa8a73e_4aae_4eb5_01eb_e23dcee7d22e["_get_provider_list()"] 2a8b9857_fe98_75a6_d349_c611b3fed406 -->|calls| daa8a73e_4aae_4eb5_01eb_e23dcee7d22e style 2a8b9857_fe98_75a6_d349_c611b3fed406 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
libs/langchain_v1/langchain/embeddings/base.py lines 102–154
def _parse_model_string(model_name: str) -> tuple[str, str]:
"""Parse a model string into provider and model name components.
The model string should be in the format 'provider:model-name', where provider
is one of the supported providers.
Args:
model_name: A model string in the format 'provider:model-name'
Returns:
A tuple of (provider, model_name)
Example:
```python
_parse_model_string("openai:text-embedding-3-small")
# Returns: ("openai", "text-embedding-3-small")
_parse_model_string("bedrock:amazon.titan-embed-text-v1")
# Returns: ("bedrock", "amazon.titan-embed-text-v1")
```
Raises:
ValueError: If the model string is not in the correct format or
the provider is unsupported
"""
if ":" not in model_name:
msg = (
f"Invalid model format '{model_name}'.\n"
f"Model name must be in format 'provider:model-name'\n"
f"Example valid model strings:\n"
f" - openai:text-embedding-3-small\n"
f" - bedrock:amazon.titan-embed-text-v1\n"
f" - cohere:embed-english-v3.0\n"
f"Supported providers: {_BUILTIN_PROVIDERS.keys()}"
)
raise ValueError(msg)
provider, model = model_name.split(":", 1)
provider = provider.lower().strip()
model = model.strip()
if provider not in _BUILTIN_PROVIDERS:
msg = (
f"Provider '{provider}' is not supported.\n"
f"Supported providers and their required packages:\n"
f"{_get_provider_list()}"
)
raise ValueError(msg)
if not model:
msg = "Model name cannot be empty"
raise ValueError(msg)
return provider, model
Domain
Subdomains
Calls
Called By
Source
Frequently Asked Questions
What does _parse_model_string() do?
_parse_model_string() is a function in the langchain codebase, defined in libs/langchain_v1/langchain/embeddings/base.py.
Where is _parse_model_string() defined?
_parse_model_string() is defined in libs/langchain_v1/langchain/embeddings/base.py at line 102.
What does _parse_model_string() call?
_parse_model_string() calls 1 function(s): _get_provider_list.
What calls _parse_model_string()?
_parse_model_string() is called by 1 function(s): _infer_model_and_provider.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free