mlflow.gateway

class mlflow.gateway.MlflowGatewayClient(gateway_uri: str | None = None)[源代码]

用于与 MLflow Gateway API 交互的客户端。

参数:

gateway_uri – 网关的可选URI。如果未提供,则尝试从 set_gateway_uri() 的存储结果中解析,然后从环境变量 MLFLOW_GATEWAY_URI 中解析。

create_route(name: str, route_type: str | None = None, model: Dict[str, Any] | None = None) Route[源代码]

警告

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

在网关中创建一个新路由。

警告

此API 仅在Databricks内运行时可用。在其他地方运行时,路由配置通过更新在Gateway服务器启动时指定的路由配置YAML文件来处理。

参数:
  • name – 路由的名称。此参数对所有路由都是必需的。

  • route_type – 路由的类型(例如,’llm/v1/chat’,’llm/v1/completions’,’llm/v1/embeddings’)。对于不由Databricks(提供者不是’databricks’)管理的路由,此参数是必需的。

  • model – 一个表示与路由关联的模型详情的字典。此参数对所有路由都是必需的。该字典应定义: - 模型名称(例如,“gpt-4o-mini”) - 提供者(例如,“openai”,“anthropic”) - 路由中使用的模型配置

返回:

Route 数据结构的序列化表示,提供了关于新创建的路由端点的名称、类型和模型详细信息。

抛出:

mlflow.MlflowException – 如果函数不在 Databricks 中运行。

备注

请参阅 Databricks 官方文档中关于 MLflow Gateway 的部分,了解支持的模型配置示例以及如何在 Databricks 中动态创建新路由。

在 Databricks 中的示例用法:

from mlflow.gateway import MlflowGatewayClient

gateway_client = MlflowGatewayClient("databricks")

openai_api_key = ...

new_route = gateway_client.create_route(
    name="my-route",
    route_type="llm/v1/completions",
    model={
        "name": "question-answering-bot",
        "provider": "openai",
        "openai_config": {
            "openai_api_key": openai_api_key,
        },
    },
)
delete_route(name: str) None[源代码]

警告

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

在网关中删除现有路由。

警告

此API 仅在Databricks内运行时可用。在其他地方运行时,路由删除是通过从Gateway服务器启动时指定的路由配置YAML文件中删除相应条目来处理的。

参数:

name – 要删除的路由名称。

抛出:

mlflow.MlflowException – 如果函数不在 Databricks 中运行。

在 Databricks 中的示例用法:

from mlflow.gateway import MlflowGatewayClient

gateway_client = MlflowGatewayClient("databricks")
gateway_client.delete_route("my-existing-route")
property gateway_uri

获取MLflow Gateway的URI的当前值。

返回:

网关 URI。

get_limits(route: str) LimitsConfig[源代码]

警告

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

获取网关中现有路由的限制。

警告

此API 仅在 连接到Databricks托管的AI网关时 可用

参数:

route – 获取限制的路线名称。

返回:

返回的数据结构是 Limit 数据结构的序列化表示,提供了关于续订周期、键和调用的信息。

示例用法:

from mlflow.gateway import MlflowGatewayClient

gateway_client = MlflowGatewayClient("databricks")

gateway_client.get_limits("my-new-route")
get_route(name: str)[源代码]

警告

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

从网关获取特定查询路由。可检索的路由仅限于那些通过 MLflow 网关服务器配置文件配置的路由(在服务器启动时设置或通过服务器更新命令设置)。

参数:

name – 路由的名称。

返回:

返回的数据结构是 Route 数据结构的序列化表示,提供了关于名称、类型以及模型详细信息(模型名称和提供者)的请求路由端点的信息。

query(route: str, data: Dict[str, Any])[源代码]

警告

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

向配置的提供者路由提交查询。

参数:
  • route – 提交查询的路由名称。

  • data – 要在查询中发送的数据。一个字典,表示给定提供者所需的特定于路由的结构。对于聊天,结构应为: .. code-block:: python

返回:

路由的响应作为字典,标准化为路由类型。

search_routes(page_token: str | None = None) PagedList[Route][源代码]

警告

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

在网关中搜索路由。

参数:

page_token – 指定结果下一页的令牌。它应从之前的 search_routes() 调用中获取。

返回:

返回 MLflow Gateway 服务器中所有已配置并初始化的 Route 数据列表。返回结果将是一个字典列表,详细描述每个活动路由端点的名称、类型和模型细节。

set_limits(route: str, limits: List[Dict[str, Any]]) LimitsConfig[源代码]

警告

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

在网关中为现有路由设置限制。

警告

此API 仅在 Databricks 内运行时 可用

参数:
  • route – 要设置限制的路由名称。

  • limits – 限制(字典数组)用于设置路由。每个限制由一个字典表示,该字典定义了要与路由关联的限制细节。该字典应定义: - renewal_period:表示执行限制的窗口长度的字符串(目前仅支持“minute”)。 - calls:表示每个renewal_period允许的调用次数的非负整数(例如,10、0、55)。 - key:一个可选字符串,表示每路由限制或每用户限制(“user”表示每用户限制,“route”表示每路由限制,如果未提供,默认为每路由限制)。

返回:

返回的数据结构是 Limit 数据结构的序列化表示,提供了关于续订周期、键和调用的信息。

示例用法:

from mlflow.gateway import MlflowGatewayClient

gateway_client = MlflowGatewayClient("databricks")

gateway_client.set_limits(
    "my-new-route", [{"key": "user", "renewal_period": "minute", "calls": 50}]
)
mlflow.gateway.create_route(name: str, route_type: str | None = None, model: Dict[str, Any] | None = None) Route[源代码]

警告

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

在网关中创建一个新路由。

警告

此API 仅在Databricks内部运行时可用 。在其他地方运行时,路由配置通过在Gateway服务器启动期间指定的路由配置YAML文件的更新来处理。

参数:
  • name – 路由的名称。此参数对所有路由都是必需的。

  • route_type – 路由的类型(例如,’llm/v1/chat’,’llm/v1/completions’,’llm/v1/embeddings’)。对于不由Databricks(提供者不是’databricks’)管理的路由,此参数是必需的。

  • model – 一个表示要与路由关联的模型详情的字典。此参数对所有路由都是必需的。此字典应定义:- 模型名称(例如,“gpt-4o-mini”)- 提供者(例如,“openai”,“anthropic”)- 路由中使用的模型配置

返回:

Route 数据结构的序列化表示,提供了关于新创建的路由端点的名称、类型和模型详细信息。

备注

请参阅 Databricks 官方文档中关于 MLflow Gateway 的部分,了解支持的模型配置示例以及如何在 Databricks 中动态创建新路由。

在 Databricks 中的示例用法:

from mlflow.gateway import set_gateway_uri, create_route

set_gateway_uri(gateway_uri="databricks")

openai_api_key = ...

create_route(
    name="my-route",
    route_type="llm/v1/completions",
    model={
        "name": "question-answering-bot",
        "provider": "openai",
        "openai_config": {
            "openai_api_key": openai_api_key,
        },
    },
)
mlflow.gateway.delete_route(name: str) None[源代码]

警告

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

在网关中删除现有路由。

警告

此API 仅在Databricks内运行时可用。在其他地方运行时,路由删除是通过从Gateway服务器启动时指定的路由配置YAML文件中删除相应条目来处理的。

参数:

name – 要删除的路由名称。

在 Databricks 中的示例用法:

from mlflow.gateway import set_gateway_uri, delete_route

set_gateway_uri(gateway_uri="databricks")

delete_route("my-new-route")
mlflow.gateway.get_gateway_uri() str[源代码]

警告

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

返回当前设置的 MLflow AI Gateway 服务器 URI(如果已设置)。如果 Gateway URI 尚未通过 set_gateway_uri 设置,则会引发 MlflowException

mlflow.gateway.get_limits(route: str) LimitsConfig[源代码]

警告

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

获取网关中现有路由的限制。

警告

此API 仅在 连接到Databricks托管的AI网关时 可用

参数:

route – 获取限制的路线名称。

在 Databricks 中的示例用法:

from mlflow.gateway import set_gateway_uri, get_limits

set_gateway_uri(gateway_uri="databricks")

get_limits("my-new-route")
mlflow.gateway.get_route(name: str) Route[源代码]

警告

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

从 MLflow Gateway 服务中检索特定路由。

此函数创建一个 MlflowGatewayClient 实例,并使用它从 Gateway 服务中按名称获取路由。

参数:

name – 要获取的路由名称。

返回:

表示获取路线的 Route 类实例。

mlflow.gateway.query(route: str, data)[源代码]

警告

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

通过网关服务器上的命名路由向配置的服务发出查询请求。此函数将与配置的路由名称(如下例所示)进行接口,并以标准化格式返回提供者的响应。

参数:
  • route – 配置的路由名称。可以通过运行 mlflow.gateway.search_routes() 获取路由名称。

  • data – 要提交到路由的请求负载。预期的结构配置会根据路由配置的不同而有所变化。

返回:

配置的路由端点提供者的标准化格式响应。

聊天示例:

from mlflow.gateway import query, set_gateway_uri

set_gateway_uri(gateway_uri="http://my.gateway:9000")
response = query(
    "my_chat_route",
    {"messages": [{"role": "user", "content": "What is the best day of the week?"}]},
)

补全示例:

from mlflow.gateway import query, set_gateway_uri

set_gateway_uri(gateway_uri="http://my.gateway:9000")
response = query("a_completions_route", {"prompt": "Where do we go from"})

嵌入示例:

from mlflow.gateway import query, set_gateway_uri

set_gateway_uri(gateway_uri="http://my.gateway:9000")
response = query(
    "embeddings_route", {"text": ["I like spaghetti", "and sushi", "but not together"]}
)

对于给定的提供者和路由配置有效的附加参数可以随请求一起包含,如下所示,使用 openai completions 路由请求作为示例:

from mlflow.gateway import query, set_gateway_uri

set_gateway_uri(gateway_uri="http://my.gateway:9000")
response = query(
    "a_completions_route",
    {
        "prompt": "Give me an example of a properly formatted pytest unit test",
        "temperature": 0.6,
        "max_tokens": 1000,
    },
)
mlflow.gateway.search_routes() List[Route][源代码]

警告

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

在 MLflow Gateway 服务中搜索路由。

此函数创建一个 MlflowGatewayClient 实例,并使用它从 Gateway 服务获取路由列表。

返回:

路由实例列表。

mlflow.gateway.set_gateway_uri(gateway_uri: str)[源代码]

警告

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

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

提供一个有效的URI并调用此函数是使用MLflow AI Gateway流式API的必要条件。

参数:
gateway_uri: 正在运行的 MLflow AI Gateway 服务器的完整 uri,如果在

Databricks, “databricks”.

mlflow.gateway.set_limits(route: str, limits: List[Dict[str, Any]]) LimitsConfig[源代码]

警告

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

在网关中为现有路由设置限制。

警告

此API 仅在 Databricks 内运行时 可用

参数:
  • route – 要设置限制的路由名称。

  • limits – 设置在路由上的限制。

在 Databricks 中的示例用法:

from mlflow.gateway import set_gateway_uri, set_limits

set_gateway_uri(gateway_uri="databricks")

set_limits("my-new-route", [{"key": "user", "renewal_period": "minute", "calls": 50}])
class mlflow.gateway.base_models.ConfigModel[源代码]

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

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

一个包含计算字段名称及其对应 ComputedFieldInfo 对象的字典。

model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

class mlflow.gateway.client.MlflowGatewayClient(gateway_uri: str | None = None)[源代码]

用于与 MLflow Gateway API 交互的客户端。

参数:

gateway_uri – 网关的可选URI。如果未提供,则尝试从 set_gateway_uri() 的存储结果中解析,然后从环境变量 MLFLOW_GATEWAY_URI 中解析。

create_route(name: str, route_type: str | None = None, model: Dict[str, Any] | None = None) Route[源代码]

警告

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

在网关中创建一个新路由。

警告

此API 仅在Databricks内运行时可用。在其他地方运行时,路由配置通过更新在Gateway服务器启动时指定的路由配置YAML文件来处理。

参数:
  • name – 路由的名称。此参数对所有路由都是必需的。

  • route_type – 路由的类型(例如,’llm/v1/chat’,’llm/v1/completions’,’llm/v1/embeddings’)。对于不由Databricks(提供者不是’databricks’)管理的路由,此参数是必需的。

  • model – 一个表示与路由关联的模型详情的字典。此参数对所有路由都是必需的。该字典应定义: - 模型名称(例如,“gpt-4o-mini”) - 提供者(例如,“openai”,“anthropic”) - 路由中使用的模型配置

返回:

Route 数据结构的序列化表示,提供了关于新创建的路由端点的名称、类型和模型详细信息。

抛出:

mlflow.MlflowException – 如果函数不在 Databricks 中运行。

备注

请参阅 Databricks 官方文档中关于 MLflow Gateway 的部分,了解支持的模型配置示例以及如何在 Databricks 中动态创建新路由。

在 Databricks 中的示例用法:

from mlflow.gateway import MlflowGatewayClient

gateway_client = MlflowGatewayClient("databricks")

openai_api_key = ...

new_route = gateway_client.create_route(
    name="my-route",
    route_type="llm/v1/completions",
    model={
        "name": "question-answering-bot",
        "provider": "openai",
        "openai_config": {
            "openai_api_key": openai_api_key,
        },
    },
)
delete_route(name: str) None[源代码]

警告

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

在网关中删除现有路由。

警告

此API 仅在Databricks内运行时可用。在其他地方运行时,路由删除是通过从Gateway服务器启动时指定的路由配置YAML文件中删除相应条目来处理的。

参数:

name – 要删除的路由名称。

抛出:

mlflow.MlflowException – 如果函数不在 Databricks 中运行。

在 Databricks 中的示例用法:

from mlflow.gateway import MlflowGatewayClient

gateway_client = MlflowGatewayClient("databricks")
gateway_client.delete_route("my-existing-route")
property gateway_uri

获取MLflow Gateway的URI的当前值。

返回:

网关 URI。

get_limits(route: str) LimitsConfig[源代码]

警告

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

获取网关中现有路由的限制。

警告

此API 仅在 连接到Databricks托管的AI网关时 可用

参数:

route – 获取限制的路线名称。

返回:

返回的数据结构是 Limit 数据结构的序列化表示,提供了关于续订周期、键和调用的信息。

示例用法:

from mlflow.gateway import MlflowGatewayClient

gateway_client = MlflowGatewayClient("databricks")

gateway_client.get_limits("my-new-route")
get_route(name: str)[源代码]

警告

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

从网关获取特定查询路由。可检索的路由仅限于那些通过 MLflow 网关服务器配置文件配置的路由(在服务器启动时设置或通过服务器更新命令设置)。

参数:

name – 路由的名称。

返回:

返回的数据结构是 Route 数据结构的序列化表示,提供了关于名称、类型以及模型详细信息(模型名称和提供者)的请求路由端点的信息。

query(route: str, data: Dict[str, Any])[源代码]

警告

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

向配置的提供者路由提交查询。

参数:
  • route – 提交查询的路由名称。

  • data – 要在查询中发送的数据。一个字典,表示给定提供者所需的特定于路由的结构。对于聊天,结构应为: .. code-block:: python

返回:

路由的响应作为字典,标准化为路由类型。

search_routes(page_token: str | None = None) PagedList[Route][源代码]

警告

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

在网关中搜索路由。

参数:

page_token – 指定结果下一页的令牌。它应从之前的 search_routes() 调用中获取。

返回:

返回 MLflow Gateway 服务器中所有已配置并初始化的 Route 数据列表。返回结果将是一个字典列表,详细描述每个活动路由端点的名称、类型和模型细节。

set_limits(route: str, limits: List[Dict[str, Any]]) LimitsConfig[源代码]

警告

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

在网关中为现有路由设置限制。

警告

此API 仅在 Databricks 内运行时 可用

参数:
  • route – 要设置限制的路由名称。

  • limits – 限制(字典数组)用于设置路由。每个限制由一个字典表示,该字典定义了要与路由关联的限制细节。该字典应定义: - renewal_period:表示执行限制的窗口长度的字符串(目前仅支持“minute”)。 - calls:表示每个renewal_period允许的调用次数的非负整数(例如,10、0、55)。 - key:一个可选字符串,表示每路由限制或每用户限制(“user”表示每用户限制,“route”表示每路由限制,如果未提供,默认为每路由限制)。

返回:

返回的数据结构是 Limit 数据结构的序列化表示,提供了关于续订周期、键和调用的信息。

示例用法:

from mlflow.gateway import MlflowGatewayClient

gateway_client = MlflowGatewayClient("databricks")

gateway_client.set_limits(
    "my-new-route", [{"key": "user", "renewal_period": "minute", "calls": 50}]
)
class mlflow.gateway.config.AI21LabsConfig(*, ai21labs_api_key: str)[源代码]
ai21labs_api_key: str
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'ai21labs_api_key': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'aws_region': FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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)[源代码]
aws_access_key_id: str
aws_secret_access_key: str
aws_session_token: str | None
model_config: ClassVar[ConfigDict] = {}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'aws_access_key_id': FieldInfo(annotation=str, required=True), 'aws_region': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'aws_secret_access_key': FieldInfo(annotation=str, required=True), 'aws_session_token': FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'aws_region': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'aws_role_arn': FieldInfo(annotation=str, required=True), 'session_length_seconds': FieldInfo(annotation=int, required=False, default=900)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

session_length_seconds: int
class mlflow.gateway.config.AliasedConfigModel[源代码]

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

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'aws_config': FieldInfo(annotation=Union[AWSRole, AWSIdAndKey, AWSBaseConfig], required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'anthropic_api_key': FieldInfo(annotation=str, required=True), 'anthropic_version': FieldInfo(annotation=str, required=False, default='2023-06-01')}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'cohere_api_key': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

classmethod validate_cohere_api_key(value)[源代码]
class mlflow.gateway.config.GatewayConfig(*, endpoints: List[RouteConfig])[源代码]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore', 'populate_by_name': True}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'routes': FieldInfo(annotation=List[mlflow.gateway.config.RouteConfig], required=True, alias='endpoints', alias_priority=2)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

routes: List[RouteConfig]
class mlflow.gateway.config.HuggingFaceTextGenerationInferenceConfig(*, hf_server_url: str)[源代码]
hf_server_url: str
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'hf_server_url': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'calls': FieldInfo(annotation=int, required=True), 'key': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'renewal_period': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'limits': FieldInfo(annotation=Union[List[mlflow.gateway.config.Limit], NoneType], required=False, default=[])}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'mistral_api_key': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'model_server_url': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

model_server_url: str
class mlflow.gateway.config.Model(*, name: str | None = None, provider: str | Provider, config: Annotated[ConfigModel, SerializeAsAny()] | None = None)[源代码]
config: Annotated[ConfigModel, SerializeAsAny()] | None
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'config': FieldInfo(annotation=Union[Annotated[mlflow.gateway.base_models.ConfigModel, SerializeAsAny()], NoneType], required=False, default=None), 'name': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'provider': FieldInfo(annotation=Union[str, Provider], required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'name': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'provider': FieldInfo(annotation=Provider, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'mosaicml_api_base': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'mosaicml_api_key': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

一个枚举。

AZURE = 'azure'
AZUREAD = 'azuread'
OPENAI = 'openai'
class mlflow.gateway.config.OpenAIConfig(*, openai_api_key: str, openai_api_type: 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)[源代码]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'openai_api_base': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'openai_api_key': FieldInfo(annotation=str, required=True), 'openai_api_type': FieldInfo(annotation=OpenAIAPIType, required=False, default=<OpenAIAPIType.OPENAI: 'openai'>), 'openai_api_version': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'openai_deployment_name': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'openai_organization': FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'palm_api_key': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

一个枚举。

AI21LABS = 'ai21labs'
AMAZON_BEDROCK = 'amazon-bedrock'
ANTHROPIC = 'anthropic'
BEDROCK = 'bedrock'
COHERE = 'cohere'
DATABRICKS = 'databricks'
DATABRICKS_MODEL_SERVING = 'databricks-model-serving'
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()[源代码]
class mlflow.gateway.config.Route(*, name: str, route_type: str, model: RouteModelInfo, route_url: str, limit: Limit | None = None)[源代码]
class Config[源代码]
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: Limit | None
model: 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] 的字典。

model_fields: ClassVar[Dict[str, FieldInfo]] = {'limit': FieldInfo(annotation=Union[Limit, NoneType], required=False, default=None), 'model': FieldInfo(annotation=RouteModelInfo, required=True), 'name': FieldInfo(annotation=str, required=True), 'route_type': FieldInfo(annotation=str, required=True), 'route_url': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'limit': FieldInfo(annotation=Union[Limit, NoneType], required=False, default=None), 'model': FieldInfo(annotation=Model, required=True), 'name': FieldInfo(annotation=str, required=True), 'route_type': FieldInfo(annotation=RouteType, required=True, alias='endpoint_type', alias_priority=2)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'name': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'provider': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

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

一个枚举。

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)[源代码]
model_config: ClassVar[ConfigDict] = {'extra': 'ignore'}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'togetherai_api_key': FieldInfo(annotation=str, required=True)}

关于模型上定义的字段的元数据,字段名称到 [FieldInfo][pydantic.fields.FieldInfo] 对象的映射。

这取代了 Pydantic V1 中的 Model.__fields__

togetherai_api_key: str
classmethod validate_togetherai_api_key(value)[源代码]