mlflow.gateway

mlflow.gateway.get_gateway_uri() str[source]

警告

MLflow AI gateway 已弃用,并已被生成式 AI 的部署 API 取代。有关迁移,请参阅 https://mlflow.org.cn/docs/latest/llms/gateway/migration.html

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

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

警告

MLflow AI gateway 已弃用,并已被生成式 AI 的部署 API 取代。有关迁移,请参阅 https://mlflow.org.cn/docs/latest/llms/gateway/migration.html

在全局上下文中设置已配置且正在运行的 MLflow AI Gateway 服务器的 URI。

为了使用 MLflow AI Gateway 的流畅 API,需要提供有效的 URI 并调用此函数。

参数
gateway_uri:正在运行的 MLflow AI Gateway 服务器的完整 URI,或者,如果在 Databricks 上运行,则为“databricks”。

Databricks,则为“databricks”。

class mlflow.gateway.base_models.ConfigModel[source]

表示 Gateway 配置数据的 Pydantic 模型,例如 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.EndpointConfig(*, name: str, endpoint_type: mlflow.gateway.config.EndpointType, model: mlflow.gateway.config.Model, limit: mlflow.gateway.config.Limit | None = None)[source]
endpoint_type: mlflow.gateway.config.EndpointType
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_endpoint() Endpoint[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()[source]
class mlflow.gateway.config.EndpointModelInfo(*, 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.EndpointType(value)[source]

枚举。

LLM_V1_CHAT = 'llm/v1/chat'
LLM_V1_COMPLETIONS = 'llm/v1/completions'
LLM_V1_EMBEDDINGS = 'llm/v1/embeddings'
class mlflow.gateway.config.GatewayConfig(*, endpoints: list[mlflow.gateway.config.EndpointConfig], routes: list[mlflow.gateway.config.TrafficRouteConfig] | None = None)[source]
endpoints: list[mlflow.gateway.config.EndpointConfig]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

模型的配置,应为符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

routes: list[mlflow.gateway.config.TrafficRouteConfig] | None
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.RouteDestinationConfig(*, name: str, traffic_percentage: int)[source]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应为符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

name: str
traffic_percentage: int
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]
class mlflow.gateway.config.TrafficRouteConfig(*, name: str, task_type: mlflow.gateway.config.EndpointType, destinations: list[mlflow.gateway.config.RouteDestinationConfig], routing_strategy: Literal['TRAFFIC_SPLIT'] = 'TRAFFIC_SPLIT')[source]
destinations: list[mlflow.gateway.config.RouteDestinationConfig]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

模型的配置,应为符合 [ConfigDict][pydantic.config.ConfigDict] 的字典。

name: str
routing_strategy: Literal['TRAFFIC_SPLIT']
task_type: mlflow.gateway.config.EndpointType