Skip to content

feat(<agentsight>): 引入 Rust 版本的 Chat Template 和 Tokenizer 以替代 Python 实现 #73

@chengshuyi

Description

@chengshuyi

Component

agentsight

Problem Statement

当前 AgentSight 项目使用的 Chat Template 和 Tokenizer 是基于 Python 实现的。这种方案存在以下限制:

  • 依赖重量:Python 版本的 tokenizer 需要安装完整的 Python 运行时环境和相关依赖库,无法轻量级部署到客户机器
  • 部署复杂:客户机器上需要配置 Python 环境,增加了部署难度和维护成本
  • 性能瓶颈:Python 实现的 tokenizer 在处理大规模文本时性能受限,无法满足高并发场景需求
  • 跨平台兼容性:Python 环境在不同操作系统上的配置差异可能导致兼容性问题

Proposed Solution

将 Chat Template 和 Tokenizer 的实现从 Python 迁移到 Rust,通过 llm-tokenizer crate 提供轻量级、高性能的替代方案:

核心功能:

  • Chat Template 解析:支持主流 LLM 模型(如 Llama、GPT、Claude 等)的 chat template 格式解析和渲染
  • Token 计数:提供准确的 token 编码和解码功能,支持流式处理
  • 轻量级部署:Rust 编译后的二进制文件无需额外运行时依赖,可独立部署

Alternatives Considered

No response

Additional Context

No response

Metadata

Metadata

Assignees

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions