HN
Today

Transcribe.cpp

Transcribe.cpp emerges as a robust C++ library for local speech-to-text, leveraging ggml to offer high-performance, cross-platform ASR with verified model accuracy. Born from the author's frustrations with existing solutions, it aims to simplify the distribution of local AI applications. Hacker News lauds its technical rigor and commitment to open source, viewing it as a significant step towards more accessible local inference.

156
Score
23
Comments
#1
Highest Rank
20h
on Front Page
First Seen
Jul 19, 1:00 AM
Last Seen
Jul 19, 8:00 PM
Rank Over Time
311111111233689910121415

The Lowdown

CJ Pais introduces transcribe.cpp, a new C++ library built on ggml designed to streamline local speech-to-text transcription across various platforms. Stemming from the challenges of maintaining his own cross-platform ASR application, Handy, Pais developed transcribe.cpp to provide a reliable, high-performance alternative to existing inference stacks like whisper.cpp and ONNX, emphasizing broad model support and validated accuracy.

  • Comprehensive Model Support: Supports 16 ASR families, encompassing over 60 models, with future expansion planned.
  • Accelerated Performance: Leverages multiple acceleration backends including Vulkan, Metal, CUDA, and TinyBLAS for optimal speed on diverse hardware.
  • Verified Accuracy: Every model undergoes numerical validation and Word Error Rate (WER) testing against reference implementations, addressing common accuracy concerns with pre-trained models.
  • Flexible Transcription: Offers both streaming and batch transcription capabilities.
  • Developer-Friendly Integration: Provides maintainer-supported bindings for Python, JavaScript/TypeScript, Rust, and Objective-C/Swift, making it easily embeddable.
  • Whisper.cpp Compatibility: Designed as a more-or-less drop-in replacement for whisper.cpp, capable of running its .bin files.
  • Commitment to Local Inference: Aims to make running ASR models locally more accessible and efficient, highlighting the project's role in the future of distributed AI inference.

Backed by contributions from Mozilla AI, ggml, Modal, and Hugging Face, transcribe.cpp is positioned as a foundational tool for developers seeking to integrate reliable, high-performance local speech-to-text capabilities into their applications. The author's personal commitment to maintaining the library and fostering an open-source ecosystem further reinforces its potential impact.

The Gossip

Technical Tête-à-tête

Commenters dive into the technical specifics of transcribe.cpp, asking about performance differences between acceleration backends (e.g., Metal vs. Vulkan), inquiring about advanced features like speaker separation and identification, and comparing it to existing solutions like faster-whisper and whisper.cpp. The author often participates, confirming planned features like speaker separation and clarifying streaming model usage.

Commendations & Core Values

The HN community widely praises CJ Pais for his impressive solo effort in creating such a comprehensive and rigorous library. Many highlight the project as a strong example of building lasting tools with AI, contrasting it with "slop cannon" approaches. There's also discussion around the author's explicit statement that the post was not AI-written, with some debating how tools, even speech-to-text, can subtly influence one's communication.

Application Ambitions

Users express excitement about integrating transcribe.cpp into their own projects, foreseeing its utility for various applications from brain-dumping to documents to live captioning. The project is seen as a key component in the broader vision of local AI, particularly when paired with other local models like Text-to-Speech (TTS), making sophisticated AI functionalities more accessible and private on end-user devices.