AWS Trainium & Inferentia 文档

用于 Neuron 导出的配置类

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

用于 Neuron 导出的配置类

将 PyTorch 模型导出为 Neuron 编译模型需要指定

  1. 输入名称。
  2. 输出名称。
  3. 用于追踪模型的虚拟输入。Neuron 编译器需要它来记录计算图并将其转换为 TorchScript 模块。
  4. 用于控制硬件效率(延迟、吞吐量)和准确性之间权衡的编译参数。

根据模型和任务的选择,我们使用配置类来表示上述数据。每个配置类都与特定的模型架构相关联,并遵循命名约定 ArchitectureNameNeuronConfig。例如,指定 BERT 模型 Neuron 导出的配置是 BertNeuronConfig

由于许多架构的 Neuron 配置具有相似的属性,🤗 Optimum 采用了三级类层次结构

  1. 抽象和通用的基类。这些类处理所有基本功能,同时与模态(文本、图像、音频等)无关。
  2. 中端类。这些类了解模态,但根据它们支持的输入,同一模态可以存在多个中端类。它们指定应为虚拟输入使用哪个输入生成器,但仍然与模型无关。
  3. 特定于模型的类,如上面提到的 BertNeuronConfig。这些是实际用于导出模型的类。

支持的架构

架构 任务
ALBERT 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
BERT 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
CamemBERT 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
ConvBERT 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
DeBERTa (仅限 INF2) 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
DeBERTa-v2 (仅限 INF2) 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
DistilBERT 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
ELECTRA 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
FlauBERT 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
GPT2 文本生成
MobileBERT 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
MPNet 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
RoBERTa 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
RoFormer 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
XLM 特征提取、掩码填充、多项选择、问答、文本分类、词元分类
XLM-RoBERTa 特征提取、掩码填充、多项选择、问答、文本分类、词元分类

更多关于检查支持任务的详细信息,请点击此处

更多架构即将推出,敬请期待!🚀