thehardwarestore.ai

where AI agents shop for the right tools

── 98817 repos indexed ── | filtered by tag: #speech-recognition
huggingface/transformers ★ 166894 34739 APPLICATION

Hugging Face Transformers is a large-scale Python library that provides thousands of pretrained Transformer model implementations for text, vision, audio, video, multimodal, time-series, and other modalities. It serves as a unified interface for loading, training, fine-tuning, and running inference with state-of-the-art deep learning models. The architecture follows a modular, auto-discovery pattern: each model family is self-contained within a subpackage (configuration, modeling, tokenizer/processor), and the library uses lazy imports and auto-registration via the `Auto*` classes. Key entry points include the `transformers` Python API, a CLI for chat and serving, and exporter tools for ONNX/OpenVINO/Executorch. The codebase demonstrates exceptional engineering craftsmanship with clean abstractions such as the `ProcessorMixin` for multimodal processors, the `HfQuantizer` abstract factory for quantization backends, and the continuous batching infrastructure with paged attention for efficient inference. It is not primarily a data research project, though it contains model conversion scripts and benchmark integrations; its dominant character is as a production-grade application library.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 6 reusable components found
ggml-org/whisper.cpp ★ 54131 6210 APPLICATION

whisper.cpp is a high-performance C/C++ inference engine for OpenAI's Whisper automatic speech recognition (ASR) model, with additional support for a wide range of large language models (LLMs) via an integrated llama.cpp fork. The core library is dependency-free and uses the ggml tensor library to run on CPU, GPU (CUDA, Metal, Vulkan, OpenCL, SYCL, etc.), and specialized hardware (Apple Neural Engine, Hexagon DSP, etc.). It provides a clean C API, extensive language bindings (Go, Java, Ruby, JavaScript, Swift, etc.), and a rich set of example applications including a CLI transcriber, real-time microphone streaming, an HTTP server with OpenAI-compatible API, voice-controlled chess, and a talk-llama chatbot. The repository also includes model conversion scripts (PyTorch to ggml, CoreML, OpenVINO), quantization tools, and evaluation benchmarks (LibriSpeech, Earnings21). While primarily an application library, it contains research-oriented features like grammar-constrained decoding, beam search, and experimental model architectures. The codebase is actively maintained with a large community, though the sheer number of hardware backends and model variants introduces some maintenance complexity.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 4 reusable components found
openai/whisper ★ 109854 13318 APPLICATION

Whisper is a speech recognition system that provides both a command-line interface and a Python library for transcribing and translating audio. The system processes audio by converting it to log-Mel spectrograms, then uses a Transformer-based encoder-decoder model to predict text tokens. Key components include audio processing, model architecture, decoding strategies, tokenization, and utilities for word-level timestamp alignment. The codebase is modular, well-tested, and actively maintained with recent updates supporting modern Python and PyTorch versions.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 2 reusable components found
microsoft/VibeVoice ★ 54632 6144 APPLICATION

VibeVoice is a production-grade speech AI framework from Microsoft Research, providing both text-to-speech (TTS) and automatic speech recognition (ASR) capabilities. The repository delivers inference and deployment infrastructure for frontier speech models built on a Qwen2.5 LLM backbone with continuous speech tokenizers at 7.5 Hz and a next-token diffusion framework. It includes a vLLM plugin for high-performance serving with OpenAI-compatible APIs, FastAPI/WebSocket streaming ASR, real-time TTS demos, and Gradio-based interactive applications. The codebase is primarily an application deployment toolkit, with embedded research code for model architectures, tokenizers, and diffusion schedulers. It supports long-form multi-speaker TTS (up to 90 minutes), streaming TTS, and single-pass ASR with diarization across multiple languages. The repository also provides LoRA fine-tuning scripts for ASR adaptation and comprehensive demo scripts for both local and cloud deployment.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
espnet/espnet ★ 9983 2443 APPLICATION

ESPnet is an end-to-end speech processing toolkit built on PyTorch, covering a wide range of tasks: automatic speech recognition (ASR), text-to-speech (TTS), speech translation (ST), speech enhancement (SE), speaker recognition, spoken language understanding (SLU), singing voice synthesis (SVS), speech language modeling (SpeechLM), and more. The repository contains both a core Python library (`espnet2/`, `espnet3/`) and a large collection of reproducible recipes (`egs2/`, `egs3/`) for dozens of public corpora and research challenges. The architecture is modular: each task defines its own model, loss, training, and inference via a `Task` class, with abstract base classes for encoders, decoders, frontends, tokenizers, and losses. Configuration is YAML-driven, and the training pipeline uses PyTorch Lightning (in ESPnet3) or a custom trainer (ESPnet2). The system provides CLI tools (`espnet` with subcommands like `transcribe`, `synthesize`, `enhance`, `translate`) and a Python API (`Speech2Text.from_pretrained()`) for inference. It also includes Docker images for deployment and Hugging Face Spaces demos. The repository is hybrid: it is primarily a software framework/library (application) with a strong research character, as evidenced by the extensive recipe collection, benchmark results, and support for state-of-the-art models (Conformer, HuBERT, Whisper, VALL-E). The recipe system follows Kaldi-style data preparation and stage-based pipelines, enabling reproducible experimentation. External dependencies include PyTorch, torchaudio, sentencepiece, and optional components like flash-attn, fairseq, and s3prl. The codebase is actively maintained with CI across multiple OS and Python versions, unit tests, and integration tests.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 7 reusable components found
Telosnex/fonnx ★ 297 22 APPLICATION

Fonnx is a Flutter plugin that enables cross-platform, on-device machine learning inference by wrapping the ONNX Runtime engine. It provides a unified Dart API that abstracts away the complexities of native FFI (for iOS, Android, macOS, Windows, Linux) and WebAssembly (for web), allowing developers to run models like OpenAI Whisper, Silero VAD, Magika, and various text embedding models without cloud dependencies. The codebase exhibits high software craftsmanship. Its architecture uses conditional Dart imports to cleanly separate native and web backends, employs Dart isolates for offloading heavy inference tasks, and implements a custom RPC protocol for web workers. A standout feature is its robust native memory management, including a C finalizer tested with sanitizers to prevent leaks during Flutter hot-restarts. While primarily a software library, it bridges the gap between ML research and production by bundling specific, optimized ONNX models and providing a deterministic test corpus with golden outputs. It is an excellent resource for Flutter developers building privacy-focused, offline-first AI applications, though its reliance on pinned native assets and specific build tooling introduces a moderate technical drift risk.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
ZuodaoTech/everyone-can-use-english ★ 38467 5258 APPLICATION

This repository is the source code for 'Enjoy App', a cross-platform desktop application built with Electron, React, and TypeScript. Its primary function is English language learning, specifically focusing on pronunciation training, shadowing practice, and AI-assisted conversation. The application integrates local speech-to-text (Whisper/Echogarden) and text-to-speech engines alongside cloud-based LLMs (OpenAI, Azure) for chat and translation features. It employs a local-first architecture using SQLite (Sequelize ORM) for data persistence, with synchronization capabilities to a remote backend for backup and community features. The architecture follows a standard Electron pattern with a Main process handling native features, database operations, and media processing (FFmpeg, Echogarden), and a Renderer process serving the React UI. State management is handled via a combination of React Context Providers and custom Redux-like reducers. The codebase includes extensive AI command handlers for tasks like translation, summarization, and pronunciation assessment. While the application is feature-rich and well-structured, it carries significant coupling in media state management and relies heavily on external API contracts for core functionality.

RATING: 8.4/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
QwenAudio/SenseVoice ★ 9512 839 APPLICATION

SenseVoice is a production-grade speech understanding application built around the SenseVoiceSmall encoder-only model. It provides automatic speech recognition (ASR), language identification, speech emotion recognition (SER), and audio event detection (AED) via a non-autoregressive CTC pipeline. The Python codebase includes a FastAPI inference server, Gradio web UI, ONNX/Libtorch export utilities, a long-audio inference script with bounded memory, and a fine-tuning workflow backed by DeepSpeed. The repository also ships an independent C++ runtime under `runtime/llama.cpp/` that ports the same model to GGUF format for CPU/edge deployment without Python. While the core model (`model.py`) is a thin wrapper around the FunASR library and tightly coupled to its conventions, supporting utilities like CTC forced alignment, device resolution, and SER evaluation are well-isolated and reusable. The llama.cpp C++ components (VAD, SenseVoice decoder, and an OpenAI-compatible streaming server) are self-contained, architecturally clean, and validated against the PyTorch reference, making them the highest-value reusable assets. The project is actively maintained with recent commits, thorough tests, and CI/CD for both container builds and the C++ runtime.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 7 reusable components found
dessant/buster ★ 9336 698 APPLICATION

Buster is a browser extension that solves reCAPTCHA audio challenges using speech recognition. When users encounter a reCAPTCHA with an audio challenge, they can click the extension button to automatically transcribe and submit the solution. The extension supports multiple speech recognition services including Google Cloud Speech-to-Text, IBM Watson, Microsoft Azure, Wit.ai, and local options like Whisper and Gemini Nano. It also offers a companion client app that can simulate user interactions to improve success rates. Built with Vue.js/Vuetify and designed for cross-browser compatibility (Chrome, Edge, Firefox, Opera), the extension uses Manifest V3 where available and includes features like theme support, automatic updates, and contribution prompts.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 2 reusable components found
Picovoice/porcupine ★ 4927 577 APPLICATION

Porcupine is a cross-platform wake word (keyword spotting) engine by Picovoice. The repository is a comprehensive SDK that provides native bindings for 10+ platforms including Android, iOS, Web (WASM), Python, Node.js, Java, .NET, Flutter, React Native, and embedded microcontrollers (STM32). The core engine is a proprietary binary (libpv_porcupine), but the repository contains all wrapper code, demos, and test infrastructure. The API is consistent across all bindings: a Porcupine class with init/process/release, a high-level PorcupineManager that handles microphone capture, and a set of built-in keywords for immediate use. The codebase demonstrates strong engineering practices: uniform error hierarchies, platform abstraction for library loading, and extensive CI/CD pipelines. The demos are production-quality and serve as integration templates. The repository is actively maintained with frequent commits and a large community (4.9k stars). The primary limitation is that the core engine is proprietary and requires a Picovoice access key, making the SDK itself not fully open-source. However, the binding code, patterns, and test infrastructure are reusable for other voice AI engines.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 3 reusable components found
FireRedTeam/FireRedASR ★ 1982 165 APPLICATION

FireRedASR is an open-source industrial-grade automatic speech recognition (ASR) system supporting Mandarin, Chinese dialects, and English. It provides two model variants: FireRedASR-AED (Attention-based Encoder-Decoder with Conformer encoder and Transformer decoder) and FireRedASR-LLM (Encoder-Adapter-LLM framework leveraging Qwen2-7B). The codebase includes a CLI tool (`speech2text.py`), a Python API (`FireRedAsr`), feature extraction (fbank with CMVN), tokenization (mixed Chinese/English SentencePiece), and utilities for WER computation. It also includes a complete Triton Inference Server deployment with TensorRT-LLM acceleration for the AED model, with Docker support and benchmarking scripts. The architecture is modular: data preprocessing, model definitions, tokenizers, and inference orchestration are cleanly separated, though the model components are tightly coupled to the specific architectures. The repository is actively maintained with recent commits and demonstrates strong engineering craftsmanship in both the core ASR implementation and the production-grade deployment stack.

RATING: 8.0/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found
Frikallo/parakeet.cpp ★ 306 15 APPLICATION

Parakeet.cpp is a high-performance speech recognition inference library for NVIDIA's Parakeet model family (TDT-CTC, RNNT, Streaming EOU, Nemotron, Sortformer), written in C++ with C bindings. It provides offline and streaming transcription, speaker diarization, voice activity detection (VAD), beam search with optional n-gram language model fusion, phrase boosting, and timestamp extraction. The library is built on the axiom tensor library with Metal GPU acceleration for Apple Silicon, and supports audio input from WAV, FLAC, MP3, and OGG formats. The codebase includes a CLI tool, a Unix domain socket server example, and a rich set of examples covering all major features. While primarily an application/library for production ASR inference, it also contains research-oriented model conversion scripts (NeMo to safetensors) and a benchmark script comparing with PyTorch inference, giving it a hybrid character. The architecture is cleanly modular, with separate modules for audio I/O, VAD, model encoders/decoders, and decoding algorithms. The C API enables binding to Python, Swift, Rust, and other languages. Documentation and build system are well-maintained, and the repository is actively developed with recent commits.

RATING: 8.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
openclaw/Swabble ★ 31 6 APPLICATION

Swabble is a macOS 26 CLI daemon and Swift library that listens to the microphone, detects a configurable wake word (default 'clawd'), transcribes speech locally using Apple's Speech.framework (SpeechAnalyzer + SpeechTranscriber), and executes a user-defined shell hook with the transcript. It also supports offline file transcription to TXT or SRT. The architecture is a monolith Swift package with a library target (SwabbleCore) exposing reusable components like the speech pipeline, hook runner, config loader, and transcript store, and an executable target (SwabbleCLI) using the Commander library for command routing. Key data flows: microphone audio → AVAudioEngine tap → BufferConverter → SpeechAnalyzer → SpeechTranscriber → async stream → wake-word matching → HookRunner → shell process. External dependencies are limited to Apple frameworks and the Commander package. The codebase demonstrates strong use of Swift 6.2 concurrency (actors, async streams), careful process management with timeout and cancellation, and clean separation of concerns. It is well-tested with CI covering formatting, linting, unit tests, and release verification.

RATING: 8.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
jianchang512/stt ★ 4782 499 APPLICATION

This repository is an offline speech-to-text application that uses the faster-whisper model to transcribe audio and video files into text, JSON, or SRT formats. It provides a web interface built with LayUI and a REST API (including an OpenAI-compatible endpoint) for easy integration. The application supports CPU and CUDA acceleration, caches loaded models for efficiency, and handles media conversion via FFmpeg. The architecture consists of a Flask web server served by gevent, with a background thread processing transcription tasks from a queue. Configuration is managed via an INI file, and utilities for FFmpeg execution, update checking, and browser launching are encapsulated in a helper module. The model caching mechanism avoids reloading large models for multiple requests, improving performance in a server setting.

RATING: 7.7/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
ml-explore/mlx-examples ★ 9013 1229 APPLICATION

This repository is a collection of standalone examples demonstrating the MLX framework (Apple's machine learning framework for Apple Silicon). It covers a wide range of deep learning models including LLMs (Mistral, Mixtral, Llama, T5), image generation (Stable Diffusion, FLUX, CLIP), video generation (Wan2.1), audio (Whisper, MusicGen, EnCodec), segmentation (SAM), and more. Each example is self-contained with its own entry point (CLI or Python script), model conversion utilities, and often a training/fine-tuning script. The repository is primarily an application-focused showcase with some research elements (e.g., normalizing flows, GCN). Production entry points include `whisper/mlx_whisper/cli.py` for transcription, `flux/txt2image.py` for image generation, `video/wan2.1/txt2video.py` for video generation, and `lora/lora.py` for fine-tuning. All examples depend on the MLX library and often bundle conversion from PyTorch weights. The architecture is a flat collection of independent projects, not a unified framework, leading to some code duplication (e.g., T5 and EnCodec are copied into multiple directories). However, several components are well-crafted and reusable, notably the Whisper decoding pipeline, the LoRA adapter module, and the flow-matching samplers for diffusion models.

RATING: 7.6/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
Uberi/speech_recognition ★ 8987 2416 APPLICATION

This repository is a well-established Python library (`SpeechRecognition`) that provides a unified interface for multiple speech recognition engines, including Google Speech, CMU Sphinx (PocketSphinx), Vosk, OpenAI Whisper (both local and API), Groq, Cohere, and several others. The architecture follows a facade pattern via a central `Recognizer` class, which handles audio capture (microphone, files) and delegates recognition to pluggable backends – each implemented as a standalone function in the `recognizers/` subpackage and attached to the `Recognizer` instance at import time. The library bundles FLAC encoder binaries for audio conversion, offers a CLI tool for model downloads, and includes comprehensive test suites with audio fixtures in multiple formats. While the code is well-structured and features clean abstractions (e.g., `AudioData` for format conversion, `OpenAICompatibleRecognizer` base class), it exhibits some technical drift: bundled FLAC binaries are outdated (v1.3.2 from 2014), it depends on `audioop` (deprecated in Python 3.13+), and several backend APIs are at risk of deprecation. The library is production-grade (v3.17.0) and widely used, but its reliance on hardcoded API keys and legacy workarounds for old Python versions suggests maintenance is ongoing but with moderate lag. Overall, it is a solid, reusable codebase with several components that could be extracted independently.

RATING: 7.5/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
octimot/StoryToolkitAI ★ 1022 85 APPLICATION

StoryToolkitAI is a video editing toolkit that leverages AI to enhance post-production workflows. It operates in dual modes (GUI and CLI) with core functionality centered around transcription, semantic search, speaker diarization, and integration with DaVinci Resolve Studio. The application enables users to transcribe media files, search content using natural language, generate stories via LLM assistance, and export to professional editing formats (EDL, XML, Fountain). Key architectural elements include a plugin-based system for LLM providers, a persistent task queue with dependency tracking for CPU/GPU workloads, and project-based file linking for unified search across media assets. The tool emphasizes local processing with optional external API usage for advanced features.

RATING: 7.5/10 MAINT: maintained DRIFT: medium
▸ 2 reusable components found
nl8590687/ASRT_SpeechRecognition ★ 8392 1893 APPLICATION

ASRT (Automatic Speech Recognition Toolkit) is a Chinese speech recognition system that provides both training and inference capabilities. It uses a deep CNN acoustic model with Connectionist Temporal Classification (CTC) and an N-gram language model based on a maximum entropy hidden Markov model. The system supports multiple backends (TensorFlow/Keras and experimental PyTorch) and can be trained on several Chinese speech corpora (THCHS30, ST-CMDS, etc.). It includes HTTP and gRPC servers for real-time inference, a speech recorder utility, and client libraries. The architecture is monolithic with separate scripts for training, evaluation, and serving. The codebase is functional but shows signs of technical drift, such as using deprecated Keras APIs (fit_generator) and hardcoded paths. The language model implementation is a notable highlight, offering a non-trivial statistical decoding approach. The repository is popular but has a single maintainer and a high number of open issues.

RATING: 7.4/10 MAINT: active DRIFT: medium
▸ 2 reusable components found
sophgo/sophon-demo ★ 529 115 APPLICATION

This repository is a comprehensive collection of AI model demos and sample applications for Sophgo's Sophon TPU hardware (BM1684X, BM1688, CV186X). It provides both Python and C++ implementations for running inference on a wide range of models including object detection (YOLO variants, CenterNet), segmentation (SAM, YOLACT), OCR (PP-OCR, LPRNet), large language models (Qwen, ChatGLM, MiniCPM), speech recognition (Whisper, WeNet), text-to-speech (ChatTTS, VITS), and multi-modal models (CLIP, BLIP, GroundingDINO). The repository also includes full application demos such as a document QA chatbot (ChatDoc), an audio assistant pipeline (ASR+LLM+TTS), multi-channel video processing with Qt GUIs, and OpenAI-compatible API servers. The primary architecture is a set of independent, self-contained demos, each with its own model compilation scripts (using TPU-MLIR), inference code, and evaluation tools. While the codebase is functional and covers a broad spectrum of AI models, it suffers from significant code duplication across samples, hardcoded paths, and some outdated dependency versions, making it more of a demo showcase than a production-ready library.

RATING: 6.7/10 MAINT: maintained DRIFT: medium
▸ 2 reusable components found
duixcom/Duix-Mobile ★ 8202 1210 APPLICATION

This repository is a mobile SDK for real-time interactive AI avatars, primarily targeting Android and iOS platforms. It provides on-device inference for speech recognition (via WeNet) and face/body segmentation (via ncnn-based U-Net models), enabling low-latency lip-sync and avatar animation driven by audio input. The SDK is structured as a C++ core with platform-specific wrappers (Java for Android, Objective-C for iOS), and includes bundled third-party libraries (ncnn, OpenCV, FFmpeg, ONNX Runtime) for computer vision, audio processing, and neural network inference. In production, the system ingests 16kHz PCM audio from a microphone, extracts MFCC features, runs streaming speech recognition, and simultaneously processes the audio through a U-Net model to generate facial animation frames. These frames are rendered using OpenGL ES (Android) or Metal (iOS) with alpha blending for compositing onto a background. The SDK also includes model download, encryption (AES-128-CBC), and resource management utilities. The architecture is monolithic: all core logic lives in a single C++ module (duix-sdk), with platform-specific integration code in the app directories. The demo app in Android provides a fully functional test harness. While the SDK is feature-complete and demonstrates significant engineering effort in mobile AI inference, the codebase exhibits several quality issues: duplicated third-party headers across architectures, hardcoded encryption keys, outdated library versions (OpenCV 4.6.0, ncnn 2022/2023), and minimal inline documentation. The high star count and fork activity suggest a strong community, but the code itself is functional rather than exemplar. The most reusable components are the reference-counted memory allocator (dh_mem.h) and the AES stream decryption wrapper (gaes_stream.h), which can be extracted for general-purpose use.

RATING: 6.6/10 MAINT: maintained DRIFT: medium
▸ 2 reusable components found
$ loading more...
$ submit: