19 个版本 (5 个破坏性更改)

新版本 0.9.1 2024 年 8 月 22 日
0.9.0 2024 年 7 月 22 日
0.8.5 2024 年 6 月 10 日
0.8.3 2024 年 5 月 26 日
0.4.7 2024 年 4 月 20 日

#166 in 机器学习

Download history 399/week @ 2024-05-03 161/week @ 2024-05-10 345/week @ 2024-05-17 146/week @ 2024-05-24 12/week @ 2024-05-31 355/week @ 2024-06-07 57/week @ 2024-06-14 41/week @ 2024-06-21 1/week @ 2024-06-28 99/week @ 2024-07-19 25/week @ 2024-07-26 35/week @ 2024-08-02 95/week @ 2024-08-16

每月 164 次下载

MIT 许可证

11MB
207K SLoC

CUDA 89K SLoC // 0.2% comments C++ 59K SLoC // 0.2% comments Python 36K SLoC // 0.3% comments C 16K SLoC // 0.2% comments Rust 2.5K SLoC // 0.1% comments Bazel 2.5K SLoC // 0.1% comments Shell 1.5K SLoC // 0.2% comments BASH 466 SLoC // 0.3% comments Jupyter Notebooks 378 SLoC // 0.4% comments Forge Config 40 SLoC Batch 26 SLoC

ctranslate2-rs

Latest version docs.rs GitHub License Build

此库为 OpenNMT/CTranslate2 提供Rust绑定。目前,它仅在 macOS 和 Linux 上进行了测试和确认可以工作。Windows 支持为实验性,尚未经过彻底测试,可能存在限制或需要额外的配置。

支持的模型

ct2rs 软件包已测试并确认可以与以下模型一起工作

  • BART
  • BLOOM
  • FALCON
  • Marian-MT
  • MPT
  • NLLB
  • GPT-2
  • GPT-J
  • OPT
  • T5
  • Whisper

请参阅每个模型的相应 示例

流式 API

此软件包还提供了一个流式 API,该 API 使用回调闭包。有关更多信息,请参阅 示例代码

编译

如果您计划使用 GPU 加速,则可使用 CUDA 和 cuDNN。请启用 cudacudnn 功能,并适当地设置 CUDA_TOOLKIT_ROOT_DIR 环境变量。

提供了几个可用于的后端: OpenBLASIntel MKLRuyApple Accelerate

  • OpenBLAS:要使用 OpenBLAS,启用 openblas 功能并将包含 libopenblas.a 的目录路径添加到 LIBRARY_PATH 环境变量中。
  • Intel MKL:要使用 Intel MKL,启用 mkl 功能并将 Intel 库的路径设置为 MKLROOT 环境变量(默认为 /opt/intel)。
  • Ruy:要使用 Ruy,启用 ruy 功能。
  • Apple Accelerate:仅在 macOS 上可用,要使用 Apple Accelerate,启用 accelerate 功能。

编译库需要安装CMake。

针对Windows的额外说明:需要将以下内容添加到编译环境变量中:RUSTFLAGS=-C target-feature=+crt-static

CTranslate2模型转换

要使用CTranslate2的模型文件,必须首先进行转换。以下是将nllb-200-distilled-600M模型进行转换的示例

pip install ctranslate2 huggingface_hub torch transformers
ct2-transformers-converter --model facebook/nllb-200-distilled-600M --output_dir nllb-200-distilled-600M \
    --copy_files tokenizer.json

更多详细信息,请参阅CTranslate2的文档

许可证

此应用程序是在MIT许可证下发布的。详细信息请参阅LICENSE文件。

依赖项

~17–23MB
~424K SLoC