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

ChatGPT 速通手册——开源社区的进展

开源社区的进展

在 ChatGPT 以外,谷歌、脸书等互联网巨头,也都发布过千亿级参数的大语言模型,但在交谈问答方面表现相对 ChatGPT 来说都显得一般。根据科学人员推测,很重要的一部分原因是缺失了RLHF(Reinforcement Learning with Human Feedback,人类反馈强化学习)和PPO(Proximal Policy Optimization,近线策略优化)部分。因此,开源社区开始尝试在当前开源的千亿级参数大语言模型基础上,添加 RLHF 技术,尽力复现 ChatGPT 效果。

目前已知有两个开源项目在进行中:

  • colossal:https://github.com/hpcaitech/ColossalAI/tree/main/applications/ChatGPT
  • chatllama:https://github.com/nebuly-ai/nebullvm/tree/main/apps/accelerate/chatllama

目前而言,尚未看到这两个项目的实际性公开测试结论。一些零星的,对 LLAMA 模型的单机版体验报告,也都表示达不到 meta 公司发表的 LLAMA 论文中宣称的,更小参数规模匹配 GPT-3 效果的程度。

不过多年来开源社区和商业厂商分阵营对抗的历史经验,依然让很多人目光投向了还在蹒跚学步的开源模型们。甚至已经有岗位招聘中,开始要求"熟悉学界、业界最新研究成果,包括但不限于 instructGPT、LLaMA、LaMDA,国内的悟道、M6 等大模型"。

即使有了开源模型的第一步基础,要通过开源技术,在本地化部署环境中完整复现 ChatGPT,依然还有重重难关。

首先,ChatGPT 已知是千亿级参数规模的大模型,单独一张 GPU 卡连最基础的加载都无法完成。本地化训练需要大规模的 GPU 并行计算能力。openai 公司没有公布 ChatGPT 的训练成本,但外界有多种不同的猜测。第一种猜测依据 openai 曾经公开的 GPT-3 训练数据,根据当时 V100 显卡的公有云最低优惠包年价,计算得到理论极限最低成本为 460 万美元。第二种猜测依据 AI 业界著名人士 Elliot Turner 的推文,但他没有提供任何消息的准确来源,据称是 1200 万美元。

此外,还有一些其他可类比的情况。比如上一次震惊世界的 AI,围棋界的 alphago,训练投入是3500 万美元。比如 NVIDIA 公布自己的千亿级参数规模大模型 Megatron-LM,训练过程使用了 3072 张 80GB A100 显卡。根据市价,一张 A100 显卡大概需要两万美元,这 3072 张显卡的市价超过六千万美元,转换为人民币大概在四伍亿元左右。

考虑到 GPU 硬件技术的发展,每一代 CPU 产品性能都有接近 50% 的提升,重新训练一个 ChatGPT 的成本肯定会逐渐下降,但短期来看,至少两三年内,还不是一般科技公司可以畅想的未来。大家更可能的选择,是在大公司的模型或云服务基础上,实现自己的上层应用。

其次,ChatGPT 作为 GPT-3.5 的兄弟模型,在标准的 GPT 思想以外,还加入了 RLHF(Reinforcement Learning from Human Feedback)技术。并针对 Chat 这个场景,引入了和 instructGPT 不同的标注数据:由专门的人员,编写一部分对话数据加入训练。这些对话中,他们即扮演提问用户,也扮演 AI 机器人。然后 ChatGPT 在强化学习的奖励模型中,又让专门的人员对随机生成的若干条回答手动标记排名,通过 PPO(Proximal Policy Optimization)策略进行微调。

在初始训练中,openai 公司只雇佣了 40 个标注人员。但产品上线以后,ChatGPT 两个月内获取了 1 亿用户,海量标注数据在产品运行中自然而然的产生。在最近一次用户协议迭代中,openai 公司宣布直接使用 API 调用 ChatGPT 能力的用户数据不会被用于训练。换言之:通过网页端直接聊天的数据,已经足够 ChatGPT 的模型优化更新了。

 

中国在以往的 AI 应用中,同样大量使用了标注手段,相对低廉的人工成本和工程师成本在这方面也有一定的优势。但这些数据,是否会公开成为开源模型的一部分,供所有公司使用?还是沿着 ChatGPT 的路线,几家大公司比拼谁能更早构建用户反馈数据的护城河?

最后,即使获得了可靠的预训练大模型,在本地化部署环境做推理计算,依然有较高的成本。对特定领域内容进行微调也有一定难度。可能后续还是需要引入一些模型压缩方案,例如量化、蒸馏、剪枝、参数共享等等。知识蒸馏是之前大模型压缩的常用方案,但目前 ChatGPT 只开放 API 不开放模型,就很难直接进行知识蒸馏。一种可能的途径是利用 ChatGPT 的思维链功能,将问答记录里的思维链过程作为压缩小模型的训练数据。但这种使用方式在 openai 的用户协议中是明确禁止的。

无论如何,作为 ChatGPT 技术的使用者,我们可以关注类似技术的迭代更新,并保持对几年后,技术普及化的美好期待。

相关文章:

ChatGPT 速通手册——开源社区的进展

开源社区的进展 在 ChatGPT 以外,谷歌、脸书等互联网巨头,也都发布过千亿级参数的大语言模型,但在交谈问答方面表现相对 ChatGPT 来说都显得一般。根据科学人员推测,很重要的一部分原因是缺失了RLHF(Reinforcement Learning with…...

string类

string - C Reference (cplusplus.com) 引入: ASCII码表------>Unicode 其中又进行了分类: (UTF--8兼容ASCII码表) 等等等等 (不但迭代和更新) 例: 目录 正文开始!&#xff0…...

LLM总结(持续更新中)

引言 当前LLM模型火出天际,但是做事还是需要脚踏实地。此文只是日常学习LLM,顺手整理所得。本篇博文更多侧重对话、问答类LLM上,其他方向(代码生成)这里暂不涉及,可以去看综述来了解。 之前LLM模型梳理 …...

【GPT4】微软 GPT-4 测试报告(2)多模态与跨学科的组合

欢迎关注【youcans的AGI学习笔记】原创作品,火热更新中 微软 GPT-4 测试报告(1)总体介绍 微软 GPT-4 测试报告(2)多模态与跨学科能力 微软 GPT-4 测试报告(3)编程能力 微软 GPT-4 测试报告&…...

Celery使用教程完整版【从安装到启用】

Celery是一个基于Python开发的异步任务队列,可以实现任务的异步调度和处理。 以下是Celery使用教程的基本步骤: 安装Celery库 使用pip命令安装Celery库: pip install celery 创建Celery实例 在项目的Python文件中创建Celery实例&#x…...

【Java技术指南】「JPA编程专题」让你不再对JPA技术中的“持久化型注解”感到陌生了

JPA编程专题 JPA的介绍JPA的介绍分析JPA注解总览JPA实体型注解EntityTableTableGeneratorTableGenerator 属性 Temporal TransientColumnColumn 属性ColumnUniqueConstraint属性状态 VersionVersion Embeddable 和 EmbeddedEmbedded EmbeddedIdMappedSuperclassEntityListeners…...

Java基础:IO流有哪些,各有什么特点和功能

具体操作分成面向字节(Byte)和面向字符(Character)两种方式。 如下图所示: IO流的三种分类方式 IO流的层次结构 IO流的常用基类有: 字节流的抽象基类:InputStream和OutputStream; 字符流的抽象基类:Reader和Writer…...

MySQL、PostgreSQL、Oracle、SQL Server数据库触发器实现同步数据

数据库触发器是一种在数据库中设置的程序,当满足某些特定条件时,它会自动执行。触发器通常与数据表的操作(例如插入、更新和删除)相关联,它们可以帮助保证数据的完整性和一致性。在本篇博客中,我将介绍各种…...

因为我没交周报,leader要罚款200元,怎么给他挖坑?能以敲诈勒索罪告他吗?...

没交周报就罚款,这种事你们遇到过吗? 一位网友说:leader在群里通知不交周报就罚款,这周罚到他头上,要罚款200元,这种情况怎么办?能定他一个敲诈勒索罪或者抢劫罪吗?最差也要在离职后…...

java跨域问题

什么是跨域? 跨域是指从一个域名的网页去请求另一个域名的资源。比如从www.baidu.com页面去请求www.google.com的资源。但是一般情况下不能这么做,他是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。 跨域的严格定义是&…...

故障重现, JAVA进程内存不够时突然挂掉模拟

背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize # This output file may be truncated or incomplete. # # Out of Memory Error (os_linux.cpp:26…...

数画-AI绘画-免费的人工智能AI绘画网站

文章目录 AIGC什么是AI作画?Prompt数画AIGC的未来发展结语 AIGC AIGC(AI Generated Content)是指利用人工智能生成内容。是利用人工智能来生成你所需要的内容,GC的意思是创作内容。与之相对应的概念中,比较熟知的还有P…...

ElasticSearch安装、启动、操作及概念简介

ElasticSearch快速入门 文件链接:https://pan.baidu.com/s/15kJtcHY-RAY3wzpJZIn4-w?pwd0k5a 提取码:0k5a 有些软件对于安装路径有一定的要求,例如:路径中不能有空格,不能有中文,不能有特殊符号&#xf…...

Linux用户管理

♥️作者:小刘在C站 ♥️个人主页:小刘主页 ♥️每天分享云计算网络运维课堂笔记,努力不一定有收获,但一定会有收获加油!一起努力,共赴美好人生! ♥️夕阳下,是最美的绽放,树高千尺,落叶归根人生不易,人间真情 前言 努力是最好的捷径! 目录 1.Linux基于用户身份对…...

Docker 的安装和镜像容器的基本操作

文章目录 一、Docker 概述1、Docker的概念2、容器的优点3、容器与虚拟机的区别4、容器在内核中支持2种重要技术5、Docker核心概念 二、Docker的安装1、docker的安装步骤2、实例操作:安装docker 三、Docker 镜像操作1、搜索镜像2、获取镜像3、镜像加速下载4、查看镜像…...

被盗的ChatGPT账户在暗网热销,ChatGPT的隐私和安全问题依旧值得关注

在过去的一个月,Check Point研究人员在暗网上观察到了与ChatGPT相关的各种讨论和交易。暗网上最新的活动包括泄露和免费发布ChatGPT账户的凭据,以及交易被盗的ChatGPT账户。 根据Check Point进行的一项研究,从今年3月以来,被盗的…...

OpenCV2 计算机视觉应用编程秘籍:6~10

原文:OpenCV2 Computer Vision Application Programming Cookbook 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自【ApacheCN 计算机视觉 译文集】,采用译后编辑(MTPE)流程来尽可能提升效率。 当别人说你没有底线…...

如何对农田温室气体进行有效模拟?

农业是甲烷(CH4)、氧化亚氮(N2O)和二氧化碳(CO2)等温室气体的主要排放源,占全产业排放的13.5%。农田温室气体又以施肥产生的N2O和稻田生产产生的CH4为主,如何对农田温室气体进行有效…...

java数据结构刷题练习

class Solution {public boolean containsDuplicate(int[] nums) {Arrays.sort(nums);for(int i1;i<nums.length;i){if(nums[i-1]nums[i])return true;}return false; } }作者&#xff1a;affectionate-albattani7tn 链接&#xff1a;https://leetcode.cn/problems/contains…...

《商用密码应用与安全性评估》第一章密码基础知识1.6密钥交换协议

密码协议是指两个或者两个以上参与者使用密码算法时&#xff0c;为了达到加密保护或安全认证目的而约定的交互规则。 密钥交换协议 公钥密码出现之前&#xff0c;密钥交换很不方便&#xff0c;公钥密码可以在不安全信道上进行交换&#xff0c;交换的密码协议是为了协商会话密钥…...

Ubuntu系统下交叉编译openssl

一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机&#xff1a;Ubuntu 20.04.6 LTSHost&#xff1a;ARM32位交叉编译器&#xff1a;arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

ssc377d修改flash分区大小

1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

Golang dig框架与GraphQL的完美结合

将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用&#xff0c;可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器&#xff0c;能够帮助开发者更好地管理复杂的依赖关系&#xff0c;而 GraphQL 则是一种用于 API 的查询语言&#xff0c;能够提…...

JDK 17 新特性

#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持&#xff0c;不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的&#xff…...

Map相关知识

数据结构 二叉树 二叉树&#xff0c;顾名思义&#xff0c;每个节点最多有两个“叉”&#xff0c;也就是两个子节点&#xff0c;分别是左子 节点和右子节点。不过&#xff0c;二叉树并不要求每个节点都有两个子节点&#xff0c;有的节点只 有左子节点&#xff0c;有的节点只有…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...

Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析

Java求职者面试指南&#xff1a;Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问&#xff08;基础概念问题&#xff09; 1. 请解释Spring框架的核心容器是什么&#xff1f;它在Spring中起到什么作用&#xff1f; Spring框架的核心容器是IoC容器&#…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...