写点什么

超越 GPT-4!加州大学伯克利分校与微软研究院合作开源大型语言模型 Gorilla

作者:Anthony Alford

  • 2023-08-02
    北京
  • 本文字数:1385 字

    阅读完需:约 5 分钟

超越GPT-4!加州大学伯克利分校与微软研究院合作开源大型语言模型Gorilla

来自加州大学伯克利分校微软研究院的研究人员开源了Gorilla,这是一个可以编写 API 调用代码的大型语言模型(LLM)。在度量代码生成准确性的实验中,Gorilla 优于包括 GPT-4 在内的几个基线模型。

 

Gorilla 被描述为“LLM 的 API 应用商店”。它基于开源大型语言模型LLaMA。这个 LLM 在 APIBench 上做了调优。APIBench 是一个新的 ML 模型 API 描述数据集,托管在HuggingFaceTorchHubTensorHub上。Gorilla 还可以调用 API 定义的外部文档数据库,让它在访问新的 API 时无需重新训练。借助 Gorilla,开发人员可以创建问题的自然语言描述,例如“调用图像分类模型,参数个数不多于 10M,但 ImageNet 准确性至少要达到 70%。”然后,Gorilla 将输出 Python 代码,调用具有适当选项的 ML 模型。按照作者的说法:


在各个领域,LLM 正迅速普及。我们重点关注的是那些可以提高 LLM 在特定任务中 API 识别准确性的技术——这是这项技术发展中一个重要但经常被忽视的方面。作为一种通用语言,API 函数能够实现各种系统间的有效通信。正确使用 API 可以提高 LLM 与更广阔世界中的工具进行交互的能力。

 

GPT-4这样的 LLM 在包括生成代码在内的各种任务上都有出色的表现。然而,它们的 API 知识在训练时被“固定”了,因此,无法生成代码来调用更新的 API。此外,它们经常会产生幻觉——在代码生成时,它们输出的代码可能会调用不存在的 API。InfoQ 之前报道过人们近来为解决这些问题所做的努力,例如,Meta的Toolformer可以调用外部服务 API,ChatGPT的插件系统可以利用外部资源来增强 LLM。

 

不过,伯克利团队指出,那些方法是利用 API 调用的例子来提示 LLM。相比之下,Gorilla 的方法侧重于“系统化地评估并构建一个可供未来使用的管道”。首先,研究人员构建了 APIBench 数据集。他们从 HuggingFace 模型中心、PyTorch 中心和 TensorFlow 中心收集了所有的模型卡。经过过滤之后,获得了一个包含 1645 个 API 调用的集合。对于其中的每一个调用,研究人员使用 GPT-4 生成了一个指令-API 对数据集,用于对 Gorilla 进行调优。

 

在对 Gorilla 的输出进行评价时,一个主要的挑战是识别幻觉。首先,团队将幻觉定义为模型输出调用了在 API 定义外部数据库中不存在的 API。这与错误不同,错误是指模型输出错误地调用了“真实存在”的 API。团队使用所生成代码的抽象语法树(AST)来匹配数据库中的 API 和用于评估的测试集。在零样本任务中使用 AST 准确性度量,Gorilla 比 GPT-4 高了 20.43%。

 

Gorilla 的主要作者Shishir Patil参加了黑客新闻关于这项工作的讨论,并回答了几个问题。当被问及该模型的许可是否允许商业使用时,Patil 指出,Gorilla 有三个版本,基于 LLaMA 的版本没有商业应用许可,但基于 MPT-7 base 和 Falcon-7B 的版本可以。还有一位用户问,Gorilla 与LangChain相比怎么样。Patil 回答说:


Langchain 是一个很棒的项目,它试图教代理如何利用提示来使用工具。我们对此的看法是,如果你想在数以千计的 API 之间做出选择,那么提示不具有可扩展性。而 Gorilla 作为一个 LLM,可以帮你挑选 API 并编写语义、语法正确的 API 调用!它可以方便地替代 Langchain!

 

Gorilla 的代码和模型文件托管在 GitHub 上。这里还有一个在谷歌 Colab 笔记本中的模型演示。

 

原文链接:

https://www.infoq.com/news/2023/07/microsoft-gorilla/


相关阅读:

比Bing更早将LLM集成到搜索引擎中,这家由谷歌前高管创立的公司为什么还是失败了?

马斯克等人热捧:高薪缺人,但要懂全栈懂LLM,一个全新职业正在兴起!

2023-08-02 10:525277

评论

发布
暂无评论
发现更多内容

清河机械:用宜搭建设工厂数字化系统,节省80%开发成本

一只大光圈

阿里巴巴 低代码 数字化转型 钉钉宜搭

你写,我“奖”|TDengine用户故事征集

TDengine

tdengine 热门活动

RTC月度小报6月丨编程挑战赛圆满收官;声网上市1周年回顾...

声网

人工智能 月度小报

LeetCode 刷完 500 题!我想明白了这些……

Charles

算法 刷题 经验总结 内卷 攻略

PassJava 开源 (二) :初始化数据库表和搭建管理后台

悟空聊架构

SpringCloud 28天写作 悟空聊架构 12月日更

冬至说焦虑

张老蔫

28天写作

解决 ERROR: yaml.parser.ParserError: while parsing a block mapping

liuzhen007

28天写作 12月日更

盘点 2021|拥抱变化,不负韶华

架构精进之路

程序人生 盘点2021

LabVIEW目标对象分类识别(理论篇—5)

不脱发的程序猿

机器视觉 图像处理 LabVIEW 目标对象分类 分类算法

一份前端够用的 Linux 命令

冴羽

vim Linux 前端 Shell 手册

端侧AI进化论:HUAWEI HiAI Foundation的奇妙旅程

脑极体

模块七作业

doublechun

「架构实战营」

图解4种git合并分支方法

xcbeyond

git 分支合并 28天写作 12月日更

CSS之变量(二)条形加载条

Augus

CSS 12月日更

语音信号处理3:语音信号处理的的整体结构

轻口味

模块7作业

Asha

语音信号处理2:语音信号处理的应用

轻口味

低代码数字化运营篇:那些返乡卖农产品的年轻人后来都怎么样了?

优秀

低代码 农产品

什么是事实?什么是真相?

石云升

28天写作 12月日更

枚举代替常量

李子捌

28天写作 21天挑战 12月日更

云原生时代,CNStack 如何解决企业数字化转型难题?

阿里巴巴云原生

阿里云 容器 云原生 技术中台 CNStack

聊聊文章输出的背后

卢卡多多

28天写作 12月日更

语音信号处理1:语音信号处理的发展

轻口味

重磅发布全总结丨一文看懂阿里云弹性计算年度峰会

阿里云弹性计算

弹性计算 年度峰会

智慧公安情报研判重点人员管控系统开发建设

a13823115807

智慧公安情报研判系统开发

晚安吻

mtfelix

28天写作

“全”事件触发:阿里云函数计算与事件总线产品完成全面深度集成

阿里巴巴云原生

阿里云 云原生 函数计算 EventBridge

优酷 Android 构建速度优化实践

阿里巴巴终端技术

android App Gradle 移动开发 客户端

饿了么小程序容器首屏秒开优化实践

阿里巴巴终端技术

小程序 App 移动开发 客户端 小程序容器

再获行业认可,火线安全入选「软件开发安全优秀厂商」

火线安全

Java访问修饰符的正确使用姿势

李子捌

Java 28天写作 21天挑战 12月日更

超越GPT-4!加州大学伯克利分校与微软研究院合作开源大型语言模型Gorilla_生成式 AI_InfoQ精选文章