dataflow.registries.model_registry¶

Model Registry Client for Haive.

This module provides a client interface for working with the registry system to access LLM and embedding models with dynamic environment variable detection.

Attributes¶

Classes¶

ModelRegistry

Client for working with registered LLM and embedding models.

Module Contents¶

class dataflow.registries.model_registry.ModelRegistry¶

Client for working with registered LLM and embedding models.

detect_environment_variables()¶

Detect available environment variables for LLM and embedding. providers.

Returns:

Dict mapping provider names to available environment variables

get_available_embedding_providers() list[dict[str, Any]]¶

Get all available embedding providers.

Returns:

List of available embedding providers

get_available_llm_providers() list[dict[str, Any]]¶

Get all available LLM providers.

Returns:

List of available LLM providers

get_embedding_model(model_id: str) dict[str, Any] | None¶

Get a specific embedding model by ID.

Parameters:

model_id – ID of the model

Returns:

Model data or None if not found

get_embedding_models(provider: str | None = None, only_available: bool = False) list[dict[str, Any]]¶

Get all embedding models, optionally filtered by provider.

Parameters:
  • provider – Optional provider name to filter by

  • only_available – If True, only return models from available providers

Returns:

List of embedding model data

get_llm_model(model_id: str) dict[str, Any] | None¶

Get a specific LLM model by ID.

Parameters:

model_id – ID of the model

Returns:

Model data or None if not found

get_llm_models(provider: str | None = None, only_available: bool = False) list[dict[str, Any]]¶

Get all LLM models, optionally filtered by provider.

Parameters:
  • provider – Optional provider name to filter by

  • only_available – If True, only return models from available providers

Returns:

List of LLM model data

get_required_environment_vars() list[dict[str, Any]]¶

Scan source code to detect environment variables used by LLM. providers.

Returns:

List of environment variables with provider mapping

get_secret_from_vault(var_name: str) str | None¶

Get a secret value from the vault.

Parameters:

var_name – Name of the environment variable

Returns:

Secret value or None if not found

normalize_model_data(model: dict[str, Any]) dict[str, Any]¶

Normalize model data to ensure consistent field access.

Parameters:

model – Model data to normalize

Returns:

Normalized model data

update_provider_availability()¶

Scan environment variables and update provider availability. status.

dataflow.registries.model_registry.CORE_LLM_AVAILABLE = True¶
dataflow.registries.model_registry.logger¶