docs/CN/LLM-Hub/LLM-Hub-PRD/LLM-Hub-PRD.md
2025-04-23 15:57:59 +08:00

9.2 KiB
Raw Blame History

LLMHub 产品需求文档PRD


1. 文档版本与修订记录

版本号 日期 作者 变更说明
0.1 2025-04-23 JCNC 团队 初始版本,完成大纲

2. 产品概述

2.1 背景与现状

  • 各大模型平台 API 标准差异大,调用繁琐;
  • 企业对数据隐私、合规、高可用性需求日益提升;
  • 多模态 AI 场景需求快速增长,但集成成本高。

2.2 产品愿景与价值

  • 愿景:打造 "一站式" 大模型接入与管理平台,让组织零门槛使用 AI 能力;
  • 核心价值
    • 降本增效:统一抽象、多云/本地混合部署;
    • 安全合规:企业级权限、审计、加密;
    • 可观察:全链路监控、告警、日志分析;
    • 可扩展:插件化架构、生态开放。

3. 目标用户与用户画像

用户类型 角色 关键需求
企业管理员 CTO/IT 经理 快速部署与版本回滚;多租户隔离;权限管控;成本可视化
开发者 后端/AI 工程师 统一 SDK、丰富样例自动化测试调试日志扩展性能调优
运维工程师 DevOps 健康检测;自动弹性伸缩;日志告警;灾备策略
产品经理&业务团队 PM/产品 接口易用;版本管理;调用监控;成本中心分摊
最终用户(消费者) 普通用户 简洁对话界面;快速响应;多端体验一致性

5. 用户旅程与场景

5.1 企业管理员一键部署场景

  1. 登录控制台 → 选择模型版本 → 填写环境配置 → 点击 "部署"。
  2. 平台触发 Helm 安装或 Kubernetes Operator → 自动化健康探针 → 部署成功通知。
  3. 回滚与报警:若探针失败,自动回滚到上一次稳定版本,并在控制台与邮件/钉钉通知中推送告警。

5.2 开发者统一调用场景

  1. 安装 SDK → 配置 API Key 与 Endpoint → 引入统一 "LLMHubSDK"。
  2. 支持本地 Mock 模式与远程模式切换,便于本地调试。

5.3 运维监控与告警场景

  • 引入 Prometheus Exporter → Grafana 可视化面板。
  • 设定 QPS、延迟、错误率阈值 → 告警策略(短信/邮件/WebHook
  • 日志聚合Elasticsearch + Kibana支持结构化日志查询与异常追溯。

6. 技术架构与模块设计

6.1 总体架构

6.2 模块细化

模块 功能点
API 网关 认证鉴权、限流、请求路由、熔断
适配器层 各供应商 API 封装、参数映射、版本兼容
编排模块 Helm/Operator 调用、健康探针、回滚逻辑
调度模块 GPU/CPU 利用率监控、Pod 弹性伸缩、分区隔离
监控告警 Exporter、Grafana 仪表、Prometheus Alertmanager、WebHook 集成
日志审计 调用链追踪、ELK 日志聚合、审计报告导出
权限管理 RBAC、OAuth2.0、SSO 集成
SDK & CLI 多语言 SDK、CLI 工具、Mock 本地模式
运维工具 灾备脚本、升级回滚脚本、备份恢复脚本
详细设计

7. 接口规范与示例

openapi: 3.0.1
info:
  title: LLMHub API
  version: 1.0.0
paths:
  /v1/models:
    get:
      summary: 列出可用模型
      responses:
        '200':
          description: 模型列表
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelList'

  /v1/deploy:
    post:
      summary: 部署模型
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeployRequest'
      responses:
        '202':
          description: 部署已接受
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeployResponse'

components:
  schemas:
    ModelList:
      type: object
      properties:
        models:
          type: array
          items:
            $ref: '#/components/schemas/Model'

    Model:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string

    DeployRequest:
      type: object
      required:
        - modelId
        - cluster
      properties:
        modelId:
          type: string
          description: 要部署的模型 ID
        cluster:
          type: string
          description: 目标集群名称
        resources:
          type: object
          properties:
            cpu:
              type: integer
              description: CPU 核数
            gpu:
              type: integer
              description: GPU 卡数
        env:
          type: object
          description: 环境变量列表
          additionalProperties:
            type: string

    DeployResponse:
      type: object
      properties:
        deploymentId:
          type: string
          description: 部署任务 ID
        status:
          type: string
          description: 当前状态
        startedAt:
          type: string
          format: date-time
          description: 启动时间

7.2 样例请求与响应

请求

POST /v1/deploy HTTP/1.1
Host: api.llmhub.example.com
Authorization: Bearer <token>
Content-Type: application/json

{
  "modelId": "openai-gpt-4-xlarge",
  "cluster": "private-cloud-1",
  "resources": {
    "cpu": 16,
    "gpu": 2
  },
  "env": {
    "MAX_TOKENS": "2048"
  }
}

响应

HTTP/1.1 202 Accepted
Content-Type: application/json

{
  "deploymentId": "dep-123456",
  "status": "initializing",
  "startedAt": "2025-04-24T10:00:00+08:00"
}

8. 非功能需求

  1. 性能
    • 平均响应时长 ≤ 200msP95;
    • 系统峰值 QPS ≥ 2000;
  2. 可用性
    • SLA ≥ 99.9%(月度);
    • 支持多 AZ 部署与链路故障切换;
  3. 安全
    • OAuth2.0 / JWT / RBAC;
    • TLS 全链路加密;
    • 日志审计覆盖 100% 调用;
  4. 可扩展性
    • 插件化适配器动态加载;
    • 支持 0-100+ 模型实例线性扩容;
  5. 可观测性
    • Prometheus + Grafana 指标;
    • ELK 日志搜索;
    • 分布式追踪 (Jaeger);
  6. 合规
    • GDPR、ISO27001、等保二级;
    • 数据脱敏与访问日志保留策略;

9. UX/UI 细节说明

  • 部署向导:多步骤分屏设计,当前步骤突出,支持中途保存;
  • 仪表盘:实时 QPS、延迟、资源利用率图表;
  • 日志中心:关键字搜索,高亮、过滤、导出;
  • 权限控制:角色列表页面,支持批量授权、权限树视图;
  • 暗黑/明亮主题:一键切换,跟随系统主题配置;

10. 测试与验收

  1. 单元测试覆盖率 ≥ 90%;
  2. 集成测试场景覆盖:部署、回滚、扩容、调用限流;
  3. 安全渗透测试:无高危漏洞;
  4. 性能压测:最大并发 2000 QPS 无误;
  5. 用户验收:按用户故事完成演示并通过评审;

11. 风险与缓解措施

风险 概率 影响 缓解措施
第三方模型接口变动 定期兼容性测试 + 自动化适配层升级
私有云网络隔离导致部署失败 与运维团队协作,提供脚本化网络检测与自动重试机制
多租户资源争抢 引入优先级调度与资源隔离Namespace + ResourceQuota
审计日志量大导致存储成本上升 日志冷热分离,归档策略与压缩存储

12. 迭代计划与里程碑

阶段 时间范围 目标
Alpha 2025-05-01 ~ 05-15 完成架构设计、API 抽象与一键部署 POC
Beta 2025-05-16 ~ 06-15 完成基础文本服务、多租户 & 权限系统、监控 & 告警集成;
RC 2025-06-16 ~ 06-30 完成图像/语音多模态接入、系统性能 & 安全测试Bug 修复;
GA 2025-07-01 对外发布文档、部署指南、SDK & CLI客服支持渠道就绪
V1.1+ 2025 Q3 ~ Q4 插件生态开放、多模态深度优化、行业解决方案模板;

13. 附录

  • 术语表点击查看
  • 部署指南
  • 运维手册
  • 用户手册PDF