Skip to content

ai_model

Matrix-X edited this page Aug 26, 2024 · 1 revision

AI 模型

梳理调用和管理模型的逻辑可以分为以下几个层次:

Service 层逻辑

Service 层负责业务逻辑的编排和调用,通常不直接操作模型实例,而是通过管理类(如 Model Manager)来管理和操作模型。

Model Manager

Model Manager 是一个专门用于管理和操作模型实例的类。在这个层级,Model Manager 负责: 初始化模型实例:基于业务需求,Model Manager 可以从 ModelProvider 中获取所需的模型信息,然后实例化对应的模型。 管理模型生命周期:Model Manager 负责模型的加载、缓存、释放等生命周期管理。 提供统一接口:Model Manager 为 Service 层提供一个统一的接口来操作各种不同类型的模型。

Model Instance

Model Instance 是具体的模型实例化对象。每个 Model Instance 通常代表一个具体的机器学习模型、AI 模型等,Model Manager 负责生成和管理这些实例。 Model Instance 可以是通过 Model Manager 在需要的时候动态生成的,也可以是预先生成并缓存的。

Provider Manager 与 Model Provider

Provider Manager 是更高一层的管理类,负责管理多个 ModelProvider。 例如:如果你的系统支持多种平台(如 AWS, Azure, Google Cloud), Provider Manager 可能会管理这些不同的平台实例。 Model Provider 则是具体的模型提供商信息和配置,它决定了模型的具体实现和配置(如 API Key, 配额等)。 Model Provider 提供模型的配置信息(例如加密配置、配额等),Model Manager 在需要生成 Model Instance 时,通常会先从 Model Provider 获取必要的配置信息,然后基于这些信息实例化具体的 Model Instance。

针对Provider和ModelProvider,有两个对象表,分别是 providers 和 provider_models

流程总结:

Service 层 调用 Model Manager 来处理业务逻辑所需的模型操作。

Model Manager 根据业务需求从 Model Provider 获取所需的配置信息。

Model Manager 通过这些配置信息生成或管理具体的 Model Instance。

Provider Manager 负责多个 Model Provider 的管理和调度,为 Model Manager 提供正确的 Model Provider 信息。

这个设计使得每个模块职责清晰,Model Manager 负责模型实例的管理和调用,Provider Manager 负责管理模型提供商的信息和配置。

Clone this wiki locally