功能介绍

推理服务功能的核心定义是将训练好的机器学习或深度学习模型部署为可在线调用的服务,使用 HTTP API 或 gRPC 等协议,使应用能够实时或批量地使用模型的预测、分类、生成等功能。该功能主要解决模型训练完成后,如何高效、稳定、便捷地将模型部署到生产环境,并提供可扩展的在线服务。

目录

优势

  • 简化模型部署流程,降低部署复杂度。
  • 提供高可用、高性能的在线和批量推理服务。
  • 支持动态模型更新和版本管理。
  • 实现模型推理服务的自动化运维和监控。

适用场景

  • 实时推荐系统:基于用户行为实时推荐商品或内容。
  • 图像识别:对上传的图像进行分类、检测或识别。
  • 自然语言处理:提供文本分类、情感分析、机器翻译等服务。
  • 金融风控:实时评估用户信用风险或交易风险。
  • 大语言模型服务:提供在线问答、文本生成等服务。
  • 批量推理:对大量非实时数据进行推理,如历史数据分析和报表生成。

带来的价值

  • 加速模型部署,缩短应用开发周期。
  • 提升模型推理效率,降低延迟。
  • 降低运维成本,提高系统稳定性。
  • 支持快速业务迭代和创新。

主要功能

推理服务的模型直投部署

  • 允许用户直接从模型仓库选择指定版本的模型文件,并指定推理运行时镜像,快速部署在线推理服务。系统自动下载、缓存并加载模型,启动推理服务。简化模型部署流程,降低部署门槛。

推理服务的自定义镜像部署

  • 支持用户编写 Dockerfile,将模型及其依赖打包成自定义镜像,再通过标准 Kubernetes Deployment 部署推理服务。该方式灵活性更高,允许用户根据需求定制推理环境。

推理服务的批量操作

  • 支持对多个推理服务进行批量启动、停止、更新和删除操作。
  • 支持批量推理任务的创建、监控和结果导出。
  • 提供批量资源管理,能够批量分配和调整推理服务资源。

推理服务体验

  • 提供交互式界面,方便用户测试和体验推理服务。
  • 支持多种输入输出格式,满足不同应用场景需求。
  • 提供模型性能评估工具,帮助用户优化模型部署。

推理运行时支持

  • 集成多种主流推理框架,如 vLLM、Seldon MLServer 等,支持用户自定义推理运行时。
TIP
  • vLLM:针对 DeepSeek/Qwen 等大语言模型(LLMs)优化,具备高并发处理能力和更优资源效率,提升吞吐量。
  • MLServer:面向传统 ML 模型(XGBoost/图像分类),支持多框架兼容,简化调试流程。

接入方式、日志、Swagger、监控等

  • 提供多种接入方式,如 HTTP API 和 gRPC。
  • 支持详细日志记录与分析,方便用户排查问题。
  • 自动生成 Swagger 文档,便于用户集成和调用推理服务。
  • 提供实时监控和告警功能,保障服务稳定运行。

功能优势

性能优势:

  • 支持 GPU 加速,提升模型推理速度。
  • 支持批量推理,提高吞吐量。
  • 优化推理运行时,降低延迟。

可扩展性:

  • 基于 Kubernetes 构建,支持弹性伸缩。
  • 支持水平扩展,应对高并发场景。
  • 支持大模型分布式推理。
  • 支持批量任务并行处理。

安全性:

  • 提供身份认证和授权机制,保障服务安全。
  • 支持网络隔离,防止数据泄露。
  • 支持模型的安全部署和更新。

稳定性:

  • 提供健康检查和自动重启机制,提高服务可用性。
  • 支持日志监控和告警,及时发现并解决问题。

创建推理服务

第 1 步

选择自定义发布

TIP

自定义发布推理服务需要手动设置参数。您也可以通过组合输入参数创建“模板”,以便快速发布推理服务。

第 2 步

提供模型发布的推理服务详情

参数说明
Name必填,推理 API 的名称。
Description推理 API 的详细描述,说明其功能和用途。
Model必填,用于推理的模型名称。
Version必填,模型版本。选项包括 Branch 和 Tag。
Inference Runtimes必填,推理运行时所用引擎。
Requests CPU必填,推理服务请求的 CPU 资源量。
Requests Memory必填,推理服务请求的内存资源量。
Limits CPU必填,推理服务可使用的最大 CPU 资源量。
Limits Memory必填,推理服务可使用的最大内存资源量。
GPU Acceleration TypeGPU 加速类型。
GPU Acceleration ValueGPU 加速数值。
Temporary storage推理服务使用的临时存储空间。
Mount existing PVC挂载已有的 Kubernetes Persistent Volume Claim (PVC) 作为存储。
Capacity必填,临时存储或 PVC 的容量大小。
Auto scaling是否启用自动扩缩容功能。
Number of instances必填,推理服务运行的实例数量。
Environment variables注入容器运行环境的键值对。
Add parameters传递给容器入口可执行文件的参数。字符串数组(例如 ["--port=8080", "--batch_size=4"])。
Startup command覆盖容器镜像中的默认 ENTRYPOINT 指令。可执行文件及参数(例如 ["python", "serve.py"])。

第 3 步

点击 发布 按钮创建推理服务。

体验

第 1 步

Inference API 服务列表中,点击任意 运行中 服务的名称查看其详情。

第 2 步

点击 体验,展开右侧面板。

第 3 步

提出问题

  • 系统角色

    定义 AI 的目的、语气和操作边界(例如,“你是一名专注于医疗信息的助理”)。

  • 参数

    根据任务类型选择参数,详情请参见下方参数说明。

不同任务类型的参数说明

文本生成

预设参数

参数数据类型说明
do_samplebool是否使用采样;否则使用贪心解码。
max_new_tokensint生成的最大新 tokens 数量,忽略提示中的 tokens。
repetition_penaltyfloat重复惩罚,用于控制生成文本中的重复内容;1.0 表示无惩罚,0 表示重复。
temperaturefloat生成下一个 token 时模型的随机性;1.0 为高随机性,0 为低随机性。
top_kint计算下一个 token 概率分布时,仅考虑概率最高的前 k 个 tokens。
top_pfloat控制模型选择下一个 token 时考虑的累积概率分布。
use_cachebool是否使用模型在生成过程中计算的中间结果。

其他参数

参数数据类型说明
max_lengthint生成的最大 tokens 数量。对应输入提示中的 tokens 数量 + max_new_tokens。若设置了 max_new_tokens,则以其为准。
min_lengthint生成的最小 tokens 数量。对应输入提示中的 tokens 数量 + min_new_tokens。若设置了 min_new_tokens,则以其为准。
min_new_tokensint生成的最小新 tokens 数量,忽略提示中的 tokens。
early_stopbool控制基于 beam 的停止条件。True:当出现 num_beams 个完整候选时停止生成。False:应用启发式方法,在不太可能找到更好候选时停止生成。
num_beamsintbeam search 使用的 beam 数量。1 表示不使用 beam search。
max_timeint允许计算运行的最长时间,单位秒。
num_beam_groupsintnum_beams 分成多个组,确保不同 beam 组间的多样性。
diversity_penaltyfloat在启用 num_beam_groups 时生效。该参数对组间应用多样性惩罚,确保每组生成内容尽可能不同。
penalty_alphafloatpenalty_alpha 大于 0 且 top_k 大于 1 时启用对比搜索。penalty_alpha 越大,对比惩罚越强,生成文本越符合预期。若设置过大,可能导致生成文本过于单一。
typical_pfloat局部典型性度量,衡量预测下一个目标 token 的条件概率与预测下一个随机 token 的期望条件概率的相似度。若设置为小于 1 的浮点数,将保留概率加和达到或超过 typical_p 的最小局部典型 token 集合用于生成。
epsilon_cutofffloat若设置为 0 到 1 之间的浮点数,仅采样条件概率大于 epsilon_cutoff 的 token。建议值根据模型大小在 3e-4 到 9e-4 之间。
eta_cutofffloatEta 采样是局部典型采样和 epsilon 采样的混合。若设置为 0 到 1 之间的浮点数,token 仅在大于 eta_cutoff 或 sqrt(eta_cutoff) * exp(-entropy(softmax(next_token_logits))) 时被考虑。建议值根据模型大小在 3e-4 到 2e-3 之间。
repetition_penaltyfloat重复惩罚参数。1.0 表示无惩罚。

更多参数请参考 Text Generation Parameter Configuration

图像生成

预设参数

参数数据类型说明
num_inference_stepsint去噪步骤数。去噪步骤越多,通常图像质量越高,但推理速度越慢。
use_cachebool是否使用模型在生成过程中计算的中间结果。

其他参数

参数数据类型说明
heightint生成图像的高度,单位像素。
widthint生成图像的宽度,单位像素。
guidance_scalefloat用于调整生成图像的质量与多样性之间的平衡。数值越大多样性越高但质量降低;建议范围为 7 到 8.5。
negative_promptstr 或 List[str]用于指导图像生成时不应包含的内容。

更多参数请参考 Text-to-Image Parameter Configuration

文本分类

预设参数

参数数据类型说明
top_kint返回得分最高的类型标签数量。若提供的数字为 None 或超过模型配置中的标签数量,则默认返回所有标签数量。
use_cachebool是否使用模型在生成过程中计算的中间结果。

更多参数请参考 Text Classification Parameter Configuration

其他参考

Image Classification Parameter Configuration

Conversational Parameter Configuration

Summarization Parameter Configuration

Translation Parameter Configuration

Text2Text Generation Parameter Configuration

Image-to-Image Parameter Configuration