HuggingFace镜像/blenderbot_small-90M
模型介绍文件和版本分析
下载使用量0

模型说明

  • 论文:Recipes for building an open-domain chatbot
  • 原始 PARLAI 代码

摘要

构建开放域聊天机器人是机器学习研究中的一个具有挑战性的领域。虽然先前的研究表明,在参数数量和训练数据规模上扩展神经模型可以带来更好的结果,但我们发现,其他因素对于高性能聊天机器人也至关重要。良好的对话需要多种技能,一位专业的对话者能将这些技能无缝融合:提供引人入胜的话题并倾听对方,既能提问也能回答问题,并根据具体情况恰当地展现知识、同理心和个性。我们证明,当提供适当的训练数据和生成策略选择时,大规模模型能够学习这些技能。我们构建了具有 9000 万、27 亿和 94 亿参数的神经模型的这些方案变体,并公开了我们的模型和代码。人类评估表明,我们的最佳模型在多轮对话的趣味性和类人性指标方面优于现有方法。然后,我们通过分析模型的失败案例来讨论这项工作的局限性。

如何使用

import argparse
import torch
from openmind import pipeline, is_torch_npu_available

def parse_args():
    parser = argparse.ArgumentParser()
    parser.add_argument("--model_name_or_path", type=str, help="Path to model", default=None)
    args = parser.parse_args()
    return args

if __name__ == '__main__':
    args = parse_args()

    if is_torch_npu_available():
        device = "npu:0"
    else:
        device = "cpu"
   
    print("device",device)
    model_path = args.model_name_or_path
    print("Model path is:", model_path)

    try:
        generator = pipeline('text-generation', model=model_path, device=device)
        print("Generator initialized successfully")
    except Exception as e:
        print(f"Error initializing generator: {e}")
    
    try:
        output = generator("Hello, I'm a language model,", max_length=30, num_return_sequences=5, num_beams=5, truncation=True)
        print("Run successful. Generated outputs:")
        for idx, sequence in enumerate(output):
            print(f"Generated sequence {idx + 1}: {sequence['generated_text']}")
    except Exception as e:
        print(f"Error during generation: {e}")