rust-bert 是一个使用 Rust 编写的自然语言处理(NLP)库,提供了最先进的自然语言处理模型和处理管道。这个项目是 Hugging Face 的 Transformers 库的移植版,并使用 tch-rs 或 ONNX Runtime 绑定,以及 rust-tokenizers 进行预处理。它支持多线程的词汇标记和 GPU 推理。
项目支持的任务包括但不限于:
通过该库,用户可以较为简单地实现问答、机器翻译、句子生成等复杂的 NLP 任务。
rust-bert 支持广泛的模型架构,如 DistilBERT、BERT、RoBERTa、GPT、T5 等。这些模型各自在支持的任务中表现出色,比如 DistilBERT 和 BERT 在问答系统和命名实体识别中有优异的表现,而 GPT 和 T5 擅长于文本生成和翻译。
rust-bert 依赖于 tch crate,它为 C++ 的 Libtorch API 提供绑定。用户可以手动或自动下载所需的 libtorch 库,并根据系统环境进行配置。
libtorch。启用 download-libtorch 特性标记即可让脚本自动下载 libtorch 库。默认下载 CPU 版本,但也可以通过设置环境变量 TORCH_CUDA_VERSION 获取 CUDA 版本。
rust-bert 允许通过可选的 onnx 特 性启用 ONNX 支持。这需要 ort crate 提供的 onnxruntime C++ 库绑定。
为了使用动态链接,用户需设置 ORT_DYLIB_PATH 来指向下载的 onnxruntime 库的位置。
rust-bert 提供了可以直接使用的 NLP 处理管道,其中包括:
该库与 Python 实现的性能相当,尤其是在计算密集的 NLP 任务中,得益于 Rust 的高效性能管理和并行计算支持。此外,对于文本生成的任务,rust-bert 可能会显著优于 Python,实现更快的处理速度。
rust-bert 也允许加载预训练模型,并对用户自定义的 Transformer 模型进行支持。用户可以使用本地模型文件或远程资源进行模型加载。
感谢 Hugging Face 提供与此 Rust 库兼容的模型权重,使用户可以快速使用预训练模型解决现实中的 NLP 问题。
rust-bert 是一个功能强大的 Rust 库, 提供了直观的接口和强大的 NLP 能力,无论是开发者还是 NLP 研究人员都可以从中获益。


免费创建高清无水印Sora视频
Vora是一个免费创建高清无水印Sora视频的AI工具


最适合小白的AI自动化工作流平台
无需编码,轻松生成可复用、可变现的AI自动化工作流

大模型驱动的Excel数据处理工具
基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

