[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-nl8590687--ASRT_SpeechRecognition":3,"tool-nl8590687--ASRT_SpeechRecognition":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",147882,2,"2026-04-09T11:32:47",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108111,"2026-04-08T11:23:26",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":74,"owner_company":76,"owner_location":77,"owner_email":74,"owner_twitter":78,"owner_website":79,"owner_url":80,"languages":81,"stars":94,"forks":95,"last_commit_at":96,"license":97,"difficulty_score":10,"env_os":98,"env_gpu":99,"env_ram":100,"env_deps":101,"category_tags":115,"github_topics":117,"view_count":32,"oss_zip_url":74,"oss_zip_packed_at":74,"status":17,"created_at":128,"updated_at":129,"faqs":130,"releases":171},5959,"nl8590687\u002FASRT_SpeechRecognition","ASRT_SpeechRecognition","A Deep-Learning-Based Chinese Speech Recognition System 基于深度学习的中文语音识别系统","ASRT_SpeechRecognition 是一款基于深度学习的开源中文语音识别系统，旨在将音频内容高效、准确地转换为汉语拼音或文本序列。它主要解决了中文场景下语音转文字的技术需求，为开发者提供了一套从模型训练、评估到实际推理的完整解决方案，支持通过 HTTP 或 gRPC 协议快速搭建专属的语音识别服务。\n\n该项目非常适合人工智能开发者、科研人员以及需要定制中文语音能力的技术团队使用。无论是希望深入研究语音识别算法的学者，还是需要在项目中集成语音功能的工程师，都能从中受益。普通用户若想体验效果，也可通过官方提供的 Demo 进行尝试。\n\n在技术实现上，ASRT_SpeechRecognition 基于 TensorFlow.keras 构建，创新性地融合了深度卷积神经网络（DCNN）、长短时记忆网络（LSTM）以及注意力机制，并采用 CTC 损失函数进行端到端训练。这种架构不仅提升了识别准确率，还有效处理了语音信号的时间序列特性。项目提供了详细的文档和多数据集配置支持，允许用户在 Linux 或 Windows 环境下灵活部署，甚至支持 Docker 一键启动，极大地降低了使用门槛","ASRT_SpeechRecognition 是一款基于深度学习的开源中文语音识别系统，旨在将音频内容高效、准确地转换为汉语拼音或文本序列。它主要解决了中文场景下语音转文字的技术需求，为开发者提供了一套从模型训练、评估到实际推理的完整解决方案，支持通过 HTTP 或 gRPC 协议快速搭建专属的语音识别服务。\n\n该项目非常适合人工智能开发者、科研人员以及需要定制中文语音能力的技术团队使用。无论是希望深入研究语音识别算法的学者，还是需要在项目中集成语音功能的工程师，都能从中受益。普通用户若想体验效果，也可通过官方提供的 Demo 进行尝试。\n\n在技术实现上，ASRT_SpeechRecognition 基于 TensorFlow.keras 构建，创新性地融合了深度卷积神经网络（DCNN）、长短时记忆网络（LSTM）以及注意力机制，并采用 CTC 损失函数进行端到端训练。这种架构不仅提升了识别准确率，还有效处理了语音信号的时间序列特性。项目提供了详细的文档和多数据集配置支持，允许用户在 Linux 或 Windows 环境下灵活部署，甚至支持 Docker 一键启动，极大地降低了使用门槛。","![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnl8590687_ASRT_SpeechRecognition_readme_a44dcc37c4ee.png)\r\n\r\n[![GPL-3.0 Licensed](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-GPL3.0-blue.svg?style=flat)](https:\u002F\u002Fopensource.org\u002Flicenses\u002FGPL-3.0) \r\n[![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fnl8590687\u002FASRT_SpeechRecognition)](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition) \r\n[![TensorFlow Version](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTensorflow-2.5+-blue.svg)](https:\u002F\u002Fwww.tensorflow.org\u002F) \r\n[![Python Version](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPython-3.9+-blue.svg)](https:\u002F\u002Fwww.python.org\u002F) \r\n[![DOI](https:\u002F\u002Fzenodo.org\u002Fbadge\u002FDOI\u002F10.5281\u002Fzenodo.5808434.svg)](https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.5808434)\r\n\r\nASRT是一个基于深度学习的中文语音识别系统，如果您觉得喜欢，请点一个 **\"Star\"** 吧~\r\n\r\n**ReadMe Language** | 中文版 | [English](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fblob\u002Fmaster\u002FREADME_EN.md) |\r\n\r\n[**ASRT项目主页**](https:\u002F\u002Fasrt.ailemon.net\u002F) | \r\n[**发布版下载**](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fdownload) | \r\n[**查看本项目的Wiki文档**](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc) | \r\n[**实用效果体验Demo**](https:\u002F\u002Fasrt.ailemon.net\u002Fdemo) | \r\n[**打赏作者**](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fasrt-doc-1deo9u61unti9)\r\n\r\n如果程序运行期间或使用中有什么问题，可以及时在issue中提出来，我将尽快做出答复。本项目作者交流QQ群：**894112051** ，加微信群请先加AI柠檬微信号：**ailemon-me** ，并备注“ASRT语音识别”\r\n\r\n\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnl8590687_ASRT_SpeechRecognition_readme_7992959d9d26.jpg\" height=\"100rem\"\u002F>\u003C\u002Fcenter>\r\n\r\n提问前请仔细查看[项目文档](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc)、 \r\n[FAQ常见问题](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fasrt-doc-1deoeud494h4f)\r\n以及[Issues](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fissues) 避免重复提问\r\n\r\n如果程序运行时有任何异常情况，在提问时请发出完整截图，并注明所使用的CPU架构，GPU型号，操作系统、Python，TensorFlow和CUDA版本，以及是否修改过任何代码或增删数据集等。\r\n\r\n## Introduction 简介\r\n\r\n本项目使用tensorFlow.keras基于深度卷积神经网络和长短时记忆神经网络、注意力机制以及CTC实现。\r\n\r\n## 训练模型的最低软硬件要求\r\n### 硬件\r\n* CPU: 4核 (x86_64, amd64) +\r\n* RAM: 16 GB +\r\n* GPU: NVIDIA, Graph Memory 11GB+ (1080ti起步)\r\n* 硬盘: 500 GB 机械硬盘(或固态硬盘)\r\n\r\n### 软件\r\n* Linux: Ubuntu 20.04+ \u002F CentOS 7+ (训练+推理) 或 Windows: 10\u002F11(仅推理)\r\n* Python: 3.9 - 3.11 及后续版本\r\n* TensorFlow: 2.5 - 2.11 及后续版本\r\n\r\n## 快速开始\r\n\r\n以在Linux系统下的操作为例：\r\n\r\n首先通过Git将本项目克隆到您的计算机上，然后下载本项目训练所需要的数据集，下载链接详见[文档末尾部分](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition#data-sets-%E6%95%B0%E6%8D%AE%E9%9B%86)。\r\n```shell\r\n$ git clone https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition.git\r\n```\r\n\r\n或者您也可以通过 \"Fork\" 按钮，将本项目Copy一份副本，然后通过您自己的SSH密钥克隆到本地。\r\n\r\n通过git克隆仓库以后，进入项目根目录；并创建一个存储数据的子目录， 例如 `\u002Fdata\u002Fspeech_data` (可使用软链接代替)，然后将下载好的数据集直接解压进去\r\n\r\n注意，当前版本中，在配置文件里，默认添加了Thchs30、ST-CMDS、Primewords、aishell-1、aidatatang200、MagicData 六个数据集，如果不需要请自行删除。如果要使用其他数据集需要自行添加数据配置，并提前使用ASRT支持的标准格式整理数据。\r\n\r\n```shell\r\n$ cd ASRT_SpeechRecognition\r\n\r\n$ mkdir \u002Fdata\u002Fspeech_data\r\n\r\n$ tar zxf \u003C数据集压缩文件名> -C \u002Fdata\u002Fspeech_data\u002F \r\n```\r\n\r\n下载默认数据集的拼音标签文件：\r\n```shell\r\n$ python download_default_datalist.py\r\n```\r\n\r\n目前可用的模型有24、25、251和251bn\r\n\r\n运行本项目之前，请安装必要的[Python3版依赖库](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition#python-import)\r\n\r\n本项目开始训练请执行：\r\n```shell\r\n$ python3 train_speech_model.py\r\n```\r\n本项目开始测试请执行：\r\n```shell\r\n$ python3 evaluate_speech_model.py\r\n```\r\n测试之前，请确保代码中填写的模型文件路径存在。\r\n\r\n预测单条音频文件的语音识别文本：\r\n```shell\r\n$ python3 predict_speech_file.py\r\n```\r\n\r\n启动ASRT HTTP协议的API服务器启动请执行：\r\n```shell\r\n$ python3 asrserver_http.py\r\n```\r\n\r\n本地测试调用HTTP协议API服务是否成功：\r\n```shell\r\n$ python3 client_http.py\r\n```\r\n\r\n启动ASRT GRPC协议的API服务器启动请执行：\r\n```shell\r\n$ python3 asrserver_grpc.py\r\n```\r\n\r\n本地测试调用GRPC协议API服务是否成功：\r\n```shell\r\n$ python3 client_grpc.py\r\n```\r\n\r\n请注意，开启API服务器之后，需要使用本ASRT项目对应的客户端软件来进行语音识别，详见Wiki文档[下载ASRT语音识别客户端SDK和Demo](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fdownload)。\r\n\r\n如果要训练和使用非251bn版模型，请在代码中 `from speech_model.xxx import xxx` 的相应位置做修改。\r\n\r\n使用docker直接部署ASRT：\r\n```shell\r\n$ docker pull ailemondocker\u002Fasrt_service:1.3.0\r\n$ docker run --rm -it -p 20001:20001 -p 20002:20002 --name asrt-server -d ailemondocker\u002Fasrt_service:1.3.0\r\n```\r\n仅CPU运行推理识别，不作训练\r\n\r\n## Model 模型\r\n\r\n### Speech Model 语音模型\r\n\r\nDCNN + CTC\r\n\r\n其中，输入的音频的最大时间长度为16秒，输出为对应的汉语拼音序列\r\n\r\n* 关于下载已经训练好的模型的问题\r\n\r\n已经训练好的模型包含在发布版服务端程序压缩包里面，发布版成品服务端程序可以在此下载：[ASRT下载页面](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fdownload)。\r\n\r\nGithub本仓库下[Releases](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Freleases)页面里面还包括各个不同版本的介绍信息，每个版本下方的zip压缩包也是包含已经训练好的模型的发布版服务端程序压缩包。\r\n\r\n### Language Model 语言模型\r\n\r\n基于概率图的最大熵隐马尔可夫模型\r\n\r\n输入为汉语拼音序列，输出为对应的汉字文本\r\n\r\n## About Accuracy 关于准确率\r\n\r\n当前，最好的模型在测试集上基本能达到85%的汉语拼音正确率\r\n\r\n## Python依赖库\r\n\r\n* tensorFlow (2.5-2.11+)\r\n* numpy\r\n* wave\r\n* matplotlib\r\n* scipy\r\n* requests\r\n* flask\r\n* waitress\r\n* grpcio \u002F grpcio-tools \u002F protobuf\r\n\r\n不会安装环境的同学请直接运行以下命令(前提是有GPU且已经安装好 Python3.9、CUDA 11.2 和 cudnn 8.1)：\r\n\r\n```shell\r\n$ pip install -r requirements.txt\r\n```\r\n\r\n[依赖环境和性能配置要求](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fasrt-doc-1deobk7bmlgd6)\r\n\r\n## Data Sets 数据集\r\n\r\n完整内容请查看：[几个最新免费开源的中文语音数据集](https:\u002F\u002Fblog.ailemon.net\u002F2018\u002F11\u002F21\u002Ffree-open-source-chinese-speech-datasets\u002F)\r\n\r\n|数据集|时长|大小|国内下载|国外下载|\r\n|-|-|-|-|-|\r\n|THCHS30|40h|6.01G|[data_thchs30.tgz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F18\u002Fdata_thchs30.tgz>)|[data_thchs30.tgz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F18\u002Fdata_thchs30.tgz>)|\r\n|ST-CMDS|100h|7.67G|[ST-CMDS-20170001_1-OS.tar.gz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F38\u002FST-CMDS-20170001_1-OS.tar.gz>)|[ST-CMDS-20170001_1-OS.tar.gz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F38\u002FST-CMDS-20170001_1-OS.tar.gz>)|\r\n|AIShell-1|178h|14.51G|[data_aishell.tgz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F33\u002Fdata_aishell.tgz>)|[data_aishell.tgz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F33\u002Fdata_aishell.tgz>)|\r\n|Primewords|100h|8.44G|[primewords_md_2018_set1.tar.gz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F47\u002Fprimewords_md_2018_set1.tar.gz>)|[primewords_md_2018_set1.tar.gz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F47\u002Fprimewords_md_2018_set1.tar.gz>)|\r\n|MagicData|755h|52G\u002F1.0G\u002F2.2G| [train_set.tar.gz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F68\u002Ftrain_set.tar.gz>) \u002F [dev_set.tar.gz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F68\u002Fdev_set.tar.gz>) \u002F [test_set.tar.gz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F68\u002Ftest_set.tar.gz>)|[train_set.tar.gz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F68\u002Ftrain_set.tar.gz>) \u002F [dev_set.tar.gz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F68\u002Fdev_set.tar.gz>) \u002F [test_set.tar.gz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F68\u002Ftest_set.tar.gz>)|\r\n\r\n  注：AISHELL-1 数据集解压方法\r\n\r\n  ```\r\n  $ tar xzf data_aishell.tgz\r\n  $ cd data_aishell\u002Fwav\r\n  $ for tar in *.tar.gz;  do tar xvf $tar; done\r\n  ```\r\n\r\n特别鸣谢！感谢前辈们的公开语音数据集\r\n\r\n如果提供的数据集链接无法打开和下载，请点击该链接 [OpenSLR](http:\u002F\u002Fwww.openslr.org)\r\n\r\n## ASRT语音识别API客户端调用SDK\r\n\r\nASRT为客户端通过RPC方式调用开发语音识别功能提供了不同平台和编程语言的SDK接入能力，对于其他平台，可直接通过调用通用RESTful Open API方式进行语音识别功能接入。具体接入步骤请看ASRT项目文档。\r\n\r\n|客户端平台|项目仓库链接|\r\n|-|-|\r\n|Windows客户端SDK和Demo|[ASRT_SDK_WinClient](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SDK_WinClient)|\r\n|跨平台Python3客户端SDK和Demo|[ASRT_SDK_Python3](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SDK_Python3)|\r\n|跨平台Golang客户端SDK和Demo|[asrt-sdk-go](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002Fasrt-sdk-go)|\r\n|Java客户端SDK和Demo|[ASRT_SDK_Java](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SDK_Java)|\r\n\r\n## ASRT相关资料 \r\n* [查看ASRT项目的Wiki文档](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc)\r\n\r\nASRT的原理请查看本文：\r\n* [ASRT：一个中文语音识别系统](https:\u002F\u002Fblog.ailemon.net\u002F2018\u002F08\u002F29\u002Fasrt-a-chinese-speech-recognition-system\u002F)\r\n\r\nASRT训练和部署教程请看：\r\n* [教你如何使用ASRT训练中文语音识别模型](\u003Chttps:\u002F\u002Fblog.ailemon.net\u002F2020\u002F08\u002F20\u002Fteach-you-how-use-asrt-train-chinese-asr-model\u002F>)\r\n* [教你如何使用ASRT部署中文语音识别API服务器](\u003Chttps:\u002F\u002Fblog.ailemon.net\u002F2020\u002F08\u002F27\u002Fteach-you-how-use-asrt-deploy-chinese-asr-api-server\u002F>)\r\n\r\n关于经常被问到的统计语言模型原理的问题，请看：\r\n\r\n* [统计语言模型：从中文拼音到文本](https:\u002F\u002Fblog.ailemon.net\u002F2017\u002F04\u002F27\u002Fstatistical-language-model-chinese-pinyin-to-words\u002F)\r\n* [统计N元语言模型生成算法：简单中文词频统计](https:\u002F\u002Fblog.ailemon.net\u002F2017\u002F02\u002F20\u002Fsimple-words-frequency-statistic-without-segmentation-algorithm\u002F)\r\n\r\n关于CTC的问题请看：\r\n\r\n* [[翻译]使用CTC进行序列建模](\u003Chttps:\u002F\u002Fblog.ailemon.net\u002F2019\u002F07\u002F18\u002Fsequence-modeling-with-ctc\u002F>)\r\n\r\n更多内容请访问作者的博客：[AI柠檬博客](https:\u002F\u002Fblog.ailemon.net\u002F)\r\n\r\n或使用[AI柠檬站内搜索引擎](https:\u002F\u002Fs.ailemon.net\u002F)进行相关信息的搜索\r\n\r\n## License 开源许可协议\r\n\r\n[GPL v3.0](LICENSE) © [nl8590687](https:\u002F\u002Fgithub.com\u002Fnl8590687) 作者：[AI柠檬](https:\u002F\u002Fwww.ailemon.net\u002F)\r\n\r\n## 参考引用本项目\r\n\r\n[DOI: 10.5281\u002Fzenodo.5808434](https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.5808434)\r\n\r\n## Contributors 贡献者们\r\n\r\n[贡献者页面](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fgraphs\u002Fcontributors)\r\n\r\n@nl8590687 (repo owner)\r\n","![](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnl8590687_ASRT_SpeechRecognition_readme_a44dcc37c4ee.png)\n\n[![GPL-3.0 许可](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-GPL3.0-blue.svg?style=flat)](https:\u002F\u002Fopensource.org\u002Flicenses\u002FGPL-3.0) \n[![星标数](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fnl8590687\u002FASRT_SpeechRecognition)](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition) \n[![TensorFlow 版本](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTensorflow-2.5+-blue.svg)](https:\u002F\u002Fwww.tensorflow.org\u002F) \n[![Python 版本](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPython-3.9+-blue.svg)](https:\u002F\u002Fwww.python.org\u002F) \n[![DOI](https:\u002F\u002Fzenodo.org\u002Fbadge\u002FDOI\u002F10.5281\u002Fzenodo.5808434.svg)](https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.5808434)\n\nASRT是一个基于深度学习的中文语音识别系统，如果您觉得喜欢，请点一个 **\"Star\"** 吧~\n\n**ReadMe Language** | 中文版 | [English](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fblob\u002Fmaster\u002FREADME_EN.md) |\n\n[**ASRT项目主页**](https:\u002F\u002Fasrt.ailemon.net\u002F) | \n[**发布版下载**](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fdownload) | \n[**查看本项目的Wiki文档**](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc) | \n[**实用效果体验Demo**](https:\u002F\u002Fasrt.ailemon.net\u002Fdemo) | \n[**打赏作者**](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fasrt-doc-1deo9u61unti9)\n\n如果程序运行期间或使用中有什么问题，可以及时在issue中提出来，我将尽快做出答复。本项目作者交流QQ群：**894112051** ，加微信群请先加AI柠檬微信号：**ailemon-me** ，并备注“ASRT语音识别”\n\n\u003Ccenter>\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnl8590687_ASRT_SpeechRecognition_readme_7992959d9d26.jpg\" height=\"100rem\"\u002F>\u003C\u002Fcenter>\n\n提问前请仔细查看[项目文档](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc)、 \n[FAQ常见问题](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fasrt-doc-1deoeud494h4f)\n以及[Issues](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fissues) 避免重复提问\n\n如果程序运行时有任何异常情况，在提问时请发出完整截图，并注明所使用的CPU架构，GPU型号，操作系统、Python，TensorFlow和CUDA版本，以及是否修改过任何代码或增删数据集等。\n\n## Introduction 简介\n\n本项目使用tensorFlow.keras基于深度卷积神经网络和长短时记忆神经网络、注意力机制以及CTC实现。\n\n## 训练模型的最低软硬件要求\n### 硬件\n* CPU: 4核 (x86_64, amd64) +\n* RAM: 16 GB +\n* GPU: NVIDIA, Graph Memory 11GB+ (1080ti起步)\n* 硬盘: 500 GB 机械硬盘(或固态硬盘)\n\n### 软件\n* Linux: Ubuntu 20.04+ \u002F CentOS 7+ (训练+推理) 或 Windows: 10\u002F11(仅推理)\n* Python: 3.9 - 3.11 及后续版本\n* TensorFlow: 2.5 - 2.11 及后续版本\n\n## 快速开始\n\n以在Linux系统下的操作为例：\n\n首先通过Git将本项目克隆到您的计算机上，然后下载本项目训练所需要的数据集，下载链接详见[文档末尾部分](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition#data-sets-%E6%95%B0%E6%8D%AE%E9%9B%86)。\n```shell\n$ git clone https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition.git\n```\n\n或者您也可以通过 \"Fork\" 按钮，将本项目Copy一份副本，然后通过您自己的SSH密钥克隆到本地。\n\n通过git克隆仓库以后，进入项目根目录；并创建一个存储数据的子目录， 例如 `\u002Fdata\u002Fspeech_data` (可使用软链接代替)，然后将下载好的数据集直接解压进去\n\n注意，当前版本中，在配置文件里，默认添加了Thchs30、ST-CMDS、Primewords、aishell-1、aidatatang200、MagicData 六个数据集，如果不需要请自行删除。如果要使用其他数据集需要自行添加数据配置，并提前使用ASRT支持的标准格式整理数据。\n\n```shell\n$ cd ASRT_SpeechRecognition\n\n$ mkdir \u002Fdata\u002Fspeech_data\n\n$ tar zxf \u003C数据集压缩文件名> -C \u002Fdata\u002Fspeech_data\u002F \n```\n\n下载默认数据集的拼音标签文件：\n```shell\n$ python download_default_datalist.py\n```\n\n目前可用的模型有24、25、251和251bn\n\n运行本项目之前，请安装必要的[Python3版依赖库](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition#python-import)\n\n本项目开始训练请执行：\n```shell\n$ python3 train_speech_model.py\n```\n本项目开始测试请执行：\n```shell\n$ python3 evaluate_speech_model.py\n```\n测试之前，请确保代码中填写的模型文件路径存在。\n\n预测单条音频文件的语音识别文本：\n```shell\n$ python3 predict_speech_file.py\n```\n\n启动ASRT HTTP协议的API服务器启动请执行：\n```shell\n$ python3 asrserver_http.py\n```\n\n本地测试调用HTTP协议API服务是否成功：\n```shell\n$ python3 client_http.py\n```\n\n启动ASRT GRPC协议的API服务器启动请执行：\n```shell\n$ python3 asrserver_grpc.py\n```\n\n本地测试调用GRPC协议API服务是否成功：\n```shell\n$ python3 client_grpc.py\n```\n\n请注意，开启API服务器之后，需要使用本ASRT项目对应的客户端软件来进行语音识别，详见Wiki文档[下载ASRT语音识别客户端SDK和Demo](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fdownload)。\n\n如果要训练和使用非251bn版模型，请在代码中 `from speech_model.xxx import xxx` 的相应位置做修改。\n\n使用docker直接部署ASRT：\n```shell\n$ docker pull ailemondocker\u002Fasrt_service:1.3.0\n$ docker run --rm -it -p 20001:20001 -p 20002:20002 --name asrt-server -d ailemondocker\u002Fasrt_service:1.3.0\n```\n仅CPU运行推理识别，不作训练\n\n## Model 模型\n\n### Speech Model 语音模型\n\nDCNN + CTC\n\n其中，输入的音频的最大时间长度为16秒，输出为对应的汉语拼音序列\n\n* 关于下载已经训练好的模型的问题\n\n已经训练好的模型包含在发布版服务端程序压缩包里面，发布版成品服务端程序可以在此下载：[ASRT下载页面](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fdownload)。\n\nGithub本仓库下[Releases](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Freleases)页面里面还包括各个不同版本的介绍信息，每个版本下方的zip压缩包也是包含已经训练好的模型的发布版服务端程序压缩包。\n\n### Language Model 语言模型\n\n基于概率图的最大熵隐马尔可夫模型\n\n输入为汉语拼音序列，输出为对应的汉字文本\n\n## About Accuracy 关于准确率\n\n当前，最好的模型在测试集上基本能达到85%的汉语拼音正确率\n\n## Python依赖库\n\n* tensorFlow (2.5-2.11+)\n* numpy\n* wave\n* matplotlib\n* scipy\n* requests\n* flask\n* waitress\n* grpcio \u002F grpcio-tools \u002F protobuf\n\n不会安装环境的同学请直接运行以下命令(前提是有GPU且已经安装好 Python3.9、CUDA 11.2 和 cudnn 8.1)：\n\n```shell\n$ pip install -r requirements.txt\n```\n\n[依赖环境和性能配置要求](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc\u002Fasrt-doc-1deobk7bmlgd6)\n\n## Data Sets 数据集\n\n完整内容请查看：[几个最新免费开源的中文语音数据集](https:\u002F\u002Fblog.ailemon.net\u002F2018\u002F11\u002F21\u002Ffree-open-source-chinese-speech-datasets\u002F)\n\n|数据集|时长|大小|国内下载|国外下载|\n|-|-|-|-|-|\n|THCHS30|40h|6.01G|[data_thchs30.tgz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F18\u002Fdata_thchs30.tgz>)|[data_thchs30.tgz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F18\u002Fdata_thchs30.tgz>)|\n|ST-CMDS|100h|7.67G|[ST-CMDS-20170001_1-OS.tar.gz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F38\u002FST-CMDS-20170001_1-OS.tar.gz>)|[ST-CMDS-20170001_1-OS.tar.gz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F38\u002FST-CMDS-20170001_1-OS.tar.gz>)|\n|AIShell-1|178h|14.51G|[data_aishell.tgz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F33\u002Fdata_aishell.tgz>)|[data_aishell.tgz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F33\u002Fdata_aishell.tgz>)|\n|Primewords|100h|8.44G|[primewords_md_2018_set1.tar.gz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F47\u002Fprimewords_md_2018_set1.tar.gz>)|[primewords_md_2018_set1.tar.gz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F47\u002Fprimewords_md_2018_set1.tar.gz>)|\n|MagicData|755h|52G\u002F1.0G\u002F2.2G| [train_set.tar.gz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F68\u002Ftrain_set.tar.gz>) \u002F [dev_set.tar.gz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F68\u002Fdev_set.tar.gz>) \u002F [test_set.tar.gz](\u003Chttp:\u002F\u002Fopenslr.magicdatatech.com\u002Fresources\u002F68\u002Ftest_set.tar.gz>)|[train_set.tar.gz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F68\u002Ftrain_set.tar.gz>) \u002F [dev_set.tar.gz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F68\u002Fdev_set.tar.gz>) \u002F [test_set.tar.gz](\u003Chttp:\u002F\u002Fwww.openslr.org\u002Fresources\u002F68\u002Ftest_set.tar.gz>)|\n\n  注：AISHELL-1 数据集解压方法\n\n  ```\n  $ tar xzf data_aishell.tgz\n  $ cd data_aishell\u002Fwav\n  $ for tar in *.tar.gz;  do tar xvf $tar; done\n  ```\n\n特别鸣谢！感谢前辈们的公开语音数据集\n\n如果提供的数据集链接无法打开和下载，请点击该链接 [OpenSLR](http:\u002F\u002Fwww.openslr.org)\n\n## ASRT语音识别API客户端调用SDK\n\nASRT为客户端通过RPC方式调用开发语音识别功能提供了不同平台和编程语言的SDK接入能力，对于其他平台，可直接通过调用通用RESTful Open API方式进行语音识别功能接入。具体接入步骤请看ASRT项目文档。\n\n|客户端平台|项目仓库链接|\n|-|-|\n|Windows客户端SDK和Demo|[ASRT_SDK_WinClient](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SDK_WinClient)|\n|跨平台Python3客户端SDK和Demo|[ASRT_SDK_Python3](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SDK_Python3)|\n|跨平台Golang客户端SDK和Demo|[asrt-sdk-go](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002Fasrt-sdk-go)|\n|Java客户端SDK和Demo|[ASRT_SDK_Java](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SDK_Java)|\n\n## ASRT相关资料\r\n* [查看ASRT项目的Wiki文档](https:\u002F\u002Fwiki.ailemon.net\u002Fdocs\u002Fasrt-doc)\r\n\r\nASRT的原理请查看本文：\r\n* [ASRT：一个中文语音识别系统](https:\u002F\u002Fblog.ailemon.net\u002F2018\u002F08\u002F29\u002Fasrt-a-chinese-speech-recognition-system\u002F)\r\n\r\nASRT训练和部署教程请看：\r\n* [教你如何使用ASRT训练中文语音识别模型](\u003Chttps:\u002F\u002Fblog.ailemon.net\u002F2020\u002F08\u002F20\u002Fteach-you-how-use-asrt-train-chinese-asr-model\u002F>)\r\n* [教你如何使用ASRT部署中文语音识别API服务器](\u003Chttps:\u002F\u002Fblog.ailemon.net\u002F2020\u002F08\u002F27\u002Fteach-you-how-use-asrt-deploy-chinese-asr-api-server\u002F>)\r\n\r\n关于经常被问到的统计语言模型原理的问题，请看：\r\n\r\n* [统计语言模型：从中文拼音到文本](https:\u002F\u002Fblog.ailemon.net\u002F2017\u002F04\u002F27\u002Fstatistical-language-model-chinese-pinyin-to-words\u002F)\r\n* [统计N元语言模型生成算法：简单中文词频统计](https:\u002F\u002Fblog.ailemon.net\u002F2017\u002F02\u002F20\u002Fsimple-words-frequency-statistic-without-segmentation-algorithm\u002F)\r\n\r\n关于CTC的问题请看：\r\n\r\n* [[翻译]使用CTC进行序列建模](\u003Chttps:\u002F\u002Fblog.ailemon.net\u002F2019\u002F07\u002F18\u002Fsequence-modeling-with-ctc\u002F>)\r\n\r\n更多内容请访问作者的博客：[AI柠檬博客](https:\u002F\u002Fblog.ailemon.net\u002F)\r\n\r\n或使用[AI柠檬站内搜索引擎](https:\u002F\u002Fs.ailemon.net\u002F)进行相关信息的搜索\r\n\r\n## License 开源许可协议\r\n\r\n[GPL v3.0](LICENSE) © [nl8590687](https:\u002F\u002Fgithub.com\u002Fnl8590687) 作者：[AI柠檬](https:\u002F\u002Fwww.ailemon.net\u002F)\r\n\r\n## 参考引用本项目\r\n\r\n[DOI: 10.5281\u002Fzenodo.5808434](https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.5808434)\r\n\r\n## Contributors 贡献者们\r\n\r\n[贡献者页面](https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fgraphs\u002Fcontributors)\r\n\r\n@nl8590687 (repo owner)","# ASRT 中文语音识别快速上手指南\n\nASRT 是一个基于深度学习（DCNN + LSTM + Attention + CTC）的中文语音识别系统，支持训练、推理及 API 服务部署。\n\n## 1. 环境准备\n\n### 硬件要求（训练模式）\n*   **CPU**: 4 核及以上 (x86_64\u002Famd64)\n*   **内存**: 16 GB 及以上\n*   **GPU**: NVIDIA 显卡，显存 11GB+ (推荐 GTX 1080Ti 起步)\n*   **硬盘**: 500 GB 及以上 (建议使用 SSD 以提升读取速度)\n*   *注：若仅进行推理识别，可使用 CPU 运行，无需高性能 GPU。*\n\n### 软件要求\n*   **操作系统**: \n    *   Linux: Ubuntu 20.04+ \u002F CentOS 7+ (支持训练 + 推理)\n    *   Windows: 10\u002F11 (仅支持推理)\n*   **Python**: 3.9 - 3.11\n*   **深度学习框架**: TensorFlow 2.5 - 2.11\n*   **GPU 驱动** (如需训练): CUDA 11.2 + cuDNN 8.1\n\n## 2. 安装步骤\n\n### 第一步：克隆项目\n```shell\ngit clone https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition.git\ncd ASRT_SpeechRecognition\n```\n\n### 第二步：准备数据集\n创建数据目录并解压数据集（以 Thchs30 等开源数据集为例）。\n*国内用户推荐使用 MagicData 或 OpenSLR 国内镜像源下载数据。*\n\n```shell\n# 创建数据目录\nmkdir -p \u002Fdata\u002Fspeech_data\n\n# 解压数据集到指定目录 (请替换为实际下载的文件名)\ntar zxf \u003C数据集压缩文件名> -C \u002Fdata\u002Fspeech_data\u002F\n```\n> **注意**：默认配置文件已包含 Thchs30、ST-CMDS、Primewords、aishell-1、aidatatang200、MagicData 六个数据集配置。若未下载全部数据集，请修改配置文件移除对应项，或自行添加新数据集配置。\n\n### 第三步：下载标签文件\n下载默认的拼音标签列表文件：\n```shell\npython download_default_datalist.py\n```\n\n### 第四步：安装依赖库\n确保已安装 Python 3.9+ 及对应的 CUDA\u002FcuDNN (如有 GPU)，然后安装依赖：\n```shell\npip install -r requirements.txt\n```\n*若 pip 下载缓慢，可添加国内源加速，例如：`pip install -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple`*\n\n## 3. 基本使用\n\n### 场景一：训练模型\n开始训练语音识别模型（需满足硬件要求）：\n```shell\npython3 train_speech_model.py\n```\n\n### 场景二：单文件语音识别预测\n对单个音频文件进行识别测试：\n```shell\npython3 predict_speech_file.py\n```\n*使用前请确保代码中已正确填写待测音频文件的路径。*\n\n### 场景三：启动 API 服务\n启动 HTTP 协议的识别服务器：\n```shell\npython3 asrserver_http.py\n```\n\n本地测试调用是否成功：\n```shell\npython3 client_http.py\n```\n\n### 场景四：Docker 快速部署（仅推理）\n若无需训练，仅需部署推理服务，可直接使用 Docker：\n```shell\ndocker pull ailemondocker\u002Fasrt_service:1.3.0\ndocker run --rm -it -p 20001:20001 -p 20002:20002 --name asrt-server -d ailemondocker\u002Fasrt_service:1.3.0\n```","某地方电视台新闻部需要快速将每日采集的数十小时方言采访录音整理为文字稿件，以赶在晚间新闻前完成剪辑。\n\n### 没有 ASRT_SpeechRecognition 时\n- **人工转录效率极低**：编辑团队需手动听写录音，处理 1 小时音频平均耗时 4-5 小时，严重拖累新闻时效性。\n- **外包成本高昂**：若委托第三方转写，每分钟音频费用不菲，长期累积导致部门预算超支。\n- **中文方言适配差**：通用的国外开源模型对中文普通话及带口音的方言识别率极低，大量专有名词和语气词无法准确还原。\n- **数据隐私风险**：将未播出的敏感新闻素材上传至公有云 API 存在泄露风险，不符合媒体保密规定。\n\n### 使用 ASRT_SpeechRecognition 后\n- **自动化实时转写**：利用其基于 DCNN+CTC 的深度学习模型，在本地服务器部署后，可实现接近实时的语音转文字，效率提升 20 倍以上。\n- **零边际成本运行**：基于 TensorFlow 构建且开源免费，仅需一次性投入硬件资源，后续大规模处理无需额外授权费用。\n- **深度中文优化**：专为中文语音设计，支持 Thchs30、Aishell 等主流数据集训练，能精准识别新闻语境下的专业术语及轻微方言口音。\n- **私有化安全部署**：支持通过 Docker 容器或 HTTP\u002FgRPC 接口在内网完全离线运行，确保新闻素材不出机房，彻底消除隐私顾虑。\n\nASRT_SpeechRecognition 通过提供高精度、可私有化部署的中文语音识别能力，将新闻素材处理从劳动密集型转变为自动化流程，显著提升了媒体内容的生产效率与安全性。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fnl8590687_ASRT_SpeechRecognition_5bca5e7f.png","nl8590687",null,"https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fnl8590687_48531305.png","Xidian University","China","ailemon_me","https:\u002F\u002Fwww.ailemon.net\u002F","https:\u002F\u002Fgithub.com\u002Fnl8590687",[82,86,90],{"name":83,"color":84,"percentage":85},"Python","#3572A5",97.9,{"name":87,"color":88,"percentage":89},"Dockerfile","#384d54",1.5,{"name":91,"color":92,"percentage":93},"HTML","#e34c26",0.5,8366,1898,"2026-04-09T07:17:14","GPL-3.0","Linux (Ubuntu 20.04+, CentOS 7+), Windows (10\u002F11, 仅支持推理)","训练必需：NVIDIA GPU，显存 11GB+ (推荐 GTX 1080Ti 起步)；推理可选 CPU。需配合 CUDA 11.2 和 cuDNN 8.1","16GB+",{"notes":102,"python":103,"dependencies":104},"1. Windows 系统仅支持推理，不支持训练。2. 默认配置包含六个数据集（Thchs30, ST-CMDS, Primewords, aishell-1, aidatatang200, MagicData），无需使用需手动删除配置。3. 提供 Docker 镜像 (ailemondocker\u002Fasrt_service:1.3.0) 可直接部署用于 CPU 推理。4. 音频输入最大时长限制为 16 秒。5. 若使用非 251bn 版模型，需修改代码中的导入路径。","3.9 - 3.11",[105,106,107,108,109,110,111,112,113,114],"tensorflow>=2.5","numpy","scipy","matplotlib","flask","waitress","grpcio","grpcio-tools","protobuf","requests",[14,116],"音频",[118,119,120,121,122,123,124,125,126,127],"tensorflow","cnn","ctc","python","keras","speech-recognition","speech-to-text","chinese-speech-recognition","asrt","python3","2026-03-27T02:49:30.150509","2026-04-10T02:45:02.218686",[131,136,141,146,151,156,161,166],{"id":132,"question_zh":133,"answer_zh":134,"source_url":135},27026,"如何准备和生成自己的训练数据文件（如 train.wav.txt 和 train.syllable.txt）？","项目未直接提供数据集划分和处理脚本（因作者硬盘损坏丢失），但核心处理函数位于 file_wav 和 file_dict 模块中。用户需自行编写脚本将音频文件路径与对应的拼音\u002F文本标签整理成指定格式。数据集通常随机划分为训练集、测试集和验证集，比例可任意指定，一般将大部分数据作为训练集。","https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fissues\u002F57",{"id":137,"question_zh":138,"answer_zh":139,"source_url":140},27027,"训练时遇到 'Saw a non-null label following a null label' 或数组下标越界错误怎么办？","这通常是数据读取或格式问题。如果是 THCHS30 数据集，可能是新版数据格式与代码不兼容，建议尝试使用旧版本数据或检查数据清洗逻辑。对于数组下标越界（如 bili 变量相关），可能是因为数据集语音数量比例变化导致计算索引超出范围，需根据实际数据量调整代码中的硬编码参数（如 bili=11 是针对特定数据集比例的），或者检查数据加载器中的索引计算逻辑。","https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fissues\u002F5",{"id":142,"question_zh":143,"answer_zh":144,"source_url":145},27028,"模型识别结果中同音字概率错误（如“语音”被识别为“与音”），如何提高拼音转中文的准确率？","这主要取决于语言模型的质量。dic_pinyin.txt 文件通常是从中文语料库转换生成的，用于统计拼音到汉字的映射概率。要提高准确率，需要拓展和优化语言模型：1. 使用更大规模、更贴合应用场景的中文语料库重新统计生成语言模型；2. 确保拼音语料库覆盖全面，正确处理多音字情况（通常基于上下文统计概率）；3. 原理上是通过统计大量文本中词语共现频率来优化解码时的路径概率。","https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fissues\u002F143",{"id":147,"question_zh":148,"answer_zh":149,"source_url":150},27029,"如何测试非 16000Hz 采样率（如 8000Hz）的语音文件？需要重新训练模型吗？","不需要重新训练模型。标准做法是使用工具（如 ffmpeg）将低采样率（如 8kHz）的音频文件重采样转换为模型支持的 16kHz 格式，然后再运行测试脚本。命令示例：使用 ffmpeg 进行格式转换。如果直接输入不同分辨率的音频会导致形状不匹配错误（ValueError: could not broadcast input array）。","https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fissues\u002F108",{"id":152,"question_zh":153,"answer_zh":154,"source_url":155},27030,"客户端识别时总是漏掉一句话的最后一个字，可能是什么原因？","这可能是运行环境或依赖库版本兼容性问题。有用户反馈在特定版本的 Anaconda (如 Anaconda3-2021.05, Python 3.8.8) 下会出现此问题。解决方案是卸载当前 Python 环境，更换一个稳定的 Python 版本（如 Python 3.6 或 3.7）并重新安装依赖库后再次尝试。","https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fissues\u002F264",{"id":157,"question_zh":158,"answer_zh":159,"source_url":160},27031,"语言模型是基于哪些数据统计出来的？","该项目早期的语言模型主要基于两个开源数据集统计生成。最初主要使用清华大学的 THCHS30 数据集，后来也结合了其他数据集（如 ST-CMDs）。由于项目初期其他开源中文语音数据集较少，因此主要依赖这几个经典数据集进行概率统计。","https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fissues\u002F118",{"id":162,"question_zh":163,"answer_zh":164,"source_url":165},27032,"如何使用多 GPU 进行模型训练？","在 speech_model 文件中调用 multi_gpu_model(model, GPUs_num) 函数。具体位置通常在模型编译（compile）之前。将模型包裹在该函数中即可启用多卡训练。如果遇到报错，请确保 TensorFlow 后端配置正确，并参考 Wiki 中的多 GPU 配置方法。有用户反馈配置成功后训练速度显著提升。","https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fissues\u002F18",{"id":167,"question_zh":168,"answer_zh":169,"source_url":170},27033,"代码中的 data_generator 返回的 'labels' 变量全为零，是否可以移除？","可以。维护者确认该变量在当前实现中未被有效利用（全为零），如果是为了调试或旧版本遗留代码，可以直接去掉以简化数据生成逻辑，不影响模型正常训练。","https:\u002F\u002Fgithub.com\u002Fnl8590687\u002FASRT_SpeechRecognition\u002Fissues\u002F26",[172,177,182,187,192,196,201,206,211,216,221,226,231,236,241],{"id":173,"version":174,"summary_zh":175,"released_at":176},180191,"v1.3.0","这是一个可用的发布版本。版本号：1.3.0\n一个可以使用的版本，版本号：1.3.0\n\n1. 增加了对grpc协议的支持\n2. 代码实现上支持了真正的流式识别\n\n1. 添加了对gRPC协议的支持\n2. 代码实现了真正的流式识别\n\n---\n\nASRT v1.x是一个全新的版本，也是一个更优秀的ASRT语音识别服务框架。\nASRT v1.x版本是一个全新的版本，一个更好的ASRT语音识别服务框架。\n\n如果您是想搭建一个能够进行语音识别的API服务端，支持持续运行若干次的识别过程，本目录下的所有文件适合您直接运行和使用。\n如果您是想搭建一个能够进行语音识别的API服务端，支持持续运行若干次的识别过程，本目录下的所有文件适合您直接运行和使用。\n\n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。\n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。\n\n本次发布使用的是SpeechModel251BN，内含训练好的模型参数文件。\n本次发布使用的是SpeechModel251BN，内含训练好的模型参数文件。","2022-05-20T11:23:50",{"id":178,"version":179,"summary_zh":180,"released_at":181},180192,"v1.2.0","这是一个可用的发布版本。版本号：1.2.0\n一个可以使用的版本，版本号：1.2.0\n本次发布的版本使用了新的语音声学模型SpeechModel251BN，相比于之前的SpeechModel251模型训练速度更快、识别率更高！本ASRT发布版本使用了1300余小时的开源数据集进行了训练，模型识别效果更鲁棒，泛化性更强！本版本中模型参数文件的识别效果比上一个版本的更佳，语音识别正确率大约85%。一个性能更好的基于http的API接口被加入其中。\n本次发布的版本使用了新的语音声学模型SpeechModel251BN，相比于之前的SpeechModel251模型训练速度更快、识别率更高！本ASRT发布版本使用了1300余小时的开源数据集进行了训练，模型识别效果更鲁棒，泛化性更强！本版本中模型参数文件的识别效果比上一个版本的更佳，语音识别正确率大约85%。一个性能更好的基于http的API接口被加入其中。\n\nASRT v1.x是全新版本，是一个更优秀的ASRT语音识别服务框架。\nASRT v1.x版本是一个全新的版本，一个更好的ASRT语音识别服务框架。\n\n如果您想搭建一个能够进行语音识别的API服务端，支持持续运行若干次的识别过程，本目录下的所有文件适合您直接运行和使用。运行语音识别API服务器请使用asrserver_http.py文件，运行基于HTTP协议的语音识别demo客户端请在使用asrserver_http.py文件后使用client_http.py文件，如果需要修改识别的录音文件路径，请在client_http.py中修改。\n如果您是想搭建一个能够进行语音识别的API服务端，支持持续运行若干次的识别过程，本目录下的所有文件适合您直接运行和使用。运行语音识别API服务器请使用asrserver_http.py文件，运行基于HTTP协议的语音识别demo客户端请在使用asrserver_http.py文件后使用client_http.py文件，如果需要修改识别的录音文件路径，请在client_http.py中修改。\n\n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。\n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。\n\n本次发布使用的是SpeechModel251BN，内含训练好的模型参数文件。\n本次发布使用的是SpeechModel251BN，内含训练好的模型参数文件。","2022-03-28T09:14:32",{"id":183,"version":184,"summary_zh":185,"released_at":186},180193,"v1.1.2","这是一个可用的发布版本，版本号：1.1.2\n一个可以使用的版本，版本号：1.1.2\n本次发布的版本使用了更多的开源数据集进行了训练，模型识别效果更鲁棒，泛化性更强！本版本中模型参数文件的效果比上一个版本的更佳。一个性能更好的基于http的API接口被加入其中。\nASRT v1.x是全新版本，提供了一个更优秀的ASRT语音识别服务框架。\n如果您是想搭建一个能够进行语音识别的API服务端，支持持续运行若干次的识别过程，本目录下的所有文件适合您直接运行和使用。运行语音识别API服务器请使用asrserver_http.py文件，运行基于HTTP协议的语音识别demo客户端请在使用asrserver_http.py文件后使用client_http.py文件，如果需要修改识别的录音文件路径，请在client_http.py中修改。\n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。\n本次发布仍然使用的是SpeechModel251，内含训练好的模型参数文件。","2022-03-22T13:15:18",{"id":188,"version":189,"summary_zh":190,"released_at":191},180194,"v1.1.1","这是一个可用的发布版本，版本号：1.1.1\n一个可以使用的版本，版本号：1.1.1\n本次发布的版本使用了更多的开源数据集进行了训练，模型识别效果更鲁棒，泛化性更强！本版本中模型参数文件的效果比上一个版本的更佳。一个性能更好的基于http的API接口被加入其中。 \nASRT v1.x版本是一个全新的版本，一个更好的ASRT语音识别服务框架。\n如果您是想搭建一个能够进行语音识别的API服务端，支持持续运行若干次的识别过程，本目录下的所有文件适合您直接运行和使用。运行语音识别API服务器请使用asrserver.py文件，运行基于HTTP协议的语音识别demo客户端请在使用asrserver.py文件后使用client.py文件，如果需要修改识别的录音文件路径，请在client.py中修改。 \n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。 \n本次发布仍然使用的是SpeechModel251，内含训练好的模型参数文件。","2022-03-05T11:48:58",{"id":193,"version":194,"summary_zh":74,"released_at":195},180195,"v1.1.0-update1","2021-12-29T05:15:54",{"id":197,"version":198,"summary_zh":199,"released_at":200},180196,"v1.1.0","这是一个可使用的版本。\n版本号：1.1.0\n本次发布的版本使用了更多的开源数据集进行了训练，模型识别效果更鲁棒，泛化性更强！\n\nASRT v1.x是一个全新的版本，提供了一个更为优秀的ASRT语音识别服务框架。\n\n如果您想搭建一个能够进行语音识别的API服务端，支持持续运行若干次的识别过程，本目录下的所有文件适合您直接运行和使用。运行语音识别API服务器请使用asrserver.py文件，运行基于HTTP协议的语音识别demo客户端请在使用asrserver.py文件后使用client.py文件，如果需要修改识别的录音文件路径，请在client.py中修改。\n\n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。\n\n本次发布仍然使用的是SpeechModel251，内含训练好的模型参数文件。","2021-12-04T18:00:10",{"id":202,"version":203,"summary_zh":204,"released_at":205},180197,"v1.0.0","这是一个可用的发布版本。\n版本号：1.0.0\n一个可以使用的版本，版本号：1.0.0\n\n本次发布是一个全新的版本，一个更好的ASRT语音识别服务框架。\n\n如果您是想搭建一个能够进行语音识别的API服务端，支持持续运行若干次的识别过程，本目录下的所有文件适合您直接运行和使用。运行语音识别API服务器请使用asrserver.py文件，运行基于HTTP协议的语音识别demo客户端请在使用asrserver.py文件后使用client.py文件，如果需要修改识别的录音文件路径，请在client.py中修改。\n\n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。\n\n本次发布仍然使用的是SpeechModel251，内含训练好的模型参数文件。","2021-11-20T13:22:19",{"id":207,"version":208,"summary_zh":209,"released_at":210},180198,"v0.6.1","这是一个可使用的版本。\n版本号：0.6.1\n一个可以使用的版本，版本号：0.6.1\n\n本次发布修复了在部分情况下可能导致文件路径报错的问题。\n\n如果您是想运行语音识别的一次或若干次的识别过程，本目录下的所有文件适合您直接运行和使用，直接运行一次识别请执行test.py文件，运行语音识别API服务器请使用asrserver.py文件，运行基于HTTP协议的语音识别客户端请在使用asrserver.py文件后使用testClient.py文件，如果需要修改识别的录音文件路径，请在testClient.py中修改。\n\n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。\n\n本次发布仍然使用的是SpeechModel251，内含训练好的模型参数文件。","2020-04-20T14:43:36",{"id":212,"version":213,"summary_zh":214,"released_at":215},180199,"v0.6.0","这是一个可用的发布版本。\n版本号：0.6.0\n一个可以使用的版本，版本号：0.6.0\n\n本次发布的模型的错误率，相比于v0.5.0版本，相对下降了25.27%，在测试中，错误率降至18.26%。\n本次发布的模型的错误率，相比于v0.5.0版本，相对下降了25.27%，在测试中，错误率降至18.26%。\n\n如果您是想运行语音识别的一次或若干次的识别过程，本目录下的所有文件适合您直接运行和使用，直接运行一次识别请执行test.py文件，运行语音识别API服务器请使用asrserver.py文件，运行基于HTTP协议的语音识别客户端请在使用asrserver.py文件后使用testClient.py文件，如果需要修改识别的录音文件路径，请在testClient.py中修改。\n如果您是想运行语音识别的一次或若干次的识别过程，本目录下的所有文件适合您直接运行和使用，直接运行一次识别请执行test.py文件，运行语音识别API服务器请使用asrserver.py文件，运行基于HTTP协议的语音识别客户端请在使用asrserver.py文件后使用testClient.py文件，如果需要修改识别的录音文件路径，请在testClient.py中修改。\n\n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。\n如果您想训练自己的语音识别模型，那么GitHub的master分支下的代码可能更适合您，它提供给了更多的选项，以及依赖文件。\n\n本次发布仍然使用的是SpeechModel251，内含训练好的模型参数文件。\n本次发布仍然使用的是SpeechModel251，内含训练好的模型参数文件。\n","2019-07-30T13:47:25",{"id":217,"version":218,"summary_zh":219,"released_at":220},180200,"v0.5.0","这是一个可使用的版本。\n版本号：0.5.0\n一个可以使用的版本，版本号：0.5.0\n\n这个版本主要是增强了语言模型的鲁棒性，解决了拼音转换到文本时掉字的bug。\n\n本次发布仍然使用的是SpeechModel251，内含训练好的模型文件。","2019-03-29T06:42:26",{"id":222,"version":223,"summary_zh":224,"released_at":225},180201,"v0.4.2","这是一个可使用的版本，版本号：0.4.2\r\n一个可以使用的版本，版本号：0.4.2\r\n\r\n这个版本主要是增加了asrserver.py这个基于HTTP协议的语音识别API服务对IPv6网络协议的支持，并修复了前一个版本遗留的小bug。\r\n\r\n本次发布仍然使用的是SpeechModel251，内含训练好的模型文件。","2019-01-09T09:03:22",{"id":227,"version":228,"summary_zh":229,"released_at":230},180202,"v0.4","This is a released version of available.\r\nversion: 0.4\r\n一个可以使用的版本，版本号：0.4\r\n\r\n这个版本的准确率相比前一个版本，又有了一定的提高，目前在测试集上有不错的识别效果，在实际应用中，也可以看到明显的识别效果了，后续将继续改善提高。\r\n\r\n使用的语音模型为speech_model251，这个模型经过测试，相对前一个版本的模型speech_model25，准确率再次提高，相对错误率下降约16%。\r\n\r\n本次发布是一个完整的而且确定的发布版本，内含训练好的模型文件。","2018-07-23T13:48:27",{"id":232,"version":233,"summary_zh":234,"released_at":235},180203,"v0.3","This is a released version of available.\r\nversion: 0.3\r\n一个可以使用的版本，版本号：0.3\r\n\r\n这是这个repo的第3个发布版本，这个版本的准确率相比前一个版本，又有了一定的提高，目前在测试集上有不错的识别效果，后续将继续改善。\r\n\r\n使用的语音模型为speech_model25，这个模型经过测试，相对前一个版本的模型speech_model24，准确率再次提高，语音识别率已经基本达到80%。\r\n\r\n本次发布是一个完整的而且确定的发布版本，内含训练好的模型文件。","2018-06-16T07:02:48",{"id":237,"version":238,"summary_zh":239,"released_at":240},180204,"v0.2","This is a released version of available.\r\nversion: 0.2\r\n一个可以使用的版本，版本号：0.2\r\n\r\n这是这个repo的第二个发布版本，这个版本的准确率相比前一个版本，已经有了很大的提高，目前在测试集上有还不错的识别效果，后续将继续改善。\r\n\r\n使用的语音模型为speech_model24，这个模型经过测试，比前一个版本的模型speech_model22准确率高出很多，语音识别率已经基本接近80%。\r\n\r\n本次发布是一个完整的而且确定的发布版本，内含训练好的模型文件。\r\n","2018-05-28T11:06:45",{"id":242,"version":243,"summary_zh":244,"released_at":245},180205,"v0.1","This is a released version of available temporary. \r\nversion: 0.1\r\n一个暂时可以使用的版本，版本号：0.1\r\n\r\n这是这个repo的第一个发布版本，这个版本的准确率暂时不是很高，但是目前一定具有一定的识别效果，后续将继续改善。\r\n使用的语音模型为model22，目前有着说得过去的语音识别字准确率。\r\n本次发布是一个完整的而且确定的发布版本，内含训练好的模型文件。","2018-05-14T11:43:59"]