CTranslate2

让 Transformer 模型在 CPU/GPU 上跑得更快,省时省力

CTranslate2 是一个专为 Transformer 类模型设计的高性能推理引擎,用 C++ 编写,支持 CPU(含 AVX、AVX2、NEON 等指令集)和 GPU(CUDA)加速。它解决了深度学习模型在生产环境中部署时推理速度慢、内存占用高的问题,通过权重量化、层融合、内存复用等技术,在保持精度的前提下显著提升吞吐量并降低延迟。核心能力包括:支持多种 Transformer 架构(如 BERT、GPT、T5 等)、动态批处理、多 GPU 推理、与 Hugging Face Transformers 无缝集成,并提供了 Python 和 C++ API。项目在机器翻译、文本生成等场景中表现优异,尤其适合对延迟和成本敏感的工业级部署。

开源 free 基础设施
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 4682
维护状态 较活跃
是否开源 是
定价模式 free

项目数据

分类基础设施
开发团队OpenNMT
所属国家
定价模式free
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态
是否开源是
开源协议MIT
主要语言C++
技术栈/模型avx,avx2,cpp,cuda,deep-learning,deep-neural-networks,gemm,inference,intrinsics,machine-translation,mkl,neon,neural-machine-translation,onednn,openmp,opennmt,parallel-computing,quantization,thrust,transformer-models
GitHub 星标★ 4682
30天Star增速
HF 下载量
上线时间2019-09-23 00:00:00
最近更新2026-09-22 00:00:00
维护状态较活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-10
浏览次数6

使用教程

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

环境要求

  • Python 环境及 pip(README 使用 pip 安装)
  • 已转换为 CTranslate2 优化格式的模型文件
  • 如需 GPU 加速:NVIDIA CUDA 环境;AMD ROCm 用户需下载 releases 页面的专用 wheel

安装与启动步骤

  1. 1安装 CTranslate2

    README 明确给出的唯一安装方式,通过 pip 安装 C++/Python 推理库,CPU 与 GPU 支持随包提供。

    pip install ctranslate2
  2. 2转换模型格式

    兼容模型必须先用官方转换器转为优化格式,README 只列出各框架指南链接,未给出具体命令,需按来源框架查阅文档。

  3. 3运行翻译推理

    用 Translator 加载转换后的翻译模型路径,再调用 translate_batch 传入分词后的 token 列表。

    import ctranslate2
    
    translator = ctranslate2.Translator(translation_model_path)
    translator.translate_batch(tokens)
  4. 4运行文本生成

    用 Generator 加载生成类模型(如 GPT、Llama 等)路径,再调用 generate_batch 传入起始 token。

    import ctranslate2
    
    generator = ctranslate2.Generator(generation_model_path)
    generator.generate_batch(start_tokens)

如何确认成功

执行 python -c "import ctranslate2; print(ctranslate2.__version__)",能打印出版本号即安装成功。

常见问题

Q:CTranslate2 支持哪些模型?

A:编码器-解码器(T5、BART、NLLB、Whisper 等)、仅解码器(GPT-2、Llama、Mistral、Qwen2 等)、仅编码器(BERT、DistilBERT、XLM-RoBERTa)。

Q:如何把已有模型转成 CTranslate2 格式?

A:库内置 OpenNMT-py、OpenNMT-tf、Fairseq、Marian、OPUS-MT、Transformers 的转换器,README 只给出官方文档链接,需按对应指南操作。

Q:可以用 AMD 显卡加速吗?

A:可以,README 说明针对 AMD ROCm GPU 在 GitHub releases 页面提供专用 Python wheel,需手动下载安装。

注意事项

  • 兼容模型必须先转换为 CTranslate2 优化格式才能推理,README 未给出转换命令,请查阅官方文档。
  • AMD ROCm GPU 用户不要直接用 pip 默认 wheel,应到 releases 页面下载对应版本。
  • 项目面向生产环境并提供向后兼容保证,但模型压缩与推理加速相关功能仍属实验性。

核心亮点

  • 推理速度比原生 PyTorch 快数倍,内存占用更低
  • 支持 INT8/FP16 量化,精度损失小
  • 与 Hugging Face 模型无缝集成,上手简单

不足之处

  • 仅支持 Transformer 架构,不覆盖 CNN/RNN 等模型
  • 文档和社区生态相对较小,高级用法需自行探索

适用场景

  • 生产环境中的机器翻译服务
  • 低延迟文本生成(如聊天机器人)
  • 资源受限的 CPU 服务器上部署大模型

替代项目

ONNX Runtime、TensorRT、OpenVINO

项目介绍

CTranslate2 是基础设施领域的开源项目,由 OpenNMT 开发,2019 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(4,682)位列前 9%,在基础设施分类的 1,132 个项目里位列前 14%。

近 41 天,它的 GitHub 星标从 4,615 增加到 4,682,净增 67。

项目保持着较活跃的维护节奏,最近一次代码更新于 2026-09-22。MIT许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:生产环境中的机器翻译服务。同类可对比的替代方案包括 ONNX Runtime、TensorRT、OpenVINO。

上一篇:inference

下一篇:casbin-gateway

同类项目推荐

freebuff-proxy 开源

聚合多账号,一键接入 OpenAI 兼容 API,轻松管理会话。

Multi-account OpenAI-compatible gateway for coding models. Pooled keys, session life···

★ 213 2026-08-20
microduck 开源

用 Rust 造一只会走路的桌面小鸭,快速上手双足机器人。

A Tiny biped duck robot

★ 8684 2026-09-10
soperator 开源

用 Kubernetes 原生方式运行 Slurm,简化 HPC 集群管理。

Run Slurm in Kubernetes

★ 439 2026-08-10
ollama 开源

一条命令本地跑起大模型,免费、私密、不卡顿

Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other···

★ 181484 2026-08-09