mlflow.gateway

mlflow.gateway.get_gateway_uri() str[source]

警告

MLflow AI gateway 已被弃用,已被用于生成式 AI 的 deployments API 所取代。有关迁移,请参见 https://mlflow.org/docs/latest/llms/gateway/migration.html

返回当前已设置的 MLflow AI Gateway 服务器 URI(当且仅当已设置)。如果未使用 set_gateway_uri 设置 Gateway uri,则会引发 MlflowException

mlflow.gateway.set_gateway_uri(gateway_uri: str)[source]

警告

MLflow AI gateway 已弃用,已被 deployments API 用于生成式 AI 的解决方案取代。有关迁移,请参阅 https://mlflow.org/docs/latest/llms/gateway/migration.html

Sets the uri of a configured and running MLflow AI Gateway server in a global context.

必须提供有效的 uri 并调用此函数,才能使用 MLflow AI Gateway fluent APIs。

Args:
gateway_uri: The full uri of a running MLflow AI Gateway server or, if running on

Databricks, “databricks”.

class mlflow.gateway.base_models.ConfigModel[source]

一个 pydantic 模型,表示 Gateway 配置数据,例如 OpenAI completions 的路由定义,包含路由名称、模型名称、API 密钥等。

class mlflow.gateway.config.AI21LabsConfig(*, ai21labs_api_key: str)[source]
ai21labs_api_key: str
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

classmethod validate_ai21labs_api_key(value)[source]
class mlflow.gateway.config.AWSBaseConfig(*, aws_region: str | None = None)[source]
aws_region: str | None
model_config: ClassVar[ConfigDict] = {}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

class mlflow.gateway.config.AWSIdAndKey(*, aws_region: str | None = None, aws_access_key_id: str, aws_secret_access_key: str, aws_session_token: str | None = None)[source]
aws_access_key_id: str
aws_secret_access_key: str
aws_session_token: str | None
model_config: ClassVar[ConfigDict] = {}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

class mlflow.gateway.config.AWSRole(*, aws_region: str | None = None, aws_role_arn: str, session_length_seconds: int = 900)[source]
aws_role_arn: str
model_config: ClassVar[ConfigDict] = {}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

session_length_seconds: int
class mlflow.gateway.config.AliasedConfigModel[source]

启用在配置模型中使用字段别名以实现向后兼容

model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

class mlflow.gateway.config.AmazonBedrockConfig(*, aws_config: mlflow.gateway.config.AWSRole | mlflow.gateway.config.AWSIdAndKey | mlflow.gateway.config.AWSBaseConfig)[source]
aws_config: mlflow.gateway.config.AWSRole | mlflow.gateway.config.AWSIdAndKey | mlflow.gateway.config.AWSBaseConfig
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

class mlflow.gateway.config.AnthropicConfig(*, anthropic_api_key: str, anthropic_version: str = '2023-06-01')[source]
anthropic_api_key: str
anthropic_version: str
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

classmethod validate_anthropic_api_key(value)[source]
class mlflow.gateway.config.CohereConfig(*, cohere_api_key: str)[source]
cohere_api_key: str
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

classmethod validate_cohere_api_key(value)[source]
class mlflow.gateway.config.GatewayConfig(*, endpoints: list[mlflow.gateway.config.RouteConfig])[source]
endpoints: list[mlflow.gateway.config.RouteConfig]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

class mlflow.gateway.config.GeminiConfig(*, gemini_api_key: str)[source]
gemini_api_key: str
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

classmethod validate_gemini_api_key(value)[source]
class mlflow.gateway.config.HuggingFaceTextGenerationInferenceConfig(*, hf_server_url: str)[source]
hf_server_url: str
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

class mlflow.gateway.config.Limit(*, calls: int, key: str | None = None, renewal_period: str)[source]
calls: int
key: str | None
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

renewal_period: str
class mlflow.gateway.config.LimitsConfig(*, limits: list[mlflow.gateway.config.Limit] | None = [])[source]
limits: list[mlflow.gateway.config.Limit] | None
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

class mlflow.gateway.config.MistralConfig(*, mistral_api_key: str)[source]
mistral_api_key: str
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

classmethod validate_mistral_api_key(value)[source]
class mlflow.gateway.config.MlflowModelServingConfig(*, model_server_url: str)[source]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'protected_namespaces': ()}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

model_server_url: str
class mlflow.gateway.config.Model(*, name: str | None = None, provider: str | mlflow.gateway.config.Provider, config: Optional[mlflow.gateway.base_models.ConfigModel] = None)[source]
config: Optional[mlflow.gateway.base_models.ConfigModel]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

name: str | None
provider: str | mlflow.gateway.config.Provider
classmethod validate_config(info, values)[source]
classmethod validate_provider(value)[source]
class mlflow.gateway.config.ModelInfo(*, name: str | None = None, provider: mlflow.gateway.config.Provider)[source]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

name: str | None
provider: mlflow.gateway.config.Provider
class mlflow.gateway.config.MosaicMLConfig(*, mosaicml_api_key: str, mosaicml_api_base: str | None = None)[source]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

mosaicml_api_base: str | None
mosaicml_api_key: str
classmethod validate_mosaicml_api_key(value)[source]
class mlflow.gateway.config.OpenAIAPIType(value)[source]

一个枚举。

AZURE = 'azure'
AZUREAD = 'azuread'
OPENAI = 'openai'
class mlflow.gateway.config.OpenAIConfig(*, openai_api_key: str, openai_api_type: mlflow.gateway.config.OpenAIAPIType = OpenAIAPIType.OPENAI, openai_api_base: str | None = None, openai_api_version: str | None = None, openai_deployment_name: str | None = None, openai_organization: str | None = None)[source]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

openai_api_base: str | None
openai_api_key: str
openai_api_type: mlflow.gateway.config.OpenAIAPIType
openai_api_version: str | None
openai_deployment_name: str | None
openai_organization: str | None
classmethod validate_field_compatibility(info: dict[str, typing.Any])[source]
classmethod validate_openai_api_key(value)[source]
class mlflow.gateway.config.PaLMConfig(*, palm_api_key: str)[source]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

palm_api_key: str
classmethod validate_palm_api_key(value)[source]
class mlflow.gateway.config.Provider(value)[source]

一个枚举。

AI21LABS = 'ai21labs'
AMAZON_BEDROCK = 'amazon-bedrock'
ANTHROPIC = 'anthropic'
BEDROCK = 'bedrock'
COHERE = 'cohere'
DATABRICKS = 'databricks'
DATABRICKS_MODEL_SERVING = 'databricks-model-serving'
GEMINI = 'gemini'
HUGGINGFACE_TEXT_GENERATION_INFERENCE = 'huggingface-text-generation-inference'
MISTRAL = 'mistral'
MLFLOW_MODEL_SERVING = 'mlflow-model-serving'
MOSAICML = 'mosaicml'
OPENAI = 'openai'
PALM = 'palm'
TOGETHERAI = 'togetherai'
classmethod values()[source]
class mlflow.gateway.config.Route(*, name: str, route_type: str, model: mlflow.gateway.config.RouteModelInfo, route_url: str, limit: mlflow.gateway.config.Limit | None = None)[source]
class Config[source]
json_schema_extra = {'example': {'model': {'name': 'gpt-4o-mini', 'provider': 'openai'}, 'name': 'openai-completions', 'route_type': 'llm/v1/completions', 'route_url': '/gateway/routes/completions/invocations'}}
limit: mlflow.gateway.config.Limit | None
model: mlflow.gateway.config.RouteModelInfo
model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'json_schema_extra': {'example': {'model': {'name': 'gpt-4o-mini', 'provider': 'openai'}, 'name': 'openai-completions', 'route_type': 'llm/v1/completions', 'route_url': '/gateway/routes/completions/invocations'}}}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

name: str
route_type: str
route_url: str
to_endpoint()[source]
class mlflow.gateway.config.RouteConfig(*, name: str, endpoint_type: mlflow.gateway.config.RouteType, model: mlflow.gateway.config.Model, limit: mlflow.gateway.config.Limit | None = None)[source]
endpoint_type: mlflow.gateway.config.RouteType
limit: mlflow.gateway.config.Limit | None
model: mlflow.gateway.config.Model
model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

name: str
to_route() mlflow.gateway.config.Route[source]
classmethod validate_endpoint_name(route_name)[source]
classmethod validate_limit(value)[source]
classmethod validate_model(model)[source]
classmethod validate_route_type(value)[source]
validate_route_type_and_model_name()
class mlflow.gateway.config.RouteModelInfo(*, name: str | None = None, provider: str)[source]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

name: str | None
provider: str
class mlflow.gateway.config.RouteType(value)[source]

一个枚举。

LLM_V1_CHAT = 'llm/v1/chat'
LLM_V1_COMPLETIONS = 'llm/v1/completions'
LLM_V1_EMBEDDINGS = 'llm/v1/embeddings'
class mlflow.gateway.config.TogetherAIConfig(*, togetherai_api_key: str)[source]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应该是一个符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

togetherai_api_key: str
classmethod validate_togetherai_api_key(value)[source]