Huggingface变形金刚提供了一个用于在Squad数据集上进行问题解答调优的管道。
要为提出问题的管道开发管道,我需要做什么?这将使用上下文,问题和答案来生成带有上下文答案的问题。有没有创建新的饥饿面管道的示例?
答案 0 :(得分:0)
管道可以简单地视为预训练模型的包装。在这种情况下,您可以采用与现有示例脚本(例如run_squad
)相同的方式执行微调/预训练。当然可以
HuggingFace website(在此处稍作修改)给出了有关如何加载自定义检查点模型的示例:
<script>
var idToken;
(function () {
var firebaseConfig = {
//content is present
};
firebase.initializeApp(firebaseConfig);
firebase.auth().onAuthStateChanged(function (user) {
if (user) {
console.log(user);
console.log(firebase.auth().user);
user.getIdToken().then(function (idToken) {
console.log(idToken); // It shows the Firebase token now
});
}
});
}());
function signin() {
var email = "email@em.com";
var password = "password";
firebase.auth().signInWithEmailAndPassword(email, password).then(function (fbuser) {
console.log("Success");
idToken = fbuser.getIdToken();
}).catch(function (error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// ...
});
}
</script>
如果您的管道与现有选项有所不同,以至于您确实需要实现新的管道类,那么我建议您看一下respective implementation。具体而言,大多数模型只不过是将标记化步骤巧妙地包装在预先训练的模型上,并在from transformers import pipeline
# Question answering pipeline, specifying the checkpoint identifier
pipeline('question-answering', model='distilbert-base-cased-distilled-squad', tokenizer='bert-base-cased')
函数上调用正确的参数,因此“仅此而已”。由于该功能仍相对较新,因此这可能与您当前(2.8版)所提供的示例一样简洁。
我希望所有的提示都能帮助您入门!