音频 Transformers 课程
本仓库包含用于创建 Hugging Face 音频 Transformers 课程 的内容。 该课程教你如何将 Transformers 应用于音频和语音处理的各种任务。它完全免费且开源!
🌎 语言和翻译
语言 | 源代码 | 作者 |
---|---|---|
孟加拉语 | chapters/bn | |
英语 | chapters/en | |
西班牙语 | chapters/es | |
法语 | chapters/fr | |
韩语 | chapters/ko | |
俄语 | chapters/ru | @blademoon, @Lightmourne |
土耳其语 | chapters/tr | |
中文(简体) | chapters/zh-CN |
将课程翻译成你的语言
作为我们让机器学习民主化使命的一部分,我们希望这门课程能够提供更多语言版本! 如果你想帮助将课程翻译成你的语言,请按照以下步骤操作🙏。
🗞️ 提出问题
首先,前往本仓库的 Issues 页面,查看是否有人已经为你的语言开启了一个 issue。如果没有,点击 New issue 按钮,选择 Translation template 来创建一个新的 issue。
一旦创建了 issue,请在评论中说明你想负责哪些章节的翻译工作,我们会将你的名字添加到列表中。
🗣 加入我们的 Discord
由于通过 GitHub issues 很难快速讨论翻译细节,我们在 Discord 服务器上为每种语言创建了专门的频道。点击这里加入 👉:http://hf.co/join/discord
🍴 复刻仓库
接下来,你需要 复刻这个仓库。你可以通过点击本仓库页面右上角的 Fork 按钮来完成这一步。
复刻仓库后,你需要将文件克隆到本地机器上进行编辑。你可以使用 Git 通过以下命令克隆复刻:
git clone https://github.com/YOUR-USERNAME/audio-transformers-course
📋 复制英文文件并使用新的语言代码
课程文件组织在一个主目录下:
chapters
:与课程相关的所有文本和代码片段。
你只需要复制 chapters/en
目录中的文件,所以首先进入你复刻的仓库,然后运行以下命令:
cd ~/path/to/audio-transformers-course
cp -r chapters/en/CHAPTER-NUMBER chapters/LANG-ID/CHAPTER-NUMBER
这里的CHAPTER-NUMBER
指你想要处理的章节,而LANG-ID
应该是ISO 639-1(两个小写字母)语言代码——可以在这里查看一个方便的表格。
或者,也支持{两个小写字母}-{两个大写字母}的格式,例如zh-CN
,这里有一个示例。
✍️ 开始翻译
现在开始有趣的部分——翻译文本!我们首先建议翻译_toctree.yml
文件中对应你的章节的部分。这个文件用于在网站上渲染目录并提供Colab笔记本的链接。你只应该更改title
字段——例如,这里是我们为NLP课程的第0章翻译的_toctree.yml
部分:
- title: 0. 设置 # 翻译这里!
sections:
- local: chapter0/1 # 不要改变这里!
title: 简介 # 翻译这里!
🚨 确保
_toctree.yml
文件只包含已翻译的部分!否则你将无法在网站上或本地构建内容(见下文如何操作)。
一旦你翻译了_toctree.yml
文件,你就可以开始翻译与你的章节相关的MDX文件了。
🙋 如果你的语言还没有
_toctree.yml
文件,你可以简单地通过复制粘贴英文版本并删除与你的章节无关的部分来创建一个。只要确保它存在于chapters/LANG-ID/
目录中即可!
👷♂️ 在本地构建课程
一旦你对你的修改感到满意,你可以通过首先安装我们用于构建Hugging Face所有文档的doc-builder
工具来预览它们的效果:
python -m pip install hf-doc-builder
doc-builder preview audio-transformers-course ../audio-transformers-course/chapters/LANG-ID --not_python_module
这将在http://localhost:3000/上构建和渲染课程。尽管内容在Hugging Face网站上看起来更好,但这一步仍然可以让你检查所有内容是否格式正确。
🚀 提交拉取请求
如果翻译在本地看起来不错,最后一步是准备内容以提交拉取请求。在这里,首先要检查文件格式是否正确。为此,你可以运行:
pip install -r requirements.txt
make style
运行完毕后,提交所有更改,打开一个拉取请求,然后等待审核。恭喜,你现在完成了你的第一个翻译🥳!
🚨 要在网站上构建课程,请再次检查你的语言代码是否存在于
.github
文件夹中的build_documentation.yml
和build_pr_documentation.yml
文件的languages
字段中。如果没有,只需按字母顺序添加它们。
📔 Jupyter笔记本
包含课程所有代码的Jupyter笔记本托管在huggingface/notebooks
仓库中。如果你希望在本地生成它们,首先安装所需的依赖项:
python -m pip install -r requirements.txt
然后运行以下脚本:
python utils/generate_notebooks.py --output_dir nbs
这个脚本从各章节中提取所有代码片段,并将它们作为笔记本存储在nbs
文件夹中(默认情况下Git会忽略该文件夹)。
✍️ 贡献新章节
注意:我们目前不接受社区对新章节的贡献。这些说明是为Hugging Face作者准备的。
向课程添加新章节非常简单:
- 在
chapters/en/chapterX
下创建一个新目录,其中chapterX
是你想添加的章节。 - 为每个部分添加编号的MDX文件
sectionX.mdx
。 - 更新
_toctree.yml
文件以包含你的章节部分——这些信息将在网站上渲染目录。如果你的部分涉及transformers
的PyTorch和TensorFlow API,确保在colab
字段中包含两个Colab的链接。
如果你遇到困难,可以查看一下现有的章节——这通常会向你展示预期的语法。
一旦你对内容感到满意,打开一个拉取请求并等待审核。我们建议将第一章草稿作为单个拉取请求添加——然后团队将在内部提供反馈以迭代内容🤗!
🙌 致谢
这个仓库和README的结构受到了出色的使用spaCy进行高级自然语言处理课程的启发。