Spaces:
Running
Running
| /** | |
| * tokenizer.ts - 统一 token 估算模块 | |
| * | |
| * 使用 js-tiktoken 的 cl100k_base 编码器(与 Claude tokenizer 高度近似,误差 < 5%) | |
| * 纯 JS 实现,无 WASM,无网络请求,ESM 兼容 | |
| */ | |
| import { getEncoding } from 'js-tiktoken'; | |
| const enc = getEncoding('cl100k_base'); | |
| /** | |
| * 估算文本的 token 数 | |
| * 使用 cl100k_base 编码(GPT-3.5/4 同款,与 Claude tokenizer 近似) | |
| */ | |
| export function estimateTokens(text: string): number { | |
| if (!text) return 0; | |
| return enc.encode(text).length; | |
| } | |