发布一天,Code Llama代码能力突飞猛进,微调版HumanEval得分超GPT-4
昨天(8月25日)的我:在代码生成方面开源 LLM 将在几个月内击败 GPT-4。现在的我:实际上是今天。
昨天,Meta 开源专攻代码生成的基础模型Code Llama,可免费用于研究以及商用目的。
Code Llama 系列模型有三个参数版本,参数量分别为7B、13B 和34B。并且支持多种编程语言,包括 Python、C 、Java、PHP、Typescript (Javascript)、C# 和 Bash。
Meta 提供的 Code Llama 版本包括:
Code Llama,基础代码模型;
Code Llama-Python,Python 微调版;
Code Llama-Instruct,自然语言指令微调版。
就其效果来说,Code Llama 的不同版本在 HumanEval 和 MBPP 数据集上的一次生成通过率(pass@1)都超越 GPT-3.5。
此外,Code Llama 的「Unnatural」34B 版本在 HumanEval 数据集上的 pass@1接近了 GPT-4(62.2% vs67.0%)。不过 Meta 没有发布这个版本,但通过一小部分高质量编码数据的训练实现了明显的效果改进。
图源:https://ai.meta.com/research/publications/code-llama-open-foundation-models-for-code/
一天刚过,就有研究者向 GPT-4发起了挑战。他们来自 Phind(一个组织,旨在构造一款为开发人员而生的AI 搜索引擎),该研究用微调的 Code Llama-34B 在 HumanEval 评估中击败了 GPT-4。
Phind 联合创始人 Michael Royzen 表示:「这只是一个早期实验,旨在重现(并超越)Meta 论文中的「Unnatural Code Llama」结果。将来,我们将拥有不同 CodeLlama 模型的专家组合,我认为这些模型在现实世界的工作流程中将具有竞争力。」
两个模型均已开源:
研究者在 Huggingface 上发布了这两个模型,大家可以前去查看。
Phind-CodeLlama-34B-v1:https://huggingface.co/Phind/Phind-CodeLlama-34B-v1
Phind-CodeLlama-34B-Python-v1:https://huggingface.co/Phind/Phind-CodeLlama-34B-Python-v1
接下来我们看看这项研究是如何实现的。
微调 Code Llama-34B 击败 GPT-4
我们先看结果。这项研究用 Phind 内部数据集对 Code Llama-34B 和 Code Llama-34B-Python 进行了微调,分别得到两个模型 Phind-CodeLlama-34B-v1以及 Phind-CodeLlama-34B-Python-v1。
新得到的两个模型在 HumanEval 上分别实现了67.6% 和69.5% pass@1。
作为比较,CodeLlama-34B pass@1为48.8%;CodeLlama-34B-Python pass@1为53.7%。
而 GPT-4在 HumanEval 上 pass@1为67%(OpenAI 在今年3月份发布的「GPT-4Technical Report」中公布的数据)。
图源:https://ai.meta.com/blog/code-llama-large-language-model-coding/
图源:https://cdn.openai.com/papers/gpt-4.pdf
谈到微调,自然少不了数据集,该研究在包含约8万个高质量编程问题和解决方案的专有数据集上对 Code Llama-34B 和 Code Llama-34B-Python 进行了微调。
该数据集没有采用代码补全示例,而是采用指令 - 答案对,这与 HumanEval 数据结构不同。之后该研究对 Phind 模型进行了两个 epoch 的训练,总共有约16万个示例。研究者表示,训练中没有使用 LoRA 技术,而是采用了本地微调。
此外,该研究还采用了 DeepSpeed ZeRO3和 Flash Attention2技术,他们在32个 A100-80GB GPU 上、耗时三个小时,训练完这些模型,序列长度为4096个 token。
此外,该研究还将 OpenAI 的去污染(decontamination)方法应用于数据集,使模型结果更加有效。
众所周知,即便是非常强大的 GPT-4,也会面临数据污染的困境,通俗一点的讲就是训练好的模型可能已经接受评估数据的训练。
这个问题对 LLM 非常棘手,举例来说,在评估一个模型性能的过程中,为了进行科学可信的评估,研究者必须检查用于评估的问题是否在模型的训练数据中。如果是的话,模型就可以记住这些问题,在评估模型时,显然会在这些特定问题上表现更好。
这就像一个人在考试之前就已经知道了考试问题。
为了解决这个问题,OpenAI 在公开的 GPT-4技术文档《 GPT-4Technical Report 》中披露了有关 GPT-4是如何评估数据污染的。他们公开了量化和评估这种数据污染的策略。
具体而言,OpenAI 使用子串匹配来测量评估数据集和预训练数据之间的交叉污染。评估和训练数据都是通过删除所有空格和符号,只保留字符(包括数字)来处理的。
对于每个评估示例,OpenAI 随机选择三个50个字符的子字符串(如果少于50个字符,则使用整个示例)。如果三个采样的评估子字符串中的任何一个是处理后的训练样例的子字符串,则确定匹配。
这将产生一个受污染示例的列表,OpenAI 丢弃这些并重新运行以获得未受污染的分数。但这种过滤方法有一些局限性,子串匹配可能导致假阴性(如果评估和训练数据之间有微小差异)以及假阳性。因而,OpenAI 只使用评估示例中的部分信息,只利用问题、上下文或等效数据,而忽略答案、回应或等效数据。在某些情况下,多项选择选项也被排除在外。这些排除可能导致假阳性增加。
关于这部分内容,感兴趣的读者可以参考论文了解更多。
论文地址:https://cdn.openai.com/papers/gpt-4.pdf
不过,Phind 在对标 GPT-4时使用的 HumanEval 分数存在一些争议。有人说,GPT-4的最新测评分数已经达到了85%。但 Phind 回复说,得出这个分数的相关研究并没有进行污染方面的研究,无法确定 GPT-4在接受新一轮测试时是否看到过 HumanEval 的测试数据。再考虑到最近一些有关「GPT-4变笨」的研究,所以用原始技术报告中的数据更为稳妥。
不过,考虑到大模型评测的复杂性,这些测评结果能否反映模型的真实能力依然是一个有争议的问题。大家可以下载模型后自行体验。
参考链接:
https://benjaminmarie.com/the-decontaminated-evaluation-of-gpt-4/
https://www.phind.com/blog/code-llama-beats-gpt4
重磅!OpenAI将发布DALL·E 3,多模态ChatGPT来了!
9月21日凌晨,OpenAI在官网宣布,在今年10月份将通过API向ChatGPTPlus和企业版用户提供全新文本生成图片产品——DALL·E3。这意味着,ChatGPT在DALL·E3加持下将开启久违的多模态输出模式,用户通过文本就能直接在ChatGPT中生成各种类型图片。站长网2023-09-21 08:59:450002猿辅导推出面向UI设计师的AI专业工具Motiff
据36KR消息,猿辅导推出面向UI设计师的AI专业工具Motiff,立志成为“Figma的下一代产品”据悉,猿辅导将于今年下半年推出一款专业工具Motiff,目标用户面向UI设计师,由其母公司看云控股集团开发。该工具的负责人是看云控股副总裁、Motiff总裁杨元祖。这款全新的AI设计工具正是由猿辅导2014年成立的AIlab所研发,该实验室曾是行业内首个人工智能研究院。站长网2023-04-21 10:33:500000RedmiBook 16将搭载满血标压13500H处理器
Redmi即将在29日的发布会上推出全新的笔记本产品——RedmiBook16。今天,官方已经公布了这款笔记本的一些重要性能配置。首先,RedmiBook16将搭载满血标压处理器13500H,能够释放出47W的性能,并配备双风扇和双8mm热管,以保持性能的持久发挥。此外,这款笔记本还将配备旗舰级的LPDDR56400MT/s内存,再次证明了Redmi对产品性能的重视。站长网2023-11-27 15:09:250000Meta版ChatGPT来了:Llama 2加持,接入必应搜索,小扎现场演示
「杀死」OpenAI,小扎这波稳定了吗?今天凌晨,一年一度的MetaConnect大会上发布了一系列以AI为重点的公告。不仅是最新的MR耳机、与Ray-Ban合作打造的智能眼镜,最重要的是,Meta将在自身的所有通讯类App、MetaQuest3和未来的Ray-BanMeta智能眼镜中内置生成式AI技术驱动的新功能,从多轮对话的AI助手到图像编辑等一应俱全。站长网2023-09-29 09:53:560000谷歌希望开发者承诺不会滥用新的 Chrome 广告 API
据国外媒体报道,谷歌计划推出适用于Chrome的新API,旨在为网络浏览器提供根据用户偏好定制的广告。然而,由于指纹识别攻击可能导致个人身份被识别的问题曝光后,谷歌已要求开发人员不要滥用该方法。站长网2023-06-30 19:36:060000