CTranslate2 VS vllm

Compare CTranslate2 vs vllm and see what are their differences.

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
CTranslate2 vllm
14 31
2,825 18,931
4.7% 9.0%
8.9 9.9
5 days ago about 11 hours ago
C++ Python
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

CTranslate2

Posts with mentions or reviews of CTranslate2. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-29.
  • Creando Subtítulos Automáticos para Vídeos con Python, Faster-Whisper, FFmpeg, Streamlit, Pillow
    7 projects | dev.to | 29 Apr 2024
  • Distil-Whisper: distilled version of Whisper that is 6 times faster, 49% smaller
    14 projects | news.ycombinator.com | 31 Oct 2023
    Just a point of clarification - faster-whisper references it but ctranslate2[0] is what's really doing the magic here.

    Ctranslate2 is a sleeper powerhouse project that enables a lot. They should be up front and center and get the credit they deserve.

    [0] - https://github.com/OpenNMT/CTranslate2

  • A Raspberry Pi 5 is better than two Pi 4S
    3 projects | news.ycombinator.com | 8 Oct 2023
    We'd love to move beyond Nvidia.

    The issue (among others) is we achieve the speech recognition performance we do largely thanks to ctranslate2[0]. They've gone on the record saying that they essentially have no interest in ROCm[1].

    Of course with open source anything is possible but we see this as being one of several fundamental issues in supporting AMD GPGPU hardware.

    [0] - https://github.com/OpenNMT/CTranslate2

    [1] - https://github.com/OpenNMT/CTranslate2/issues/1072

  • AMD May Get Across the CUDA Moat
    8 projects | news.ycombinator.com | 6 Oct 2023
    > While I agree that it's much more effort to get things working on AMD cards than it is with Nvidia, I was a bit surprised to see this comment mention Whisper being an example of "5-10x as performant".

    It easily is. See the benchmarks[0] from faster-whisper which uses Ctranslate2. That's 5x faster than OpenAI reference code on a Tesla V100. Needless to say something like a 4080 easily multiplies that.

    > https://www.tomshardware.com/news/whisper-audio-transcriptio... is a good example of Nvidia having no excuses being double the price when it comes to Whisper inference, with 7900XTX being directly comparable with 4080, albeit with higher power draw. To be fair it's not using ROCm but Direct3D 11, but for performance/price arguments sake that detail is not relevant.

    With all due respect to the author of the article this is "my first entry into ML" territory. They talk about a 5-10 second delay, my project can do sub 1 second times[1] even with ancient GPUs thanks to Ctranslate2. I don't have an RTX 4080 but if you look at the performance stats for the closest thing (RTX 4090) the performance numbers are positively bonkers - completely untouchable for anything ROCm based. Same goes for the other projects I linked, lmdeploy does over 100 tokens/s in a single session with LLama2 13b on my RTX 4090 and almost 600 tokens/s across eight simultaneous sessions.

    > EDIT: Also using CTranslate2 as an example is not great as it's actually a good showcase why ROCm is so far behind CUDA: It's all about adapting the tech and getting the popular libraries to support it. Things usually get implemented in CUDA first and then would need additional effort to add ROCm support that projects with low amount of (possibly hobbyist) maintainers might not have available. There's even an issue in CTranslate2 where they clearly state no-one is working to get ROCm supported in the library. ( https://github.com/OpenNMT/CTranslate2/issues/1072#issuecomm... )

    I don't understand what you're saying here. It (along with the other projects I linked) are fantastic examples of just how far behind the ROCm ecosystem is. ROCm isn't even on the radar for most of them as your linked issue highlights.

    Things always get implemented in CUDA first (ten years in this space and I've never seen ROCm first) and ROCm users either wait months (minimum) for sub-par performance or never get it at all.

    [0] - https://github.com/guillaumekln/faster-whisper#benchmark

    [1] - https://heywillow.io/components/willow-inference-server/#ben...

  • StreamingLLM: Efficient streaming technique enable infinite sequence lengths
    2 projects | news.ycombinator.com | 3 Oct 2023
    Etc.

    Now, what this allows you to do is reuse the attention computed from the previous turns (since the prefix is the same).

    In practice, people often have a system prompt before the conversation history, which (as far a I can tell) makes this technique not applicable (the input prefix will change as soon as the conversation history is long enough that we need to start dropping the oldest turns).

    In such case, what you could do is to cache at least the system prompt. This is also possible with https://github.com/OpenNMT/CTranslate2/blob/2203ad5c8baf878a...

  • Faster Whisper Transcription with CTranslate2
    5 projects | news.ycombinator.com | 20 Jul 2023
    The original Whisper implementation from OpenAI uses the PyTorch deep learning framework. On the other hand, faster-whisper is implemented using CTranslate2 [1] which is a custom inference engine for Transformer models. So basically it is running the same model but using another backend, which is specifically optimized for inference workloads.

    [1] https://github.com/OpenNMT/CTranslate2

  • Explore large language models on any computer with 512MB of RAM
    4 projects | /r/LocalLLaMA | 17 Jun 2023
    FLAN-T5 models generally perform well for their size, but they are encode-decoder models, and they aren't as widely supported for efficient inference. I wanted students to be able to run everything locally on CPU, so I was ideally hoping for something that supported quantization for CPU inference. I explored llama.cpp and GGML, but ultimately landed on ctranslate2 for inference.
  • CTranslate2: An efficient inference engine for Transformer models
    1 project | news.ycombinator.com | 21 May 2023
  • [D] Faster Flan-T5 inference
    1 project | /r/MachineLearning | 22 Feb 2023
    You can also check out the CTranslate2 library which supports efficient inference of T5 models, including 8-bit quantization on CPU and GPU. There is a usage example in the documentation.
  • Running large language models like ChatGPT on a single GPU
    7 projects | news.ycombinator.com | 20 Feb 2023

vllm

Posts with mentions or reviews of vllm. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-09.
  • AI leaderboards are no longer useful. It's time to switch to Pareto curves
    1 project | news.ycombinator.com | 30 Apr 2024
    I guess the root cause of my claim is that OpenAI won't tell us whether or not GPT-3.5 is an MoE model, and I assumed it wasn't. Since GPT-3.5 is clearly nondeterministic at temp=0, I believed the nondeterminism was due to FPU stuff, and this effect was amplified with GPT-4's MoE. But if GPT-3.5 is also MoE then that's just wrong.

    What makes this especially tricky is that small models are truly 100% deterministic at temp=0 because the relative likelihoods are too coarse for FPU issues to be a factor. I had thought 3.5 was big enough that some of its token probabilities were too fine-grained for the FPU. But that's probably wrong.

    On the other hand, it's not just GPT, there are currently floating-point difficulties in vllm which significantly affect the determinism of any model run on it: https://github.com/vllm-project/vllm/issues/966 Note that a suggested fix is upcasting to float32. So it's possible that GPT-3.5 is using an especially low-precision float and introducing nondeterminism by saving money on compute costs.

    Sadly I do not have the money[1] to actually run a test to falsify any of this. It seems like this would be a good little research project.

    [1] Or the time, or the motivation :) But this stuff is expensive.

  • Mistral AI Launches New 8x22B Moe Model
    4 projects | news.ycombinator.com | 9 Apr 2024
    The easiest is to use vllm (https://github.com/vllm-project/vllm) to run it on a Couple of A100's, and you can benchmark this using this library (https://github.com/EleutherAI/lm-evaluation-harness)
  • FLaNK AI for 11 March 2024
    46 projects | dev.to | 11 Mar 2024
  • Show HN: We got fine-tuning Mistral-7B to not suck
    4 projects | news.ycombinator.com | 7 Feb 2024
    Great question! scheduling workloads onto GPUs in a way where VRAM is being utilised efficiently was quite the challenge.

    What we found was the IO latency for loading model weights into VRAM will kill responsiveness if you don't "re-use" sessions (i.e. where the model weights remain loaded and you run multiple inference sessions over the same loaded weights).

    Obviously projects like https://github.com/vllm-project/vllm exist but we needed to build out a scheduler that can run a fleet of GPUs for a matrix of text/image vs inference/finetune sessions.

    disclaimer: I work on Helix

  • Mistral CEO confirms 'leak' of new open source AI model nearing GPT4 performance
    5 projects | news.ycombinator.com | 31 Jan 2024
    FYI, vLLM also just added experiment multi-lora support: https://github.com/vllm-project/vllm/releases/tag/v0.3.0

    Also check out the new prefix caching, I see huge potential for batch processing purposes there!

  • VLLM Sacrifices Accuracy for Speed
    1 project | news.ycombinator.com | 23 Jan 2024
  • Easy, fast, and cheap LLM serving for everyone
    1 project | news.ycombinator.com | 17 Dec 2023
  • vllm
    1 project | news.ycombinator.com | 15 Dec 2023
  • Mixtral Expert Parallelism
    1 project | news.ycombinator.com | 15 Dec 2023
  • Mixtral 8x7B Support
    1 project | news.ycombinator.com | 11 Dec 2023

What are some alternatives?

When comparing CTranslate2 and vllm you can also consider the following projects:

sentencepiece - Unsupervised text tokenizer for Neural Network-based text generation.

TensorRT - NVIDIA® TensorRT™ is an SDK for high-performance deep learning inference on NVIDIA GPUs. This repository contains the open source components of TensorRT.

FlexGen - Running large language models like OPT-175B/GPT-3 on a single GPU. Focusing on high-throughput generation. [Moved to: https://github.com/FMInference/FlexGen]

lmdeploy - LMDeploy is a toolkit for compressing, deploying, and serving LLMs.

OpenNMT-Tutorial - Neural Machine Translation (NMT) tutorial. Data preprocessing, model training, evaluation, and deployment.

Llama-2-Onnx

oneDNN - oneAPI Deep Neural Network Library (oneDNN)

tritony - Tiny configuration for Triton Inference Server

faster-whisper - Faster Whisper transcription with CTranslate2

primecount - 🚀 Fast prime counting function implementations

text-generation-inference - Large Language Model Text Generation Inference