当前位置: 首页 > article >正文

transformers蒸馏版本对话小模型

Facebook/blenderbot-400M-distill

  • 链接: https://huggingface.co/facebook/blenderbot-400M-distill
  • 参数规模: 虽然名称中有 400M,但这是一个蒸馏版本,其原始模型参数量接近 2B,蒸馏后的模型更适合在资源受限的设备上运行,保持了对话能力。
  • 特点:
    • BlenderBot 系列模型是 Meta (Facebook) 开源的对话模型,在多轮对话方面表现出色。
    • 这是一个蒸馏版本,模型体积小,推理速度快。
    • 专注于对话任务,具有较强的对话生成能力。
    • 支持多种对话技能,如情感表达、知识检索等。
    • 支持英语。
  • 适用场景: 适合对话系统、聊天机器人、客服机器人等。显存要求不高,基本上有显卡都能跑。

如何使用 (基于 transformers 库):

from transformers import AutoModelForSeq2SeqLM, AutoTokenizer, AutoModelForCausalLM
import torch

# 模型名称
model_name = "blenderbot-400M-distill"

# 加载分词器
tokenizer = AutoTokenizer.from_pretrained(model_name)

# 加载模型
model = AutoModelForSeq2SeqLM.from_pretrained(model_name)

# 移动模型到设备
device = "cuda" if torch.cuda.is_available() else "cpu"
model = model.to(device)

# 输入对话
conversation = [
    "Who are you?",
    "How are you?",
]

# 处理对话输入
inputs = tokenizer(conversation, return_tensors="pt", padding=True).to(device)

# 生成回复
outputs = model.generate(**inputs, max_new_tokens=50)
reply0 = tokenizer.decode(outputs[0], skip_special_tokens=True)
reply1 = tokenizer.decode(outputs[1], skip_special_tokens=True)

print("Reply0:", reply0)
print("Reply1:", reply1)

使用结果


http://www.kler.cn/a/471466.html

相关文章:

  • Kafka如何实现顺序消费?
  • 【竞技宝】CS2:HLTV2024职业选手排名TOP8-broky
  • vue3中el-table实现多表头并表格合并行或列
  • 人工智能训练师一级(高级技师)、二级(技师)考试指南
  • javaEE-网络原理-1初识
  • 【C++】线程启动、结束与创建线程写法
  • Redis源码阅读-源码阅读方式
  • 基于Django的农业管理系统
  • linux redis7.2.1安装,版本更新
  • kafka生产者专题(原理+拦截器+序列化+分区+数据可靠+数据去重+事务)
  • NLP 复习大纲
  • 华为云服务器一键安装鼎信通达云管系统(详细)
  • HNU人工智能期末复习知识点整理
  • AI赋能金融服务:效率与安全的新高度
  • kvm虚拟机网络桥接和读取ip
  • Conmi的正确答案——Cordova使用“src-cordova/config.xml”编辑“Android平台”的“uses-permission”
  • CNN-BiLSTM-Attention模型详解及应用分析
  • dubbo3 使用注册中心 nacos
  • 网络安全|应急响应沟通准备与技术梳理(Windows篇)
  • Spring Boot整合Minio实现文件上传
  • 设计模式从入门到精通之(三)单例模式
  • mindspore更新set_context()为set_device()
  • 复制粘贴到可见单元格,并且带有原格式-Excel易用宝
  • 无人机+Ai应用场景!
  • 【C++】线程启动、结束与创建线程写法
  • 标准库简介 - STL容器、算法简介