此存储库不再积极维护,已被归档。对于正在开发的替代方案,请访问 swift-transformers!
Swift Core ML 实现的 Transformers:GPT-2、DistilGPT-2、BERT、DistilBERT,更多即将推出!
本存储库包含:
- 对于 BERT 和 DistilBERT:
- 在 SQuAD 数据集上进行问答微调的预训练 Google BERT 和 Hugging Face DistilBERT 模型。
- BERT 分词器(
BasicTokenizer
和WordpieceTokenizer
)的 Swift 实现以及 SQuAD 数据集解析工具。 - 一个简洁的问答演示应用。
- 对于 GPT-2 和 DistilGPT-2:
- 一个转换脚本,用于将 PyTorch 训练的 GPT-2 模型(参见我们的
transformers
存储库)转换为 CoreML 模型。 - GPT-2 生成模型本身,包括解码策略(目前实现了贪婪搜索和 TopK)以及 GPT-2 字节对编码器和解码器。
- 一个展示设备端文本生成的简洁演示应用。
- 一个转换脚本,用于将 PyTorch 训练的 GPT-2 模型(参见我们的
🦄 GPT-2 和 DistilGPT-2
在设备上释放 GPT-2 文本生成的全部力量!!
🐸 BERT 和 DistilBERT
BERTSQUADFP16
Core ML 模型由 Apple 打包,可在主要 ML 模型页面找到链接。它在 WWDC 2019 上作为 Core ML 3 发布的一部分进行了演示。
DistilBERT
Core ML 模型是使用本存储库中的脚本从 🤗/transformers
导出转换而来。
🦄 演示时间 🔥
Apple 在 WWDC 2019 上的演示
完整视频点击这里
BERT 架构(wwdc 幻灯片)
注意事项
我们使用 git-lfs
来存储大型模型文件,运行应用程序所需的某些文件需要安装它。
请查看安装页面了解如何安装 git-lfs