🚀 SQuAD(QNLI)跨编码器
该模型使用 SentenceTransformers 的 Cross-Encoder 类进行训练,可用于文本排序任务,能有效判断给定问题是否可由段落回答。
🚀 快速开始
本模型使用 SentenceTransformers 的 Cross-Encoder 类进行训练,可用于文本排序任务。
✨ 主要特性
📦 安装指南
文档未提及安装步骤,跳过此章节。
💻 使用示例
基础用法
预训练模型可以按如下方式使用:
from sentence_transformers import CrossEncoder
model = CrossEncoder('cross-encoder/qnli-electra-base')
scores = model.predict([('Query1', 'Paragraph1'), ('Query2', 'Paragraph2')])
scores = model.predict([('How many people live in Berlin?', 'Berlin had a population of 3,520,031 registered inhabitants in an area of 891.82 square kilometers.'), ('What is the size of New York?', 'New York City is famous for the Metropolitan Museum of Art.')])
高级用法
你也可以直接使用 Transformers 库(不使用 SentenceTransformers 库)来使用该模型:
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
model = AutoModelForSequenceClassification.from_pretrained('cross-encoder/qnli-electra-base')
tokenizer = AutoTokenizer.from_pretrained('cross-encoder/qnli-electra-base')
features = tokenizer(['How many people live in Berlin?', 'What is the size of New York?'], ['Berlin had a population of 3,520,031 registered inhabitants in an area of 891.82 square kilometers.', 'New York City is famous for the Metropolitan Museum of Art.'], padding=True, truncation=True, return_tensors="pt")
model.eval()
with torch.no_grad():
scores = torch.nn.functional.sigmoid(model(**features).logits)
print(scores)
📚 详细文档
训练数据
给定一个问题和一个段落,该模型可以判断问题是否能由段落回答。模型在 GLUE QNLI 数据集上进行训练,该数据集将 SQuAD 数据集 转换为自然语言推理(NLI)任务。
性能
关于该模型的性能结果,请参阅 SBERT.net 预训练跨编码器。
🔧 技术细节
文档未提供具体技术细节,跳过此章节。
📄 许可证
本项目采用 Apache-2.0 许可证。
📋 模型信息
属性 |
详情 |
模型类型 |
用于 SQuAD(QNLI)的跨编码器 |
基础模型 |
google/electra-base-discriminator |
训练数据 |
GLUE QNLI 数据集,该数据集将 SQuAD 数据集转换为 NLI 任务 |
任务类型 |
文本排序 |
库名称 |
sentence-transformers |
标签 |
transformers |