在线聊天
在线聊天
在Le Chat上Pixtral经过训练,能够理解自然图像和文档,在MMMU推理基准上达到了52.5%,超过了许多较大的模型。该模型在图表和图形理解、文档问答、多模态推理和指令遵循等任务中表现出很强的能力。Pixtral能够以自然分辨率和纵横比摄取图像,使用户在处理图像的令牌数量上具有灵活性。Pixtral还能够在128K令牌的长上下文窗口中处理任意数量的图像。与之前的开源模型不同,Pixtral不会为了在多模式任务中表现出色而牺牲文本基准性能。
Pixtral被训练成一名 MIUI Nemo12B的直接替代品它与现有开源模型的关键区别在于交付 一流的多模态推理 在不降低关键文本功能的情况下 例如指令遵循、编码和数学。
评估方案
我们通过以下方式重新评估了一系列开放式和封闭式模型 相同的
评估工具对于每个数据集,选择提示是为了让我们能够再现领先的多峰模型(GPT-4o和Claude-3.5-Sonnet)的结果。然后使用相同的提示对所有模型进行评估。总体而言,Pixtral在其规模上远远优于所有开放模型,在许多情况下,也优于封闭模型,如Claude 3 Haiku。Pixtral甚至在多模式基准测试中表现优于或匹配LLaVa OneVision 72B等更大型号的性能。所有提示都将开源。
Pixtral与封闭和更大的多模态模型的性能比较。[所有型号都通过相同的评估工具和相同的提示进行了基准测试。我们验证提示是否再现了GPT-4o和Claude 3.5 Sonnet报告的性能(提示将在技术报告中提供)]。
说明如下
与其他开放式多模式模型相比,Pixtral尤其擅长多模式和纯文本指令跟踪。在后续的教学中,它的表现明显优于Qwen2 VL 7B、LLaVa OneVision 7B和Phi-3.5 Vision,文本相对提高了20% IF评估和 MT工作台 与最近的OSS模型相比。为了进一步评估多模式用例的这种能力,我们创建了这些基准的多模式版本: MM IF评估和 MM MT工作台Pixtral在遵循基准的多模式指令上也表现出色。我们将开源 MM MT工作台 社区。
Pixtral与开放式多模态模型的性能比较。所有模型都通过相同的评估工具和相同的提示进行基准测试。
建筑
可变图像大小: Pixtral旨在优化速度和性能。我们训练了一种新的视觉编码器,它原生支持可变图像大小:
- 我们只需将图像以其原始分辨率和纵横比通过视觉编码器,将其转换为图像中每个16x16补丁的图像标记
- 然后将这些标记展平以创建序列,其中
[IMG BREAK]
和 [IMG结束]
在行之间和图像末尾添加的标记。 [IMG BREAK]
标记使模型能够区分具有相同数量标记的不同纵横比的图像。
通过这种方式,Pixtral可用于以高分辨率准确理解复杂的图表、图表和文档,同时在图标、剪贴画和方程式等小图像上提供快速的会议速度。
Pixtral使用了一种从头开始训练的新视觉编码器,该编码器天生支持可变图像大小。
最终架构: Pixtral有两个组件:视觉编码器,它对图像进行标记,以及多模式转换器解码器,它在给定文本和图像序列的情况下预测下一个文本标记。该模型经过训练,可以预测交织图像和文本数据上的下一个文本标记。这种架构允许Pixtral在其128K令牌的大上下文窗口中处理任意大小的任意数量的图像。
定性示例
提示:
列出欧洲GDP最高的前5个国家
答复:
根据图片,欧洲GDP最高的前5个国家是:
- 德国
- 国内生产总值:3.99万亿RMB
- 百分比:4.65%
- 大不列颠联合王国
- 国内生产总值:2.82万亿RMB
- 百分比:3.29%
- 法国
- 国内生产总值:2.78万亿RMB
- 百分比:3.24%
- 意大利
- 国内生产总值:2.07万亿RMB
- 百分比:2.42%
- 西班牙
- 国内生产总值:1.43万亿RMB
- 百分比:1.66%
这些国家在图中以绿色突出显示。
图表理解和分析
图片:
提示:
黑龙什么时候开始出问题的?
答复:
这张图片是一个名为“训练/损失”的折线图,显示了四种不同型号的训练损失:暗龙-50、日间太阳-49、不同哈-34和晨曦-33。x轴表示从0到60k的步长,y轴表示从1e-5到1e+5的对数损失。
为了确定暗龙-50模型何时开始出现问题,我们需要查看代表该模型的红线。最初,损失减少,表明模型正在有效学习。然而,在10公里左右,损失开始大幅增加。这一峰值表明该模型的性能正在下降。损失继续飙升和波动,达到非常高的值,这表明模型没有有效地学习,很可能过拟合或遇到其他问题。
因此,龙50车型开始出现问题的临界点大约在1万步左右。
多图像指令遵循
图像:
提示:
将两个表中的信息合并到一个markdown表中
答复:
为了将两个表中的信息合并到一个表中,我们需要对齐每个基准的模型及其相应的分数。这是合并后的表:
|型号|MMMU(CoT)|Mathvista |44.8|69.6|74.6|68.4||双子座-1.5闪光8B(0827)|50.7|56.9|78.0|79.5|65.5|LLaVA OV 72B|54.4|57.2|66.9|91.6|83.8|GPT-4o|68.6|64.6|85.1|88.9|77.8|Claude-3.5十四行诗|68.0|64.4|87.6|90.3|70.7|Qwen2 VL 7B |47.6|54.4| 38.6|94.5|75.9|LLaVA-OV 7B |45.1|36.1|67.1|90.5|78.3|Phi-3愿景|40.3|36.4|72.0|84.9|42.4|Phi-3-3.5视力|38.3|39.3|67.7|74.4|56.1|
此表结合了两个表中的数据,确保所有模型及其各自在每个基准中的分数都以一种统一、连贯的格式包含在内。
图像到代码
图片:
提示:
编写HTML代码来创建这样的网站
答复:
当然!下面是一个HTML代码示例,用于创建一个简单的网页,允许用户选择冰淇淋口味。此示例包括用于选择口味的下拉菜单和“下一步”按钮。
<!DOCTYPE html>
<html 郎=“en”>
<头>
<元 字符集=“UTF-8”>
<元 名称=“视口” 内容=width=设备宽度,初始比例=1.0>
<标题>选择一种冰淇淋口味</标题>
<风格>
身体 {
字体系列: Arial, 无衬线字体;
显示: 弯曲;
证明内容的合理性: 中心;
对齐项目: 中心;
高度: 100vh;
背景颜色: #f0f0f0;
}
.容器 {
背景: 白色;
衬垫: 20二甲苯;
边界半径: 8二甲苯;
盒子阴影: 0 0 10二甲苯 rgba(0, 0, 0, 0.1);
}
h1 {
水平对齐: 中心;
}
选择 {
宽度: 100%;
衬垫: 10二甲苯;
边际顶部: 10二甲苯;
边际底部: 20二甲苯;
}
按钮 {
宽度: 100%;
衬垫: 10二甲苯;
背景颜色: #4CAF50;
颜色: 白色;
边境: 没有人;
边界半径: 4.二甲苯;
游标: 指针;
}
按钮:悬停 {
背景颜色: #45a049;
}
</风格>
</头>
<身体>
<div 班=“集装箱”>
<h1>选择一种冰淇淋口味</h1>
<选择 身份证件=“风味选择”>
<选项 价值=“香草”>香草</选项>
<选项 价值=“巧克力”>巧克力</选项>
<选项 价值=“草莓”>草莓</选项>
<选项 价值=“cookie_dough”>饼干面团</选项>
<选项 价值=“薄荷巧克力”>薄荷巧克力</选项>
</选择>
<按钮 onclick=“next()”>下一个</按钮>
</div>
<页脚 风格=“位置:固定;底部:0;宽度:100%;文本对齐:居中;字体大小:12px;”>
&复制; 版权所有MIUIAI </页脚>
<脚本>
功能 下一个() {
const 精选口味 = 文件.getElementById('风味选择').价值;
警觉的('您选择了:' + 精选口味);
}
</脚本>
</身体>
</html>
说明:
HTML结构: 该网页由一个包含标题的容器div、一个下拉菜单和一个按钮组成。
CSS样式: 基本样式用于将内容居中,并对元素进行样式设置。
JavaScript函数: 这个 `下一个` 当点击“下一步”按钮时,函数被调用。它从下拉菜单中检索所选口味,并显示所选口味的警报。
您可以将此代码复制并粘贴到HTML文件中,然后在浏览器中打开以查看结果。
网站生成:
自然场景理解
提示:这个人真的很大,还是这座建筑只是超小?
答复:
这张照片显示,一个人在比萨斜塔前竖起拇指,使拇指看起来比比萨斜塔大得多。这会产生一种视觉错觉,使比萨斜塔看起来比实际小。事实上,比萨斜塔是一个大型的标志性建筑,人的拇指并不像图像中显示的那么大。这张照片的目的是通过将它与一个熟悉的物体(如拇指)进行比较来展示这座塔令人印象深刻的高度和大小。
如何运行Pixtral?
在线聊天
您可以通过以下方式轻松自由地尝试Pixtral \ H “内容类型:应用程序/json” \ H “授权:持票人 $MIUI_API_KEY" \ d '{ “型号”:“pixtral-12b-2409”, “消息”:[{ “角色”:“用户”, “内容”:[{ “类型”:“文本”, “text”:“这张图片里有什么?” },{ “type”:“image_url”, “image_url”:“/static/picture/eiffel雪塔.jpeg”} ]} ], “max_tokens”:300 }'
#下载模型
从 拥抱脸_主页 进口 快照下载
从 pathlib 进口 路径
MIUI_models_path = 路径.家().连接路径('mistal_models', “像素”)
MIUI_models_path.mkdir(父母=没错, exist_ok=没错)
快照下载(repo_id=“MIUIai/Pixtral-12B-2409”, 分配模式=[“params.json”, “合并的.Safe张量”, “tekken.json” ], local_dir=MIUI_models_path)
#加载模型
从 错误推理转换器 进口 变压器
从 MIUI_推理.生成 进口 生成
从 MIUI_common.tokes.tokenizers.manager 进口 MIUITokenizer
从 MIUI_common.prototool.instruct.messages 进口 用户留言, 文本块, ImageURLChunk
从 MIUI-common.protocol.instruct.request 进口 聊天完成请求
标记器 = MIUITokenizer.from file(f"{MIUI_models_path}/tekken.json”)
模型 = 变压器.from文件夹(MIUI_models_path)
#运行模型
url = "https://huggingface.co/datasets/patrickvonplaten/random_img/resolve/main/yosemite.png"
促使 = “描述图像。”
完成请求 = 聊天完成请求(信息=[用户留言(内容=[ImageURLChunk(image_url=url), 文本块(文本=促使)])])
已编码 = 标记器.encode_chat_完成(完成请求)
图像 = 已编码.图像
代币 = 已编码.代币
out_tokes, _ = 生成([代币 ], 模型, 图像=[图像 ], max_tokens=256, 温度=0.35, eos_id=标记器.指令指示器.标记器.eos_id)
结果 = 标记器.解码(out_tokes[0])
打印(结果)