dubbo-go-pixiu icon indicating copy to clipboard operation
dubbo-go-pixiu copied to clipboard

Enhance Pixiu to an AI proxy/gateway

Open AlexStocks opened this issue 9 months ago • 1 comments

What would you like to be added:

Enhance Pixiu to an AI proxy/gateway.

Why is this needed:

大模型服务在响应时间、连接管理、服务治理和监控等方面都与传统服务有显著差异,尤其在服务的响应时长和监控运维指标等方面存在较大差异。这些差异需要我们在开发、部署和运维大模型服务时进行充分考虑,并采取相应的优化措施。

以下是对这些特点的详细解释:

1. 响应时间长:

  • 原因:
    • 大模型通常包含数十亿甚至数千亿的参数,计算复杂度极高。
    • 生成文本、图像或其他内容时,需要进行大量的推理计算,导致响应时间较长。
    • 复杂的自然语言处理任务,如对话生成、文本摘要等,需要更多的时间来处理和生成结果。
  • 影响:
    • 实时性要求高的应用,如在线客服、实时推荐等,可能面临挑战。
    • 用户体验可能受到影响,需要优化交互设计,减轻用户等待焦虑。

2. 长连接多:

  • 原因:
    • 大模型服务通常需要维护与客户端的长时间连接,以支持多轮对话、实时交互等功能。
    • 例如,聊天机器人、在线助手等应用,需要保持与用户的持续对话。
    • 流式数据处理和实时反馈也依赖于长连接。
  • 影响:
    • 服务器需要更高的并发处理能力,以支持大量的长连接。
    • 网络资源消耗增加,需要优化网络架构和协议。
    • 需要更复杂的连接管理机制,以保证连接的稳定性和可靠性。

3. 以 Token 作为服务治理指标:

  • 原因:
    • 大模型处理文本时,通常将文本分解为“token”(词元),例如单词、子词或标点符号。
    • Token 数量直接影响计算量和响应时间,因此成为衡量服务负载的重要指标。
    • 服务提供商通常根据 token 数量收费,因此 token 也成为计费的重要依据。
  • 影响:
    • 服务治理需要关注 token 的使用情况,例如限制请求的 token 数量、优化文本生成策略等。
    • 监控和报警系统需要支持 token 相关的指标,例如每秒处理的 token 数量、平均 token 响应时间等。
    • 需要设计合理的计费模型,以平衡服务成本和用户需求。

4. 监控指标差异大:

  • 原因:
    • 大模型服务的监控指标与传统服务有很大差异,除了传统的 CPU、内存、网络等指标外,还需要关注以下指标:
      • Token 处理速度:衡量模型处理文本的效率。
      • 生成质量:评估模型生成文本、图像等内容的质量。
      • 上下文理解能力:评估模型理解对话或文本上下文的能力。
      • 模型延迟:衡量模型生成响应的延迟。
    • 这些指标需要专门的工具和方法进行监控和分析。
  • 影响:
    • 传统的监控系统可能无法满足大模型服务的需求,需要进行升级或改造。
    • 需要建立新的监控指标体系,以全面了解大模型服务的运行状态。
    • 需要开发新的监控工具,以支持对大模型相关指标的实时监控和分析。

** 5. 总结 **

希望 Pixiu 充分考虑 AI 服务的服务治理与可观测性等方面的独特特性,基于 K8s 底座,接入 Istio 的同时,在 AI 数据统计、AI 限流、AI 请求体转换、AI 内容审计、AI 代理 等方面作出自己的特色。

AlexStocks avatar Mar 26 '25 10:03 AlexStocks

本周进展: 1 输入和输出增加了 stream 支持 https://github.com/apache/dubbo-go-pixiu/pull/657; 2 总体 roadmap https://github.com/dubbogo/AI/discussions/11; 3 下一步 zerui 支持 steamable HTTP;

AlexStocks avatar Apr 12 '25 11:04 AlexStocks

@xuetao 支持 pixiu 对 nacos 关于大模型进行服务发现,pixiu 跟 higress 行为保持一致。

solisamicus avatar Aug 02 '25 11:08 solisamicus