Commit Graph
4974 Commits
Author SHA1 Message Date
zhifu gao ba2b488e17 docs: add community growth and contribution guides
Merge pull request #2863 from codex/growth-20k
2026-05-24 20:29:56 +08:00
游雁 006d1d7856 docs: add vLLM engine and dynamic VAD to READMEs
- README.md: add vLLM/dynamic VAD to What's new, add vLLM row to features
- README_zh.md: same updates in Chinese
- Fun-ASR-Nano README/README_zh: add built-in vLLM and WebSocket service links
2026-05-24 19:39:41 +08:00
游雁 a23bdcd622 Merge branch 'vllm' - vLLM inference engine + streaming WebSocket service
Features:
- AutoModelVLLM: generic vLLM inference for all LLM-based ASR models
- serve_realtime_ws.py: streaming WebSocket ASR with VAD+SPK+hotwords
- DynamicStreamingVAD: dynamic silence threshold (default on for all models)
- Fun-ASR-Nano batch_size fix for VAD pipeline
- Comprehensive vLLM documentation (docs/vllm_guide.md)
2026-05-24 19:37:23 +08:00
xiaoyunchong.xyc d008cbf957 fix: Fun-ASR-Nano batch_size check - use len(data_in) instead of kwargs batch_size_ms 2026-05-24 19:17:17 +08:00
xiaoyunchong.xyc b9bcf9d746 feat: add dynamic silence threshold to fsmn-vad model (default on)
- Modify FsmnVADStreaming.inference() to support dynamic_silence=True (default)
- Non-streaming schedule: gradually tighten threshold as speech accumulates
- Streaming uses STREAMING_SILENCE_SCHEDULE via DynamicStreamingVAD wrapper
- Can disable with dynamic_silence=False or customize via silence_schedule param
- Tracks VAD state to only accumulate during active speech
2026-05-24 18:53:06 +08:00
游雁 47e1c64666 feat: add subtitle generator tool (SRT/VTT from audio/video)
Verified: generates correct SRT output from audio files.
Supports speaker labels, multiple models, CPU/GPU.
2026-05-24 18:42:15 +08:00
xiaoyunchong.xyc 7be505f00e refactor: move DynamicStreamingVAD to funasr/models/fsmn_vad_streaming/ 2026-05-24 18:26:08 +08:00
xiaoyunchong.xyc ca352d992f feat: extract DynamicStreamingVAD as reusable component
- New funasr/utils/dynamic_vad.py: generic dynamic-threshold streaming VAD
- Supports both streaming (feed/finalize) and non-streaming (process) APIs
- Configurable silence_schedule for custom threshold curves
- Refactor serve_realtime_ws.py to use DynamicStreamingVAD
- Add documentation in vllm_guide.md appendix
2026-05-24 18:22:57 +08:00
xiaoyunchong.xyc c02734f184 docs: consolidate vLLM docs into single guide
- Merge vllm_inference.md + vllm_streaming.md + realtime_demo.md into docs/vllm_guide.md
- Single comprehensive document: overview, offline, streaming SDK, WebSocket service, API ref, FAQ
- Simplify realtime_demo.md to quick-start guide pointing to main doc
- Remove redundant vllm_inference.md and vllm_streaming.md
2026-05-24 18:10:09 +08:00
xiaoyunchong.xyc 84d24ab589 docs: add detailed inference logic section to realtime_demo.md 2026-05-24 18:05:39 +08:00
xiaoyunchong.xyc 6e3663c7ac docs: sync vllm_streaming.md with code - fix params, add AutoModelVLLM comparison 2026-05-24 18:03:06 +08:00
xiaoyunchong.xyc 55c035ff4d docs: fix vLLM version requirement, add AutoModelVLLM usage to vllm_inference.md 2026-05-24 18:00:34 +08:00
xiaoyunchong.xyc 9f0a2f9201 docs: add cross-references between vLLM docs 2026-05-24 17:58:09 +08:00
xiaoyunchong.xyc 6ee9620860 docs: add WebSocket streaming server section to vllm_guide.md 2026-05-24 17:53:55 +08:00
xiaoyunchong.xyc 753a0bbe67 docs: update realtime_demo.md with vLLM engine details 2026-05-24 17:47:08 +08:00
游雁 d3be9db4a4 fix: center SVG banner in all READMEs 2026-05-24 17:45:01 +08:00
xiaoyunchong.xyc 81e2fc07ce feat: switch streaming ASR to vLLM inference via AutoModelVLLM
- Replace native PyTorch model.inference() with AutoModelVLLM.generate()
- Uses the generic vLLM engine (supports Fun-ASR-Nano and other LLM-based models)
- Add text cleaning for vLLM output artifacts
- Add vLLM args: --dtype, --tensor-parallel-size, --gpu-memory-utilization, --max-model-len
- RTF improved from 0.156 to 0.078 (2x faster)
2026-05-24 17:44:38 +08:00
游雁 2a98e2b983 docs: add Japanese and Korean README, update all language links
- README.md (English) - language links updated
- README_zh.md (中文) - full redesign matching EN
- README_ja.md (日本語) - new, native quality
- README_ko.md (한국어) - new, native quality
2026-05-24 17:43:08 +08:00
游雁 5d7c77b38d docs: README redesign - conversion-optimized for new visitors
- One-liner tagline: 170x faster than Whisper, 50+ languages
- Quick Start with human-readable output (speaker labels + timestamps)
- Why FunASR comparison table (vs Whisper vs Cloud)
- Merged GPU/CPU benchmark into one compact table
- Model Zoo with self-hosted + community models
- Detailed examples moved to docs site (modelscope.github.io/FunASR)
- Star History chart
- 538 lines → 210 lines
2026-05-24 17:27:02 +08:00
游雁 d50c2917fa readme: merge GPU/CPU benchmark into one compact table 2026-05-24 17:23:31 +08:00
xiaoyunchong.xyc 2ba80e1e02 docs: add language selection to API protocol 2026-05-24 17:18:46 +08:00
游雁 b3e7a57b8d readme: improve conversion - human-readable output + Why FunASR comparison table 2026-05-24 17:17:53 +08:00
xiaoyunchong.xyc d3f9d85372 feat: add language selection for streaming ASR
- Server: --language arg + LANGUAGE: WebSocket command
- Client: language dropdown (Auto/中文/English/日本語/한국어/etc.)
- Protocol: LANGUAGE:<lang> sets target language dynamically
2026-05-24 17:16:41 +08:00
游雁 5b19743313 readme: replace Contributors with Star History chart 2026-05-24 17:13:01 +08:00
xiaoyunchong.xyc f720a28912 feat: polish streaming ASR service - cleanup, clients, docs
- Clean up serve_realtime_ws.py: remove debug logs, streamline code
- Add client_python.py: Python CLI client (mic/file/hotwords)
- Add client_test.py: automated test script (3 tests)
- Rewrite docs/realtime_demo.md: full deployment guide + API protocol
- Update client_mic.html: redesigned UI with speaker colors, hotword file
- Add hotword file support (热词列表, one word per line)
- Update requirements.txt
2026-05-24 17:11:57 +08:00
游雁 31761ce858 fix: add Whisper models back to Model Zoo table 2026-05-24 17:09:40 +08:00
游雁 5f68e47356 fix: community models (Qwen3/GLM-ASR) link to FunASR usage scripts 2026-05-24 17:07:36 +08:00
游雁 f5cedb864f draft: README v2 redesign - complete proposal for review 2026-05-24 17:02:04 +08:00
游雁 8c6a731ebb feat: add bf16 mixed precision training support
trainer.py now accepts use_bf16=True in train_conf. BF16 is preferred
over FP16 on modern GPUs (A100/H100) as it has wider dynamic range
and doesn't need loss scaling (GradScaler).

Usage: ++train_conf.use_bf16=true
2026-05-24 13:58:07 +08:00
游雁 524d377b93 feat: add batch CTC greedy decoding for Conformer/Transformer/E-Branchformer
Previously, all autoregressive models (Conformer, Transformer, Branchformer,
E-Branchformer) raised NotImplementedError for batch_size>1 inference,
forcing single-utterance decoding which is ~50x slower.

Now when batch_size>1, the model automatically uses CTC greedy decoding
(argmax + collapse repeats + remove blanks) which is fully parallelizable.

Performance on AISHELL-1 test (Conformer, 150 epochs):
- Attention decoder (batch=1): 4.92% CER, very slow
- CTC greedy batch (batch=32): 5.34% CER, ~50x faster

Users can still use batch_size=1 for attention decoder beam search when
they need the best accuracy.
2026-05-24 12:54:03 +08:00
游雁 7bddef6d13 draft: README改版方案预览(不影响现有README) 2026-05-24 12:33:49 +08:00
游雁 b61d9f5b49 feat: auto-select model based on device (GPU=fun-asr-nano, CPU=sensevoice) 2026-05-24 06:03:08 +08:00
游雁 754440084b feat: add desktop voice input tool (语音输入法)
Press hotkey → record → auto-transcribe → paste to cursor.
Works with funasr-server as backend. Supports macOS/Linux/Windows.
No secondary development needed - just pip install and run.
2026-05-24 05:44:12 +08:00
游雁 6be96163de release: v1.3.3 - add funasr-server CLI + OpenAI-compatible API + MCP server v1.3.3 2026-05-24 02:17:58 +08:00
游雁 97ec3ae2ee feat: add funasr-server CLI command for one-line API deployment
pip install funasr && funasr-server --device cuda
Starts OpenAI-compatible /v1/audio/transcriptions endpoint.
Verified: import, startup, transcription all work end-to-end.
2026-05-24 02:17:41 +08:00
游雁 6fdfac3115 docs(mcp): comprehensive setup guide for Claude/Cursor/Windsurf 2026-05-24 02:06:30 +08:00
游雁 25e9063132 feat(openai-api): production-ready server with full test coverage
- Proper error handling, logging, health endpoint
- Verified end-to-end with OpenAI Python SDK
- Models: sensevoice, paraformer, paraformer-en, fun-asr-nano
- Response formats: json, verbose_json (with segments/timestamps)
- Complete README with curl/SDK/LangChain examples
2026-05-24 02:05:54 +08:00
游雁 e1626914d4 docs: add blog post about agent integration 2026-05-24 01:59:47 +08:00
游雁 8d7be32c8f feat: add MCP server for AI assistant integration (Claude, Cursor)
Enables AI tools to call FunASR speech recognition via Model Context Protocol.
Supports transcribe_audio tool with auto language detection and speaker diarization.
2026-05-24 01:55:38 +08:00
游雁 96d0b72519 feat: add OpenAI-compatible API server for agent integration
Drop-in replacement for /v1/audio/transcriptions endpoint.
Works with any agent framework (LangChain, AutoGen, etc).
Supports sensevoice, paraformer, and fun-asr-nano models.
2026-05-24 01:54:05 +08:00
游雁 ac7e3ee8a2 fix: revert inference_batch_size for non-Paraformer models
Conformer, Transformer, and Branchformer models raise
NotImplementedError for batch decoding. Only Paraformer and
e_paraformer support batch_size>1 for inference. Revert the
non-Paraformer recipes back to batch_size=1.
2026-05-24 01:54:05 +08:00
Gemini Cloud AIandGemini AI Agent 4f343aa2cc fix(qwen3): stop masking dependency ImportErrors (#2860)
Co-authored-by: Gemini AI Agent <[email protected]>
2026-05-24 01:35:30 +08:00
游雁 9bc6de02a6 chore: improve PyPI classifiers (Python 3.8-3.12, AI/Speech topics, cross-platform) 2026-05-24 01:26:48 +08:00
游雁 6ac52c5cdb docs: add v1.3.2 release announcement to What's New 2026-05-24 01:20:31 +08:00
游雁 2cf30d33b2 docs: add benchmark section to README_zh.md (2nd most viewed page) 2026-05-24 01:19:53 +08:00
游雁 3289169bf0 release: v1.3.2 - fix hub parameter propagation for HuggingFace users v1.3.2 2026-05-24 00:35:52 +08:00
游雁 55a37e22b3 chore: update PyPI metadata - URL, description, keywords, project_urls 2026-05-24 00:31:55 +08:00
游雁 aad31f5e02 Revert "fix(runtime): 4 memory safety bugs in onnxruntime C++ code"
This reverts commit be26718559.
2026-05-24 00:23:17 +08:00
游雁 eb5d0574f2 Revert "fix(runtime/go): websocket client premature close in offline mode (#2834)"
This reverts commit 13b244d4c2.
2026-05-24 00:23:17 +08:00
imdenny 690280581b fix(onnxruntime): Fix Windows MSVC compilation errors (#2841)
* fix(onnxruntime): Fix Windows MSVC compilation errors

- Fix CMake syntax warning in src/CMakeLists.txt (message function quoting)

- Replace Python-style 'and' with C++ '&&' in ct-transformer-online.cpp

- Fix ssize_t redefinition conflict between kaldi and openfst on Windows

- Update yaml-cpp CMake policies from OLD to NEW for modern CMake compatibility

These changes enable successful compilation with MSVC on Windows (VS 2022)

 while maintaining compatibility with other platforms.

Tested with: Visual Studio 2022, Windows 11, CMake 3.x

* Add realtime mic app and optional FFmpeg build
2026-05-24 00:21:35 +08:00