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

#Phi-4:微软 14B 参数开源模型,性能匹敌 OpenAI GPT-4o-mini,现已登陆 Ollama

Phi-4:微软 14B 参数开源模型,性能匹敌 OpenAI GPT-4o-mini,现已登陆 Ollama

在这里插入图片描述

一、Phi-4 模型概述

(一)模型参数与规模

Phi-4 是微软推出的一款小型语言模型,拥有 140 亿参数。虽然参数量相对较小,但它在性能上却展现出了惊人的实力,甚至在某些基准测试中超越了更大规模的模型。Phi-4 的模型架构基于 Transformer 的解码器架构,与 GPT 系列模型类似,这种架构利用自注意力机制,能够有效捕捉文本序列中的长期依赖关系,尤其擅长处理自然语言生成任务。

(二)推出背景与目标

在人工智能领域,语言模型的发展日新月异。微软作为行业的重要参与者,一直致力于推动语言模型技术的进步。Phi-4 的推出旨在挑战“模型越大越好”的传统观念,通过创新的训练方法和高质量的数据,实现高效的信息处理和复杂任务的执行,为人工智能在更多领域的应用提供新的可能性。
在这里插入图片描述

二、Phi-4 模型架构

(一)基于 Transformer 的解码器架构

Phi-4 采用了基于 Transformer 的解码器架构,这种架构利用自注意力机制,能够有效捕捉文本序列中的长期依赖关系。自注意力机制允许模型在处理一个词时,考虑到整个文本序列中的所有词,从而更好地理解上下文信息。

(二)参数规模与层数

Phi-4 的参数总量为 140 亿个参数,模型层数为 40 层。这样的参数规模和层数使得 Phi-4 在保持较小模型体积的同时,具备了强大的计算能力和推理能力。

(三)上下文长度

Phi-4 的初始上下文长度为 4,096 个 Token,在中期训练阶段扩展到了 16,000 个 Token(16K)。这种扩展使得 Phi-4 能够处理更长的文本,提高了模型在处理长文本任务时的表现。

三、Phi-4 的训练方法与数据策略

(一)数据质量优先的理念

Phi-4 在训练过程中非常重视数据质量。与其他模型不同,Phi-4 大幅度引入了合成数据。合成数据的使用包括借助多个代理共同生成数据、自我修正流程和指令反转等,极大地丰富了训练的多样性。此外,Phi-4 还从高质量的互联网内容、书籍以及学术论文中精心筛选和过滤数据,确保在降低噪声的同时提升模型的表现。

(二)合成数据的全面应用

Phi-4 的训练数据主要由高质量的合成数据组成。合成数据能够提供结构化、逐步的学习材料,使得模型能够更加高效地学习语言的逻辑与推理过程。例如,在数学问题的解答中,合成数据可以按照解题步骤逐步呈现,帮助模型更好地理解问题的结构与解题思路。此外,合成数据能够更好地与模型的推理上下文对齐,更接近于模型在实际应用中需要生成的输出格式。

四、Phi-4 的应用领域与表现

(一)问答能力

Phi-4 能理解和回答各种问题,尤其在 STEM(科学、技术、工程和数学)领域表现出色。它在美国数学竞赛 AMC 10/12 中得分超过 90,显示了强大的数学推理能力。

(二)数学问题解决

Phi-4 在数学等领域的复杂推理方面表现出色。它能够快速分析问题的逻辑结构,准确地运用相关知识进行推理和计算。

(三)编程任务

Phi-4 在编程任务上也表现出色,能理解和生成代码,解决编程问题。在 HumanEval 基准测试中,Phi-4 以 82.6% 的准确率领先其他开源模型。

(四)长文本处理

基于 midtraining 阶段,Phi-4 能处理长达 16K 的上下文,保持高召回率。

(五)复杂推理

Phi-4 在多个基准测试中展现处理复杂推理任务的能力,如 MMLU 和 GPQA。

(六)安全交互

Phi-4 在后训练中进行安全对齐,确保与用户的交互符合负责任 AI 原则。

ollama已更新phi4:14b

https://ollama.com/library/phi4

ollama run phi4:14b

六、总结

Phi-4 作为微软推出的最新小型语言模型,在仅有 140 亿参数的情况下,通过创新的训练方法和高质量的数据,展现出了媲美甚至超越一些更大规模模型的性能。它在数学推理、编程任务、长文本处理等多个领域都表现出色,为人工智能技术的发展提供了新的思路和可能性。Phi-4 的成功也证明了在模型设计中,数据质量的重要性不亚于模型规模。

相关文章:

#Phi-4:微软 14B 参数开源模型,性能匹敌 OpenAI GPT-4o-mini,现已登陆 Ollama

Phi-4:微软 14B 参数开源模型,性能匹敌 OpenAI GPT-4o-mini,现已登陆 Ollama 一、Phi-4 模型概述 (一)模型参数与规模 Phi-4 是微软推出的一款小型语言模型,拥有 140 亿参数。虽然参数量相对较小&#xf…...

JSON头文件调用

除了传统的读写操作,现在流行的json文件读取保存,还是非常方便的. 头文件放在源代码中,在调用处添加引用路径 #include “…/ConsoleApplication1/include/json.hpp” using json nlohmann::json; 数据结构例子: // 声明Person类 class Person { public: std::string name; i…...

Swagger学习⑭——@Contact注解

介绍 Contact 是 Swagger/OpenAPI 3.0 注解中的一个注解,用于定义 API 文档中的联系信息。通过 Contact 注解,你可以指定 API 维护者的联系方式,例如电子邮件、URL 或名称等。 源代码 package io.swagger.v3.oas.annotations.info;import …...

如何监听Vuex数据的变化?

使用watch方法监听Vuex state的变化: // 在 Vue 组件中 this.$store.watch((state) > state.someState,(newValue, oldValue) > {console.log(someState changed from, oldValue, to, newValue);} );使用subscribe方法监听mutation的变化: // 在…...

Redis 优化秒杀(异步秒杀)

目录 为什么需要异步秒杀 异步优化的核心逻辑是什么? 阻塞队列的特点是什么? Lua脚本在这里的作用是什么? 异步调用创建订单的具体逻辑是什么? 为什么要用代理对象proxy调用createVoucherOrder方法? 对于代码的详细…...

前端中常用的单位度量(px,rpx,rem,em,vw,vh)+图片自适应

文章目录 前端中常用的单位度量vw/vh 的场景应用px/rem/em 之间的转换关系项目中的rem 应用根元素 font-size 设置为16px 的应用惯例自适应之图片应用1. 使用 max-width 和 max-height2. 使用 object-fit 属性3. 使用 background-image 模拟图片展示 前端中常用的单位度量 px&…...

STM32之一种双通路CAN总线消息备份冗余处理方法(十三)

STM32F407 系列文章 - Dual-CANBus-ProMethod(十三) 目录 前言 一、现状分析 二、解决思路 1.应用场景网络结构图 2.数据发送流程 3.数据接收流程 4.用到的模块 1.CAN网络速率及时间片分配 2.CAN网络消息ID组成 3.设备节点定义 4.数据格式说明…...

从零开始:使用VSCode搭建Python数据科学开发环境

引言 在数据科学领域,一个高效、稳定的开发环境是成功的关键。本文将详细介绍如何使用Visual Studio Code搭建一个完整的Python数据科学开发环境。通过本指南,您将学会: 安装和配置VSCode,包括基本设置和快捷键配置设置Python开…...

C#语言的字符串处理

C#语言的字符串处理 引言 在现代编程中,字符串处理是一项重要的技能,几乎在所有编程语言中都有应用。C#语言作为一种强类型的、面向对象的编程语言,提供了丰富的字符串处理功能。这使得开发人员能够方便地进行文本操作,比如字符…...

《安富莱嵌入式周报》第348期:开源低功耗测试仪,开源创意万用表,续航100-300小时,开源PCB电机,自制shell和网络协议栈,开源水培自动化系统

周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版: https://www.bilibili.com/video/BV1Tzr9Y3EQ7/ 《安富莱嵌入式周报》第348期:开源低功…...

npm发布流程说明

一、进入要发布的项目根目录,初始化为npm包 npm initname:最重要的字段之一,项目名称(少于214个字节)。没有name和version不能进行安装; version:最重要的字段之一,项目版本。没有n…...

缓存-文章目录

关于缓存系列文章: 缓存学习总结1(缓存分类) 缓存学习总结2(服务器本地缓存) 缓存学习总结3(服务器内存缓存)推荐使用 缓存学习总结4(分布式缓存) 关于redis系列文章…...

LeetCode 3297.统计重新排列后包含另一个字符串的子字符串数目 I:滑动窗口

【LetMeFly】3297.统计重新排列后包含另一个字符串的子字符串数目 I:滑动窗口 力扣题目链接:https://leetcode.cn/problems/count-substrings-that-can-be-rearranged-to-contain-a-string-i/ 给你两个字符串 word1 和 word2 。 如果一个字符串 x 重新…...

如何在 Ubuntu 24.04 上安装 Memcached 服务器教程

简介 Memcached 是一个高性能、分布式的内存缓存系统,旨在通过减少数据库负载来加速动态 Web 应用程序。它通过将数据和对象缓存在 RAM 中来实现这一点,从而最大限度地减少了从数据库或其他慢速存储层重复获取数据的需要。 本教程的目标是手把手教你如…...

《深度学习模型在鸿蒙分布式框架下的跨设备高效之旅》

在人工智能领域,深度学习模型的训练与推理通常需要强大的计算资源和大量的数据支持。而鸿蒙系统的分布式框架为解决这一问题提供了新的思路和方法,使得深度学习模型能够在多个设备之间实现高效的训练与推理。 鸿蒙分布式框架概述 鸿蒙系统是一款面向万…...

[python3]Excel解析库-xlutils

xlutils 是一组用于处理 Excel 文件的 Python 库,它实际上是 xlrd 和 xlwt 的扩展,提供了额外的功能来操作 Excel 文件。xlutils 主要由三个部分组成:xlutils.copy、xlutils.filter 和 xlutils.view,它们分别用于复制和修改现有 E…...

Springboot Bean创建流程、三种Bean注入方式(构造器注入、字段注入、setter注入)、循坏依赖问题

文章目录 1 Bean 创建流程1.1 Bean的扫描注册1.2 创建Bean的顺序 2 三种Bean注入方式2.1 构造器注入 | Constructor Injection(推荐)2.2 字段注入 | Field Injection(常用)2.3 方法注入 | Setter Injection2.4 三种方式注入顺序 3…...

mybatisX插件的使用,以及打包成配置

装mybatisX插件; idea连接数据库; 点击mybatisx-generator,设置自己装mybatisX插件; idea连接数据库; 点击mybatisx-generator,设置自己要的包和类; 如果要把自己的配置设置成一个自定义模板&a…...

【初阶数据结构】线性表之单链表

文章目录 前言 一、单链表的概念与结构 1.概念 2.结点 3.性质 二、实现单链表 1.结构的定义 2.链表的打印和结点的申请 3.单链表的尾插和头插 4.单链表的尾删和头删 5.单链表的查找 6.指定位置之前插入数据和指定位置之后插入数据 7.删除pos结点和删除pos之后的结…...

CentOS7通过yum安装JDK

CentOS7通过yum安装JDK 1、卸载自带的JDK 查看已安装的JDK rpm -qa | grep java删除已安装的JDK yum -y remove java-1.8.0-openjdk*验证是否删除成功 查不到版本信息则已删除成功 java -version2、安装JDK sudo yum install java-1.8.0-openjdk java-1.8.0-openjdk-deve…...

Ostrakon-VL-8B与ComfyUI工作流结合:可视化视觉分析流程搭建

Ostrakon-VL-8B与ComfyUI工作流结合:可视化视觉分析流程搭建 1. 引言:当视觉大模型遇上可视化编程 如果你玩过AI绘画,大概率听说过ComfyUI。这个工具把复杂的AI图像生成过程,变成了一个个可以拖拽、连接的“积木块”&#xff0c…...

G-Helper:实现华硕笔记本硬件级控制的5个轻量高效解决方案

G-Helper:实现华硕笔记本硬件级控制的5个轻量高效解决方案 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Strix…...

三星固件管理工具Bifrost:跨平台固件获取与处理的技术伙伴

三星固件管理工具Bifrost:跨平台固件获取与处理的技术伙伴 【免费下载链接】SamloaderKotlin 项目地址: https://gitcode.com/gh_mirrors/sa/SamloaderKotlin 在三星设备维护与开发工作中,获取和处理官方固件往往是一项复杂且耗时的任务。传统方…...

C++的std--ranges算法自定义比较器与投影函数在排序中的组合使用

C20引入的std::ranges库为算法操作带来了更简洁、更安全的表达方式,其中自定义比较器与投影函数的组合使用尤其值得关注。这种组合不仅提升了代码的可读性,还能实现复杂的排序逻辑,让开发者能够更灵活地处理数据结构。本文将深入探讨这一特性…...

5分钟快速上手:解锁付费内容的终极指南

5分钟快速上手:解锁付费内容的终极指南 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在信息时代,优质内容常常被付费墙阻隔,但今天我要为你介绍一…...

Jenkins X多集群管理终极指南:跨云平台部署和统一运维

Jenkins X多集群管理终极指南:跨云平台部署和统一运维 【免费下载链接】jx Jenkins X provides automated CICD for Kubernetes with Preview Environments on Pull Requests using Cloud Native pipelines from Tekton 项目地址: https://gitcode.com/gh_mirrors…...

res-downloader全流程指南:一站式网络资源获取高效解决方案

res-downloader全流程指南:一站式网络资源获取高效解决方案 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader 在数字…...

CHORD-X视觉战术指挥系统固件升级方案:远程安全更新边缘设备

CHORD-X视觉战术指挥系统固件升级方案:远程安全更新边缘设备 最近和几个做边缘计算设备的朋友聊天,大家普遍头疼一个问题:设备一旦部署出去,特别是像智能摄像头、单兵终端这类在户外或复杂环境下的设备,后续的固件更新…...

Pixel Aurora Engine 角色设计作品集:基于提示词工程的奇幻生物生成

Pixel Aurora Engine 角色设计作品集:基于提示词工程的奇幻生物生成 1. 开篇:当像素艺术遇见AI奇幻世界 想象一下,你正在开发一款奇幻题材的RPG游戏,需要设计数十种独特的生物角色。传统方式下,这可能需要美术团队数…...

保姆级教程:在ROS Melodic下,用TEB局部规划器搞定阿克曼小车Gazebo自主导航(附避坑指南)

阿克曼小车Gazebo仿真与TEB局部规划器深度实战指南 当你在Gazebo中看到阿克曼转向结构的小车优雅地绕过障碍物,精准停靠在目标点时,那种成就感是难以言喻的。不同于差速驱动机器人,阿克曼结构的运动学特性为导航栈配置带来了独特挑战。本文将…...