Zephyr-7B-β :类GPT的高速推理LLM

news2024/11/30 14:51:54

Zephyr 是一系列语言模型,经过训练可以充当有用的助手。 Zephyr-7B-β 是该系列中的第二个模型,是 Mistralai/Mistral-7B-v0.1 的微调版本,使用直接偏好优化 (DPO) 在公开可用的合成数据集上进行训练 。 我们发现,删除这些数据集的内置对齐可以提高 MT Bench 的性能,并使模型更加有用。 然而,这意味着该模型在提示时可能会生成有问题的文本,并且只能用于教育和研究目的。 你可以在技术报告中找到更多详细信息。
在这里插入图片描述

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 3D场景编辑器

1、Zephyr-7B-β 模型说明

  • 模型类型:7B 参数类似 GPT 的模型,在公开可用的合成数据集上进行微调。
  • 语言 (NLP):主要是英语
  • 许可证:MIT
  • 微调原模型:mistralai/Mistral-7B-v0.1

模型源码如下:

  • 存储库:github
  • 演示:zephyr-chat
  • Chatbot竞赛:在 LMSYS 竞技场中针对 10 多个 LLM 评估 Zephyr 7B

2、Zephyr-7B-β 性能

在发布时,Zephyr-7B-β 是 MT-Bench 和 AlpacaEval 基准上排名最高的 7B 聊天模型

模型大小对齐MT-Bench(分数)AlpacaEval(胜率 %)
StableLM-Tuned-α7BdSFT2.75-
MPT-Chat7BdSFT5.42-
Xwin-LMv0.17BdPPO6.1987.83
Mistra-Instructv0.17B-6.84-
Zephyr-7b-α7BdDPO6.88-
Zephyr-7b-β 🪁7BdDPO7.3490.60
Falcon-Instruct40BdSFT5.1745.71
Guanaco65BSFT6.4171.80
Llama2-Chat70BRLHF6.8692.66
Vicuna v1.333BdSFT7.1288.99
WizardLM v1.070BdSFT7.71-
Xwin-LM v0.170BdPPO-95.57
GPT-3.5-turbo-RLHF7.9489.37
Claude 2-RLHF8.0691.36
GPT-4-RLHF8.9995.28

特别是,在 MT-Bench 的多个类别上,与 Llama2-Chat-70B 等较大的开放模型相比,Zephyr-7B-β 具有较强的性能:
在这里插入图片描述

然而,在编码和数学等更复杂的任务上,Zephyr-7B-β 落后于专有模型,需要更多的研究来缩小差距。

3、Zephyr-7B-β 预期用途和限制

该模型最初是在经过过滤和预处理的 UltraChat 数据集上进行微调的,该数据集包含 ChatGPT 生成的各种合成对话。 然后,我们在 openbmb/UltraFeedback 数据集上进一步将模型与 🤗 TRL 的 DPOTrainer 对齐,该数据集包含按 GPT-4 排名的 64k 提示和模型完成情况。 因此,该模型可以用于聊天,你可以查看我们的演示来测试其功能。

可以在此处找到用于训练 Zephyr-7B-β 的数据集

以下是使用 🤗 Transformers 中的 pipeline() 函数运行模型的方法:

# Install transformers from source - only needed for versions <= v4.34
# pip install git+https://github.com/huggingface/transformers.git
# pip install accelerate

import torch
from transformers import pipeline

pipe = pipeline("text-generation", model="HuggingFaceH4/zephyr-7b-beta", torch_dtype=torch.bfloat16, device_map="auto")

# We use the tokenizer's chat template to format each message - see https://huggingface.co/docs/transformers/main/en/chat_templating
messages = [
    {
        "role": "system",
        "content": "You are a friendly chatbot who always responds in the style of a pirate",
    },
    {"role": "user", "content": "How many helicopters can a human eat in one sitting?"},
]
prompt = pipe.tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
outputs = pipe(prompt, max_new_tokens=256, do_sample=True, temperature=0.7, top_k=50, top_p=0.95)
print(outputs[0]["generated_text"])
# <|system|>
# You are a friendly chatbot who always responds in the style of a pirate.</s>
# <|user|>
# How many helicopters can a human eat in one sitting?</s>
# <|assistant|>
# Ah, me hearty matey! But yer question be a puzzler! A human cannot eat a helicopter in one sitting, as helicopters are not edible. They be made of metal, plastic, and other materials, not food!

4、Zephry-7B-β 的偏见、风险和局限性

Zephyr-7B-β 尚未通过 RLHF 等技术与人类偏好保持一致,也未通过 ChatGPT 等响应的循环过滤进行部署,因此该模型可能会产生有问题的输出(尤其是在提示时)。 目前还不清楚用于训练基本模型 (mistralai/Mistral-7B-v0.1) 的语料库的大小和组成,但它很可能包含 Web 数据和书籍和代码等技术资源的组合 。 有关示例,请参阅 Falcon 180B 模型卡。


原文链接:Zephyr-7B-β — BimAnt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1165764.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GD32 单片机 硬件I2C死锁解决方法

死锁的复现方式 在I2C恢复函数下个断点&#xff08;检测到I2C多次超时之后&#xff0c;应该能跳转到I2C恢复函数&#xff09;使用镊子&#xff0c;将SCL与SDA短接&#xff0c;很快就能看到程序停到恢复函数的断点上&#xff0c;此时再执行恢复函数&#xff0c;看能否正常走出&…

Redis系列之Redis入门级(带你初步认识Redis)

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是君易--鑨&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的博客专栏《LInux实战开发》。&#x1f3af;&#x1f3af; …

物联网云端管理软件 IoTstar 3.5.1

IoTstar 是为各种工业物联网应用中的WISE/PMC/PMD 控制器开发的软件。IoTstar可以安装在通用PC平台上作为私有物联网云系统&#xff0c;也可以安装在Microsoft Azure、IBM Bluemix、Google Cloud或Amazon AWS等VM&#xff08;虚拟机&#xff09;平台上作为公共物联网云系统。 I…

Pymysql模块使用操作

一、pymysql模块安装 二、测试数据库连接 测试数据库连接.py from pymysql import Connectioncon None try:# 创建数据库连接con Connection(host"localhost",port3306,user"root",password"XXXXX")# 测试链接print(con.get_host_info())print…

面试10000次依然会问的【volatile】,你还不会?

volatile关键字的定义 volatile是Java语言提供的一种轻量级的同步机制&#xff0c;主要用于确保变量的修改对其他线程是立即可见的&#xff0c;以及防止指令重排序。使用volatile修饰的变量&#xff0c;其读写操作直接作用于主存&#xff0c;而不是线程的工作内存。 这意味着…

ubuntu 20.04 + cuda-11.8 + cudnn-8.6+TensorRT-8.6

1、装显卡驱动 ubuntu20.04 cuda10.0 cudnn7.6.4_我是谁&#xff1f;&#xff1f;的博客-CSDN博客 查看支持的驱动版本&#xff1a; 查看本机显卡能够配置的驱动信息 luhost:/usr/local$ ubuntu-drivers devices/sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 moda…

2023-11-03 LeetCode每日一题(填充每个节点的下一个右侧节点指针 II)

2023-11-03每日一题 一、题目编号 117. 填充每个节点的下一个右侧节点指针 II二、题目链接 点击跳转到题目位置 三、题目描述 给定一个二叉树&#xff1a; struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next 指针&#xff0c;让这个指针…

Windows 11 Home 中启用 Hyper-V

Hyper-V 是微软开发的基于硬件的虚拟机管理程序。它允许用户在 Windows 操作系统之上运行不同操作系统的多个实例。目前&#xff0c;Hyper-V 也支持 Windows、Ubuntu 和其他 Linux 发行版。 如果发现像我这样电脑上启用Hyper-V选项可以按照以下步骤进行操作。 一、新建一个txt…

接上回,如何用 LlamaIndex 搭建聊天机器人?

LlamaIndex 是领先的开源数据检索框架&#xff0c;能够在各种应用中发挥优势&#xff0c;其中一个典型的应用就是在企业内部搭建聊天机器人。 对于企业而言&#xff0c;随着文档数量不断增多&#xff0c;文档管理会变得愈发困难。因此&#xff0c;许多企业会基于内部知识库搭建…

企业办公为什么要选择局域网im即时通讯软件

办公沟通对于企业来说至关重要&#xff0c;而选择局域网IM即时通讯软件作为沟通工具&#xff0c;有以下几个重要原因&#xff1a; 安全性保障&#xff1a;使用局域网IM即时通讯软件&#xff0c;所有的通信数据都在企业内部网络中传输&#xff0c;不会经过公共互联网。这极大地…

C代码内存区域划分

C代码内存区域划分 1、初始化不为零的&#xff08;全局变量、静态全局变量和静态局部变量&#xff09;放在.data段 2、初始化为0&#xff0c;和未初始化的&#xff08;全局变量、静态全局变量和静态局部变量&#xff09;放在.bss 3、编译阶段未初始化的全局变量放在COM块&…

win10、win11解决应用商店、xbox错误代码0x80072efd、0x80131505的方法

文章目录 问题解决方法win10修改方法找到网络和共享中心找到Internet属性点击局域网设置解决后效果 win11的解决方法打开Internet选项找到局域网设置局域网设置 问题 在window上使用win10或者win11自带的系统时&#xff0c;应用商店、xbox报错错误代码0x80072efd、0x80131505。…

【Synopsys工具使用】VCS使用与Makefile脚本调用

文章目录 一、文件导入二、VCS仿真&#xff08;使用可视化界面&#xff09;三、VCS仿真&#xff08;使用Maefile文件&#xff09;3.1 Makefile文件编写3.2 仿真文件编写规范3.3 Makefile文件使用 一、文件导入 新建一个文件夹新建一个文件夹(图中IC_work)   创建一个目录&…

【考研数学】概率论与数理统计 —— 第八章 | 假设检验

文章目录 一、基本概念与原理1. 假设检验2. 两类错误3. 小概率原理与显著性水平 二、假设检验的基本步骤三、一个正态总体均值和方差的假设检验四、两个正态总体的假设检验写在最后 一、基本概念与原理 1. 假设检验 设总体分布已知&#xff0c;但含有未知参数&#xff0c;对总…

学PYTHON必须学算法吗?老程序员告诉你真相!

Python是一种非常流行的编程语言&#xff0c;广泛应用于数据科学、人工智能、Web开发、自动化、脚本编程等各种领域。对于很多Python开发工作&#xff0c;尤其是与应用开发、数据分析和Web开发相关的职位&#xff0c;算法并不是绝对必须的技能。 然而&#xff0c;在某些领域和职…

通过 Hilbert 变换实现单边带调制

目录 简介 双边带调制 单边带调制 理想的 Hilbert 变换 频谱移位器 SSB 调制的高效实现 总结 该例子说明如何使用离散 Hilbert 变换来实现单边带调制。Hilbert 变换可应用于调制器和解调器、语音处理、医学成像、波达方向 (DOA) 测量&#xff0c;以及任何简化设计的复信…

“Redis在分布式系统中的应用与优化“

文章目录 引言一、Redis的简介1. Redis的基本概念2. Redis在分布式系统中的优势 二、Windows、CentOS安装RedisCentOS安装RedisWindows安装Redis 三、Redis的常用命令总结 引言 在当今互联网时代&#xff0c;随着数据量的不断增长和用户访问量的激增&#xff0c;分布式系统的应…

将一个Series序列转化为数据框Dataframe格式Series.to_frame()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 将一个Series序列 转化为Dataframe格式 Series.to_frame() [太阳]选择题 关于以下代码的说法中正确的是? import pandas as pd s pd.Series([1,2],name"myValue") print("【显…

【QT】如何理解Widget::Widget(QWidget *parent) :QWidget(parent)

‪qwidget.cpp所在路径&#xff1a;D:\Qt\Qt5.9.9\5.9.9\Src\qtbase\src\widgets\kernel\qwidget.cpp 本文重点&#xff1a;如何理解下面这段代码? 一、类的继承和派生 widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget>class Widget : public QWidget {…

【PID专题】控制算法PID之微分控制(D)的原理和示例代码

微分&#xff08;D&#xff09;项是PID控制器的一个组成部分&#xff0c;它对系统的控制输出做出反应&#xff0c;以减小系统的过度调节和减小响应的快速变化。微分项的作用是在控制系统中引入一个滞后效应&#xff0c;以帮助系统平稳响应。 以下是微分&#xff08;D&#xff0…