llama-tokenizer-js简介
llama-tokenizer-js是一个用于LLaMA模型的JavaScript分词器,可在浏览器端和Node.js环境中运行。它的主要用途是在客户端准确计算token数量,具有以下特点:
- 易于使用:零依赖,代码和数据集成在单个文件中
- 兼容大多数LLaMA模型
- 运行时间优化,使用高效的BPE实现
- 打包大小优化:在压缩前仅670KiB
该项目由belladore.ai开发,是首个可在浏览器端运行的LLaMA JavaScript分词器。
安装与使用
安装
通过npm安装:
npm install llama-tokenizer-js
基本用法
import llamaTokenizer from 'llama-tokenizer-js'
// 编码
console.log(llamaTokenizer.encode("Hello world!"))
// 输出: [1, 15043, 3186, 29991]
// 解码
console.log(llamaTokenizer.decode([1, 15043, 3186, 29991]))
// 输出: 'Hello world!'
更多使用示例和API文档,请参考官方README。
在线演示
要快速体验llama-tokenizer-js的功能,可以访问在线演示页面。在这里您可以输入文本,实时查看分词结果。
兼容性
llama-tokenizer-js兼容以下LLaMA模型:
- 所有基于Facebook在2023年3月("LLaMA")和2023年7月("LLaMA2")发布的模型权重训练的LLaMA模型
- 例如:llama2-13b-4bit-gptq, wizard-vicuna-13b-uncensored-gptq, manticore-7b-ggml等
不兼容从头训练的LLaMA模型,如OpenLLaMA。
详细的兼容性信息请查看官方文档。
相关资源
- GitHub仓库 - 项目源码和文档
- npm包 - npm安装页面
- 在线演示 - 交互式分词器演示
- LLaMA 3分词器 - 用于LLaMA 3模型的分词器
总结
llama-tokenizer-js为JavaScript开发者提供了一个强大的工具,可以在浏览器端高效地处理LLaMA模型的分词任务。无论您是在开发基于LLaMA的Web应用,还是需要在客户端进行token计数,llama-tokenizer-js都是一个值得尝试的解决方案。通过本文提供的资源,相信您可以快速上手并充分利用这个优秀的开源项目。