项目结构与生态系统

“SpeechBrain”指的是GitHub上的软件和配方,以及跨越各种平台(PyPI、readthedocs、HuggingFace、DropBox)的更广泛生态系统。

本文档旨在为贡献者和普通用户理清项目及其生态系统的总体结构。

目录结构

这不是一个完整的列表,但它提供了一个大致的概述。

目录 内容
核心 (API 文档)
speechbrain/ 核心源代码
speechbrain/inference/ 易于使用的推理代码,集成了HuggingFace
speechbrain/utils/ 不适合放在其他地方的杂项实用工具
文档
docs/ 文档页面和配置
docs/tutorials/ Jupyter Notebook 教程
食谱
recipes/ dataset/task/model/形式提供的即用型配方
templates/ 新配方的参考实现(可选使用)
测试/代码检查/元数据
.github/ GitHub 问题/拉取请求模板和用于测试的 Actions 工作流
tests/ 自动化测试,一些在CI下运行,一些手动运行
tools/ 用于特定任务的一次性完整脚本和工具
.pre-commit-config.yaml Linter配置(样式检查,格式化)

外部平台

URL 内容
https://github.com/speechbrain/speechbrain 官方 SpeechBrain 仓库
https://speechbrain.github.io/ 登陆页面(从这里部署)
https://github.com/speechbrain/benchmarks 基于SpeechBrain的标准化基准
https://github.com/speechbrain/HyperPyYAML 官方 HyperPyYAML 仓库
https://speechbrain.readthedocs.io 文档和教程(从docs/部署)
https://huggingface.co/speechbrain 预训练模型,准备进行推理
仓库中的DropBox链接 数据、训练日志和检查点

测试基础设施

范围 描述
CI-automated 通过Actions持续验证的测试
代码检查 强制执行良好的实践、格式化等,参见 .pre-commit-config.yaml
一致性 在YAML文件上强制执行规则,确保测试的存在等
Doctests 在类/函数级别测试简单的用例,并提供示例
单元测试 针对特定组件的测试。比doctests更深入的测试
集成测试 在大规模上进行回归测试(例如,迷你食谱)
半手动 由您或核心团队以不同频率手动运行的测试
URL checks 检查文档、代码和教程中的死链接
Recipe tests 在样本数据上测试所有配方的模型训练 .csv
HuggingFace checks 检查HF上的已知模型是否似乎执行良好