写点什么

与向量数据库 Pinecone 工程经理聊 ChatGPT 插件

  • 2023-06-04
    北京
  • 本文字数:1700 字

    阅读完需:约 6 分钟

与向量数据库Pinecone工程经理聊ChatGPT插件

OpenAI最近宣布提供 ChatGPT插件支持,允许 ChatGPT 访问外部工具和数据库。OpenAI 还开放了数据检索插件的源代码,其他公司可以使用该插件为 ChatGPT 提供对自己文档和数据的访问。


虽然像 ChatGPT 这样的大型语言模型(LLM)可以正确地回答许多问题,但它们的知识可能会过时,因为 LLM 被训练好以后并不会得到更新。此外,模型只能输出文本,这意味着它不能直接代表用户执行操作。


为了解决这个问题,研究人员探索了一些允许 LLM调用API或访问知识库的方法。ChatGPT 的插件系统将允许模型与外部系统集成,如知识库和第三方 API。检索插件允许模型对向量数据库执行语义搜索。由于该插件是自托管的,企业可以将自己的内部文档安全地存储在数据库中,并让他们的用户通过 ChatGPT 的自然语言界面与数据发生交互。


这个插件支持几种商业的和开源的向量数据库,包括一个由 Pinecone 开发的。这家公司也参与了这个插件的开发,InfoQ 采访了Pinecone的工程经理Roy Miara,谈到了他们对这个插件的贡献。


InfoQ:ChatGPT 插件是什么东西,特别是这个检索插件是用来做什么的?


Roy Miara:ChatGPT 插件作为辅助工具,可以帮助 ChatPGT 方便地访问当前的信息、执行计算或集成第三方服务。这个检索插件让 ChatGPT 能够通过语义搜索技术获取外部知识。检索插件有两种流行的使用范例,一种是利用插件访问个人或组织数据,一种是将插件作为 ChatGPT 内部的记忆组件。两者都使用语义搜索作为模型将用户提示词重组为对向量数据库(如 Pinecone、Milvus 或 Weaviate)查询的一种方式。


InfoQ:ChatGPT 插件与其他 LLM 集成(如 LangChain)相比有哪些优势?


Miara:LangChain 通过工具链实现“代理”的体验,但 ChatGPT 插件更适合 AI 应用开发。ChatGPT 插件的优势包括:实现更为复杂和完善,利用了 OpenAI 内部插件能力,而 LangChain 只是将插件信息连接为模型的提示词;支持安全性身份验证,这对 AI 应用程序开发来说是至关重要的,特别是在访问个人数据或代表用户执行操作时。Langchain 当前的产品中并不包含这些特性。


InfoQ:你能描述一下你对这个检索插件的贡献吗?


Miara:Pinecone 的数据存储实现贡献给了这个项目,也包括其他一些测试和文档的内部改进。总体基本实现遵循 Pinecone 的更新/查询/删除范式,我们目前正在研究混合查询和其他高级查询技术。


InfoQ:你能提供一些典型的关于 ChatGPT 插件工作原理的技术细节吗?


Miara:ChatGPT 插件就是一个向 ChatGPT 公开“指令”清单的 Web 服务器,它将插件的操作描述为提示词,并将 API 引用描述为 OpenAPI 规范。有了这些,ChatGPT 就能够理解不同的 API 调用,以及它应该遵循的指令。


因此,要开发插件,就需要构建应用程序逻辑,实现遵循OpenAPI规范的 Web 服务器,并部署服务器,让 ChatGPT 能够访问它。尽管对可实现的应用程序逻辑没有限制,但不建议构造太过复杂的 API 服务器,因为这可能会导致出现不希望看见的行为或混乱等。


我们发现清单中有“description_for_model”,本质上就是在获取上下文之前注入的提示词,它是成功构建插件的关键。OpenAI 提供了一些指南,但归根结底还是要开发者自己找到正确的提示词。


InfoQ:OpenAI 说插件是“以安全为核心原则、专门为语言模型设计的”。在开发插件的过程中都遇到了哪些安全方面的挑战?


Miara:首先,让 ChatGPT 访问个人或组织数据需要实现安全和数据完整性特性。插件需要处理 API 身份验证,确保数据的安全访问。


其次,生成式语言模型一直存在正确性问题。我们发现,早期版本的插件偶尔会提供不正确的响应,但随后的迭代提高了准确性,同时也承认某些问题超出了它们可处理的范围。此外,通过在测试阶段长时间运行插件,OpenAI 可以在将其发布给更多的用户之前更好地对结果做出调整。


此外,插件功能的设计对用户来说是完全透明的。用户显式地选择他们希望启用的插件,ChatGPT 在启用插件时会清楚地向用户表明,同时也使查看插件服务提供给 ChatGPT 上下文的结果变得简单。


【声明:本文由 InfoQ 翻译,未经许可禁止转载。】


查看英文原文

https://www.infoq.com/news/2023/05/chatgpt-retrieval-plugin/


相关阅读:

向量数据库?不要投资!不要投资!不要投资!

GPT-4 重磅发布,吊打 ChatGPT!编程能力牛到让我睡不着:10 秒做出一个网站,1 分钟开发一个游戏

2023-06-04 21:3823205

评论

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

Linux 基础操作

yuanhang

linux命令

【DevCloud · 敏捷智库】暴走在发布前夜的开发,你怕不怕?

华为云开发者联盟

版本控制 系统集成 发布

微信群总是有人发广告?看我用Python写一个自动化机器人消灭他!

刘早起😶

Python

JavaScript中的原型到底该如何理解?

Walker

Java 大前端 面向对象编程 原型

捡到宝啦!阿里内部人手一本的Springboot进阶手册,先学为敬

Java架构师迁哥

架构师训练营第十三周作业

叮叮董董

java安全编码指南之:表达式规则

简爱W

Java java架构师

常用数据分析指标

纯纯

架构师训练营-第十二周作业

腾志文(清样)

云栖大会倒计时8天,新一代CDN的技术突破和应用实践专场有什么看点?

阿里云Edge Plus

CDN CDN加速

架构师0期Week13作业

Nan Jiang

35岁以上的程序员们,后来都干什么去了?

华为云开发者联盟

程序员 职业规划 架构师

架构师13周练习

小蚂蚁

从零开始搭建完整的电影全栈系统(二)——简单的WEB展示网站的搭建

刘强西

Yii2 yii

LeetCode题解:225. 用队列实现栈,一个队列, 压入 - O(n), 弹出 - O(1),JavaScript,详细注释

Lee Chen

大前端 LeetCode

淘宝服务端高并发分布式架构演进之路

简爱W

Java java架构师

CommonMistakes

卓丁

北京或先行落地央行数字货币 人民币3.0时代将来临

CECBC

数字货币 银行 人民币

打破Scrum的五个误区(译)

Bruce Talk

Scrum 敏捷开发 Agile

架构师训练营-第十一周作业

腾志文(清样)

搜索引擎如何推荐网页

dongge

够开放吗?来,和一群开发者搞事情!

易观大数据

区块链赋能数字经济,为知识和版权确权定价

CECBC

区块链 知识产权 数字经济

为什么说区块链是制造信任的机器?

CECBC

区块链 不可篡改

架构师课程第十三周总结

dongge

架构师0期Week13总结

Nan Jiang

Securecrt 使用

yuanhang

securecrt

到底什么是分布式系统?你需要了解这些

华为云开发者联盟

分布式 部署

物联网为什么需要5G?

华为云开发者联盟

5G 物联网

大数据2学习总结

周冬辉

JavaScript 简介

InfoQ_34a83d636158

与向量数据库Pinecone工程经理聊ChatGPT插件_架构_Anthony Alford_InfoQ精选文章