极光笔记 | 大语言模型插件
在人工智能领域,大语言模型(LLMs)是根据预训练数据集进行”学习“,获取可以拟合结果的参数,虽然随着参数的增加,模型的功能也会随之增强。但无论专业领域的小模型,还是当下最火、效果最好的大模型,都有一个共同的劣势:无法准确/正确地回答出训练数据集以外(区别于验证集和测试集的新增数据,如实时新闻、未公开的企业信息等)的结果,进而编造答案进行回复,即大模型幻觉问题。
为了解决上述问题,同时避免微调/重新训练带来的成本,LLMs 插件应运而生。 通过 LLMs 强大的内容生成能力和上下文理解能力,结合插件提供的数据以及特定功能,不仅拓宽了 LLMs 的应用领域,还增加了 LLMs 生成结果的可信度,更好地服务于使用者。
1.插件
插件是一种软件组件,它可以被添加到一个主要的应用程序或系统中,以扩展其功能或提供额外的特性。插件通常被设计成可独立安装和卸载,并且可以与主应用程序进行交互。插件的功能取决于所应用的领域和具体的应用程序,在 AIGC 快速发展的今天,大语言模型插件异军突起,改变了插件存在的形态,这也是本篇文章重点的研究对象。结合当前大语言模型插件的发展,插件分类如下:
1.1 传统插件
传统插件(Plug-in,又称 addin、add-in、addon 或 add-on,又译外挂)是一种遵循一定规范的应用程序接口编写出来的程序。其只能运行在程序规定的系统平台下(可能同时支持多个平台),而不能脱离指定的平台单独运行,即插件的运行依赖于宿主软件,无差别地启用或禁用插件功能。传统插件可分为浏览器插件和客户端软件插件,传统插件的存在形态如下图所示。
1.2 大语言模型插件
大语言模型插件是随着大语言模型发展而诞生的全新插件。 大语言模型插件的核心是 Web API,独立于大语言模型,插件开发过程不受大语言模型的约束,同时没有开发语言的限制,更加通用,只要 Web API 遵循 RESTful 相关规则即可。只是在为大语言模型配置插件时遵循配置规则,如原生 ChatGPT 插件配置遵循 OpenAPI 格式以及添加相关描述。大语言模型与插件是相对独立的两个部分,大语言模型与插件关系示意如下图所示。
大语言模型是插件的选择器,按需使用插件功能,即只有当用户提供的问题或数据满足插件调用条件时,才会调用插件,不是无差别地使用插件功能,大语言模型插件的工作流程如下图所示。
2.ChatGPT 插件
目前最强大的商用大语言模型莫过于 OpenAI 的大语言模型 ChatGPT-3.5/4.0,均支持插件功能(后面统一使用 ChatGPT),并且对支持开发者开放了插件开发入口,开发者可以基于自身需求开发 Web API 作为 ChatGPT 插件。但是,ChatGPT 创建插件的过程比较繁琐,下面以 GPTBots 插件创建过程作为对比,两者插件创建过程如下图所示(左:ChatGPT 创建插件;右:GPTBots 创建插件)。
3.GPTBots 插件
我们不一样!GPTBots 插件应用的技术路线不同于 ChatGPT,GPTBots 插件融合了 ChatGPT 插件创建规范(通用的 OpenAPI 规范)和函数调用功能,这样做有如下优势:
开发者只需专注于自身功能接口开发,无需开发额外的接口
插件配置遵循 OpenAPI 规范,开发者可以直接复用面向 ChatGPT Web 的插件,一键发布插件至 GPTBots
GPTBots 插件自动兼容市面上主流已支持插件能力的 LLM,开发者无需再去适配每个 LLM
3.1 创建插件
通过上面插件创建过程对比,我们知道,使用 GPTBots 插件只需四步:开发插件接口、新建插件、配置插件鉴权、添加符合 OpenAPI 规范的接口配置,其余的交给 GPTBots。
(1)开发插件接口
这里与 ChatGPT 原生方式相同,需要开发者自行开发插件接口,但是,在 GPTBots 中不需要开发者另行开发插件清单接口、插件接口配置信息接口、插件 Logo 接口,只需要开发者专注于插件功能接口开发。
(2)新建插件
GPTBots 新建插件入口如下图。
(3)配置插件鉴权
GPTBots 插件提供三种鉴权方式,即不鉴权(None)、Basic 鉴权和 Bearer 鉴权,配置过程如下图。
(4)添加符合 OpenAPI 规范的接口配置
完成上述准备工作,最后为插件配置接口规则,即开发者的功能接口,GPTBots 采用的接口规则遵循 OpenAPI 规范,配置说明如下图。
完成插件创建后,可以在“我的插件”中看到已创建成功的插件,同时,GPTBots 提供了插件一键发布功能,即将插件发布到插件市场,供其他开发者使用。
综上,GPTBots 插件最大程度简化了用户创建和使用插件的流程,极大降低了插件使用门槛。
3.2 插件应用
GPTBots 不仅创建插件流程非常简单、对开发者非常友好,使用起来也非常顺手。使用插件前,我们需要为 Bot 添加插件。以高德天气插件为例,为“天气小精灵”Bot 添加插件过程如下:
当我们为“天气小精灵”Bot 添加天气插件和搜索插件后,当问题中出现天气和实时信息相关问题时,插件会主动承担内容生产的责任,实测效果如下:
3.3 插件市场
GPTBots 官方为广大开发者和用户提供了众多实用的插件,如 PDF 生成插件、天气插件和搜索插件等等,GPTBots 部分插件如下:
4.思考与展望
插件在实际业务应用中,由于 LLM 每次调用 token 是有上限的,而插件也不可避免的占用 token,这样就导致无法在一次请求调用中提供多个插件备用。或者一个插件协议如果过于复杂,可能导致直接调用失败。
GPTBots 平台为了更好解决此类问题,推出了 Flow 功能。开发者可以在不同的步骤编排多个 LLM 参与业务处理,每个 LLM 可以最多添加 3 个插件,这样就很好的解决了插件使用限制的问题,同时通过减少请求上下文内容长度让 LLM 更加专注,从而提升插件调用成功率。
LLMs 插件区别于传统插件,它独立、灵活、自由、功能强大,大语言模型插件的核心是 Web API,因此大语言模型插件完全拥抱互联网,同时,没有开发语言“歧视”,无论开发者的语言栈是 Python、Java、Go、PHP 等,只要可以开发 HTTP 协议接口,遵循 RESTful 规则,就可以构建大语言模型插件,相信未来大语言模型插件种类会越来越丰富,功能越来越强大。相对于 ChatGPT 繁琐的插件创建流程,GPTBots 平台简化了插件创建流程,简单、易用、好用,提高插件开发者效率,降低开发者学习成本,未来一定会有越来越多的开发者选择 GPTBots 平台。
极光 GPTBots 已上线,访问https://www.gptbots.ai/developer,立即认证成为开发者体验!
关于极光
极光(Aurora Mobile,纳斯达克股票代码:JG)成立于 2011 年,是中国领先的客户互动和营销科技服务商。成立之初,极光专注于为企业提供稳定高效的消息推送服务,凭借先发优势,已经成长为市场份额遥遥领先的移动消息推送服务商。随着企业对客户触达和营销增长需求的不断加强,极光前瞻性地推出了消息云和营销云等解决方案,帮助企业实现多渠道的客户触达和互动需求,以及人工智能和大数据驱动的营销科技应用,助力企业数字化转型。
版权声明: 本文为 InfoQ 作者【极光JIGUANG】的原创文章。
原文链接:【http://xie.infoq.cn/article/225e52b3e9d4140b6213fbc08】。文章转载请联系作者。
评论