Files
Genarrative/server-rs/crates/platform-llm
2026-05-08 11:44:42 +08:00
..
1
2026-05-08 11:44:42 +08:00
1
2026-05-08 11:44:42 +08:00

platform-llm 平台适配 crate

日期:2026-04-21

1. crate 职责

platform-llm 是 Rust 工作区里的大模型平台适配 crate当前首版已经落地以下能力

  1. 统一 Ark / DashScope / 其他 OpenAI 兼容网关的文本模型配置结构
  2. 统一 /chat/completions 文本请求、非流式响应与 SSE 流式增量解析
  3. 统一超时、连接失败、上游错误、空响应与重试策略
  4. 为后续 module-aimodule-storymodule-npcmodule-custom-world 提供可直接复用的基础 client

2. 当前首版边界

当前实现只覆盖“文本 chat completion”主链不提前混入媒体生成和业务编排

  1. 支持 OpenAI 兼容格式的 JSON 请求与 SSE 增量响应
  2. 支持按 provider 打标签,但不把业务 prompt、SSE 转发和模块状态写回本 crate
  3. DashScope 当前只通过“调用方显式提供兼容文本网关 base url”的方式接入不复用图像 API
  4. 角色动画、图片、视频、资产轮询仍留在后续 platform-llm / platform-oss / 业务模块任务里另行实现

3. 核心导出

首版对外导出以下公共类型:

  1. LlmProvider
  2. LlmConfig
  3. LlmMessageRole
  4. LlmMessage
  5. LlmTextRequest
  6. LlmStreamDelta
  7. LlmTextResponse
  8. LlmTokenUsage
  9. LlmClient
  10. LlmError

4. 设计文档

详细约束与接口说明见:

5. 边界约束

  1. platform-llm 只承接模型平台适配,不承接业务模块状态真相与业务规则。
  2. 业务模块只能依赖这里的统一 client / DTO / 错误模型,不能再把上游请求细节散落回各 crate。
  3. api-server 后续如果需要做 REST/SSE façade只允许在协议层调用 platform-llm,不能复制一份私有实现。