微软Phi-3,3.8亿参数能与Mixtral 8x7B和GPT-3.5相媲美,量化后还可直接在IPhone中运行

本文主要是介绍微软Phi-3,3.8亿参数能与Mixtral 8x7B和GPT-3.5相媲美,量化后还可直接在IPhone中运行,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Phi-3系列

Phi-3是一系列先进的语言模型,专注于在保持足够紧凑以便在移动设备上部署的同时,实现高性能。Phi-3系列包括不同大小的模型:

  1. Phi-3-mini(38亿参数) - 该模型在3.3万亿个令牌上进行训练,设计得足够小,可以在现代智能手机上运行。尽管体积紧凑,它的性能却可与更大的模型如Mixtral 8x7B和GPT-3.5相媲美,例如在MMLU基准测试中达到69%,在MT-bench上得分为8.38。
  2. Phi-3-small(70亿参数)Phi-3-medium(140亿参数) - 这些是Phi-3系列中较大的版本,在相同类型的数据上训练,但令牌数更多(4.8万亿),表现更佳。例如,Phi-3-small和Phi-3-medium在相同基准测试中的得分高于Phi-3-mini。

Phi-3模型的开发涉及使用经过严格过滤的网络数据和合成数据训练模型,使它们能够执行通常预期的大型模型任务。这种策略使Phi-3系列能够利用更小、更高效的模型,而不牺牲功能,使其能够直接在智能手机上运行。

Phi-3模型的重要性在于它们能够将强大的AI能力带到移动设备上,允许运行完全本地的强大AI应用,无需持续的互联网连接。这种进步可能导致广泛的设备上应用,增强用户隐私并减少AI驱动任务的延迟。

Phi-3训练方法

Phi-3模型的训练方法,尤其是Phi-3-mini,详细记录在技术报告中,包括几个旨在优化性能同时保持适合移动设备部署的紧凑模型大小的策略步骤。以下是Phi-3训练方法的关键元素:

  1. 数据选择和策展:Phi-3模型使用精心策划的数据集,包括经过严格过滤的网络数据和由大型语言模型(LLMs)生成的合成数据。这个数据集是Phi-2使用的数据的扩展版本,注重质量和相关性,以提高小型模型的学习效率。
  2. 数据最优化方案:与可能优先考虑计算最优或过度训练的传统方法不同,Phi-3训练强调“数据最优”方案。这里的重点是训练数据的质量和校准,以确保它与模型的规模相匹配。选择的数据旨在增强模型的推理能力,而不仅仅是增加信息量。
  3. 模型架构:Phi-3-mini采用了优化的变压器解码器架构,适用于默认(4K上下文长度)和扩展上下文(通过Phi-3-mini-128K中的LongRope机制将上下文长度扩展到128K)。这种灵活性使模型能够处理从简单查询到需要更深上下文的复杂对话的各种任务。
  4. 训练效率:模型使用bfloat16浮点格式进行训练,平衡了计算效率和数值精度。这种方法有助于有效管理计算资源,尤其是对于计划在处理能力有限的设备上运行的模型,如手机。
  5. 阶段训练:Phi-3的训练涉及两个连续阶段,第一阶段主要包括从网络来源中获得的一般知识和语言理解,第二阶段结合更严格过滤的网络数据和合成数据,教授模型高级推理和细分技能。
  6. 训练后增强:在初步训练后,Phi-3模型进行了包括监督指导微调和偏好调整在内的后训练调整。这些步骤对于改进模型在聊天功能、安全性和稳健性方面的能力至关重要。

这些训练策略共同使Phi-3模型在较少的参数下实现了高性能,使其适合本地化的设备上应用,如智能手机上。这种方法代表了向创建更高效但功能强大的AI工具迈进的重大转变,这些工具利用了先进的数据策展和训练技术。

Phi-3性能基准

Phi-3系列,特别是Phi-3-mini,在各种基准测试中展示了与更大模型如GPT-3.5和Mixtral 8x7B相竞争的性能。在MMLU基准测试中,Phi-3-mini得分为68.8%,紧随GPT-3.5的71.4%之后,超过了Mixtral 8x7B的68.4%。在HellaSwag测试中,Phi-3-mini达到76.7%,几乎与GPT-3.5的78.8%持平,并超过了得分为70.4%的Mixtral 8x7B。在ANLI测试中,Phi-3-mini记录了52.8%,略低于GPT-3.5的58.1%和Mixtral 8x7B的55.2%。Phi-3-small和Phi-3-medium展示了更进一步的改进;例如,Phi-3-small在MMLU中达到了75.3%,超过了GPT-3.5和Mixtral 8x7B。同样,在HellaSwag中,Phi-3-medium的得分为83.0%,显著地超过了其他模型。这些基准测试强调了Phi-3模型能够提供的强大性能,与或超过了许多更大的模型,突显了它们的训练方法和使用策划数据集的有效性。这种能力使得Phi-3能够在移动设备上提供强大的AI功能,与行业领先的模型紧密对齐,同时保持更小、更高效的足迹。

在iPhone上运行

Phi-3-mini模型特别设计为足够紧凑和高效,可以在现代智能手机上运行,包括配备A16仿生芯片的iPhone 14。此模型针对移动设备的限制进行了优化,同时仍提供强大的AI能力。它能够以4位量化版本运行,大约占用1.8GB的内存,这有助于其在不显著影响设备存储容量的情况下在智能手机上部署。

考虑到新型iPhone模型通常配备更先进的处理器和更大的内存容量,可以合理预期Phi-3-mini在iPhone 15上的表现将同样好或更佳。这将可能利用任何CPU和GPU能力的提升,以及可能进一步优化AI应用性能的能源效率改进。

总结

Phi-3系列,尤其是Phi-3-mini模型,代表了语言模型领域的一大进步,证明了高级AI能力可以在移动设备上有效实施。这一系列模型,包括Phi-3-mini、Phi-3-small和Phi-3-medium,在一系列基准测试中展示了令人印象深刻的性能,与甚至有时超越了GPT-3.5和Mixtral 8x7B等较大的模型。其性能的关键在于使用经过精心策划的训练数据集的创新使用,该数据集结合了经过严格过滤的网络数据和合成数据,使这些较小的模型能够实现高效率和高效能。

Phi-3-mini在智能手机上的部署,例如iPhone 14,使用仅需约1.8GB内存的量化版本,展示了强大AI在高度便携格式中的实际应用。这种能力为设备上的AI应用开辟了新的可能性,增强了用户隐私和功能性,无需持续的互联网连接。总的来说,微软的Phi-3计划推动了移动设备上AI可能性的界限,使其成为AI技术普及的一个关键发展,确保了更广泛的访问和实用性。

目前,微软只发布了Phi-3的技术报告,尚未开放源代码和权重下载。源代码和权重将很快提供下载。

https://avoid.overfit.cn/post/993fe58451424742928c50999461ddf9

这篇关于微软Phi-3,3.8亿参数能与Mixtral 8x7B和GPT-3.5相媲美,量化后还可直接在IPhone中运行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/931876

相关文章

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb

eclipse如何运行springboot项目

《eclipse如何运行springboot项目》:本文主要介绍eclipse如何运行springboot项目问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目js录当在eclipse启动spring boot项目时出现问题解决办法1.通过cmd命令行2.在ecl

使用nohup和--remove-source-files在后台运行rsync并记录日志方式

《使用nohup和--remove-source-files在后台运行rsync并记录日志方式》:本文主要介绍使用nohup和--remove-source-files在后台运行rsync并记录日... 目录一、什么是 --remove-source-files?二、示例命令三、命令详解1. nohup2.

一文详解PostgreSQL复制参数

《一文详解PostgreSQL复制参数》PostgreSQL作为一款功能强大的开源关系型数据库,其复制功能对于构建高可用性系统至关重要,本文给大家详细介绍了PostgreSQL的复制参数,需要的朋友可... 目录一、复制参数基础概念二、核心复制参数深度解析1. max_wal_seChina编程nders:WAL

Spring Boot项目打包和运行的操作方法

《SpringBoot项目打包和运行的操作方法》SpringBoot应用内嵌了Web服务器,所以基于SpringBoot开发的web应用也可以独立运行,无须部署到其他Web服务器中,下面以打包dem... 目录一、打包为JAR包并运行1.打包为可执行的 JAR 包2.运行 JAR 包二、打包为WAR包并运行

Linux高并发场景下的网络参数调优实战指南

《Linux高并发场景下的网络参数调优实战指南》在高并发网络服务场景中,Linux内核的默认网络参数往往无法满足需求,导致性能瓶颈、连接超时甚至服务崩溃,本文基于真实案例分析,从参数解读、问题诊断到优... 目录一、问题背景:当并发连接遇上性能瓶颈1.1 案例环境1.2 初始参数分析二、深度诊断:连接状态与

史上最全nginx详细参数配置

《史上最全nginx详细参数配置》Nginx是一个轻量级高性能的HTTP和反向代理服务器,同时也是一个通用代理服务器(TCP/UDP/IMAP/POP3/SMTP),最初由俄罗斯人IgorSyso... 目录基本命令默认配置搭建站点根据文件类型设置过期时间禁止文件缓存防盗链静态文件压缩指定定错误页面跨域问题

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

SpringBoot请求参数接收控制指南分享

《SpringBoot请求参数接收控制指南分享》:本文主要介绍SpringBoot请求参数接收控制指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring Boot 请求参数接收控制指南1. 概述2. 有注解时参数接收方式对比3. 无注解时接收参数默认位置