get_model_from_provider¶
inference_models.developer_tools.get_model_from_provider
¶
Retrieve model metadata from a registered weights provider.
Fetches model metadata (including available packages, download URLs, and
configuration) from a registered weights provider. The default provider is
"roboflow", but custom providers can be registered using register_model_provider().
Parameters:
-
(model_id¶ModelId) –Model identifier. Format depends on the provider: - Roboflow: "workspace/project/version" or "model-id" - Custom providers: Provider-specific format
-
(provider¶str) –Name of the weights provider to use. Default provider is "roboflow".
-
(api_key¶ApiKey, default:None) –API key for authentication. Required for private models on Roboflow. If not provided, uses the
ROBOFLOW_API_KEYenvironment variable. -
–**kwargs¶Additional provider-specific parameters.
Returns:
-
ModelMetadata–ModelMetadata object containing: - model_id: Canonical model identifier - model_packages: List of available model packages with different backends - dependencies: Model dependencies and requirements - Additional provider-specific metadata
Raises:
-
ModelRetrievalError–If the provider is not registered or model retrieval fails.
-
UnauthorizedModelAccessError–If API key is invalid or model access is denied.
Examples:
Get model metadata from Roboflow:
>>> from inference_models.developer_tools import get_model_from_provider
>>>
>>> metadata = get_model_from_provider(
... model_id="yolov8n-640",
... provider="roboflow"
... )
>>>
>>> print(f"Model ID: {metadata.model_id}")
>>> print(f"Available packages: {len(metadata.model_packages)}")
>>> for package in metadata.model_packages:
... print(f" - {package.backend_type} ({package.quantization})")
Get private model with API key:
>>> metadata = get_model_from_provider(
... model_id="my-workspace/my-project/2",
... provider="roboflow",
... api_key="your_api_key_here"
... )
Use with custom provider:
>>> # After registering a custom provider
>>> metadata = get_model_from_provider(
... model_id="custom-model-id",
... provider="my_custom_provider",
... custom_param="value"
... )
See Also
register_model_provider(): Register a custom weights providerAutoModel.from_pretrained(): Load models using the provider system