Hub documentation

使用 SetFit 与 Hugging Face

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

使用 SetFit 与 Hugging Face

SetFit 是一个高效且无需提示(prompt-free)的框架,用于对 Sentence Transformers 进行少样本微调。它仅需少量标注数据即可实现高精度——例如,在 Customer Reviews 情感数据集上,每类仅使用 8 个标注样本,SetFit 的表现可与在包含 3k 个样本的完整训练集上微调 RoBERTa Large 相媲美 🤯!

与其他少样本学习方法相比,SetFit 具有几个独特的特点:

  • 🗣 无需提示词或 verbalizer: 当前用于少样本微调的技术需要手工设计的提示词或 verbalizer,将示例转换为适合底层语言模型的格式。SetFit 通过直接从文本示例生成丰富的嵌入,完全摒弃了提示词。
  • 🏎 训练速度快:SetFit 无需使用 T0 或 GPT-3 这样的大规模模型即可实现高精度。因此,其训练和推理速度通常快一个数量级(甚至更多)。
  • 🌎 多语言支持:SetFit 可以使用 Hub 上的任意 Sentence Transformer,这意味着你只需微调一个多语言检查点,即可对多种语言的文本进行分类。

在 Hub 上探索 SetFit

您可以在模型页面左侧进行筛选,以查找 SetFit 模型。

Hub 上的所有模型都具备以下实用功能:

  1. 自动生成的模型卡片,包含简要描述。
  2. 一个交互式小部件,可直接在浏览器中操作该模型。
  3. 一个推理提供商小部件,允许您发起推理请求。

安装

要开始使用,您可以按照SetFit 安装指南进行操作。您也可以通过 pip 使用以下单行命令进行安装:

pip install -U setfit

使用现有模型

所有 setfit 模型都可以轻松地从 Hub 加载。

from setfit import SetFitModel

model = SetFitModel.from_pretrained("tomaarsen/setfit-paraphrase-mpnet-base-v2-sst2-8-shot")

加载完成后,您可以使用 SetFitModel.predict 执行推理。

model.predict("Amelia Earhart flew her single engine Lockheed Vega 5B across the Atlantic to Paris.")
['positive', 'negative']

如果您想加载特定的 SetFit 模型,可以单击 Use in SetFit,即可获得可用的代码片段!

其他资源

Update on GitHub