tiktoken-go

在 Go 中轻松切分 token,精准控制 OpenAI 费用

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 对话助手 🍴 复刻 106 🐛 待处理 17 👀 关注 8
GitHub ↗
GitHub 星标 ★ 960
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,完全免费,可自行部署使用。

项目预览

tiktoken-go 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类对话助手
开发团队pkoukk
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言Go
技术栈/模型chatgpt,go,golang,gpt-35-turbo,gpt-4,openai,tiktoken
GitHub 星标★ 960
上线时间2023-03-08 00:00:00
代码更新2026-05-12
仓库体积1.2 MB
本站数据更新2026-11-08
维护状态低维护
收录时间2026-08-09
浏览次数8

项目介绍

tiktoken-go 是 OpenAI 官方 tiktoken 库的 Go 语言移植版本,用于将文本切分为 token 序列。它解决了在 Go 生态中无法直接调用 OpenAI tokenizer 的问题,使开发者无需依赖 Python 环境即可在 Go 服务中实现 token 计数、文本截断和费用预估。核心能力包括:支持 GPT-3.5-turbo、GPT-4 等主流模型的编码器,提供与官方版本一致的 token 切分结果,并针对 Go 并发场景做了性能优化。项目早期但已具备基本功能,适合需要精确控制 token 用量的 Go 后端服务。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 960

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 4 步

环境要求

  • Go 1.18+

安装与启动步骤

  1. 1引入包

    标准 go get 即可。

    go get github.com/pkoukk/tiktoken-go
  2. 2按模型取编码器

    传模型名即可拿到对应编码。

    tkm, err := tiktoken.EncodingForModel("gpt-3.5-turbo")
  3. 3计数

    对文本编码后取长度即为 token 数。

    tokens := tkm.Encode(text, nil, nil)
    fmt.Println(len(tokens))
  4. 4配缓存目录

    不设的话每次首次初始化都会重新下载词典。

    export TIKTOKEN_CACHE_DIR=/path/to/cache

如何确认成功

同一段文本的计数结果与 OpenAI 官方 tiktoken(Python)一致。

常见问题

Q:结果为 0?

A:确认传入的模型名受支持,并检查词典是否下载成功。

注意事项

  • 离线环境可用 SetBpeLoader 换自定义词典加载器。
  • 还提供 chat 消息级别的 token 计数辅助函数。

核心亮点

  • 与 OpenAI 官方 tiktoken 算法一致,token 计数准确
  • 纯 Go 实现,无外部依赖,易于集成到现有 Go 服务
  • 提供简单 API,支持多种模型编码器切换

不足之处

  • 文档较少,示例不全面,上手需参考官方 Python 版
  • 早期项目,API 可能变动,稳定性待观察

适用场景

  • Go 后端服务中统计请求 token 消耗以计算费用
  • 在生成式 AI 应用中限制输入长度,避免超出模型上下文窗口
  • 批量处理文本时预切分 token,优化下游任务效率

替代项目

tiktoken(官方 Python 版)、js-tiktoken(JavaScript 版)、go-tiktoken(其他 Go 实现)

上一篇:Free-GPT4-WEB-API

下一篇:corpusos

同类项目推荐

Portable-Local-Studio 开源

一个界面跑齐本地画图、聊天、朗读和听写,免安装随身带

Portable local AI studio for Windows, Linux, and macOS. Zero-setup GUI for Image Gen···

★ 1963 2026-09-23
Lexoid 开源

把脏乱数据变成 AI 能用的干净上下文

The open-source universal adapter for LLMs. Turn messy real-world data into clean, a···

★ 109 2026-08-09
onnxruntime 开源

一次导出模型,多端高效跑推理

ONNX Runtime: cross-platform, high performance ML inferencing and training accelerat···

★ 22260 2026-10-25
deeplake 开源

海量训练数据随手存取,喂给模型不卡壳

Deeplake is AI Data Runtime for Agents. It provides serverless postgres with a multi···

★ 9265 2026-08-09
paas-data-ingestion 开源

用Pulumi+Lambda+Snowflake搭建可重放的数据管道,告别数据不一致

Ingesting data with Pulumi, AWS lambdas and Snowflake in a scalable, fully replayabl···

★ 70 2026-08-09
automem 开源

给 AI 装上跨会话的长期记忆,让对话更连贯

Long-term memory for AI assistants. Graph + vector store that recalls decisions, rel···

★ 827 2026-08-09
bodywork-core 开源

用声明式配置,在 Kubernetes 上自动跑通 ML 流水线和模型上线。

ML pipeline orchestration and model deployments on Kubernetes.

★ 435 2026-08-09
gateway 开源

用 Rust 和 Go 打造 AI 时代的 Kubernetes 网关

Nantian Gateway — Kubernetes Gateway API implementation with AI proxy, WASM plugin ···

★ 54 2026-08-09
jangq 开源

把 GGUF 模型搬上 Mac 的 MLX,量化后照样跑得动

JANG — GGUF for MLX. YOU MUST USE JANG_Q RUNTIME. Adaptive Mixed-Precision Quantiza···

★ 232 2026-10-16