写点什么

与向量数据库 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:3822130

评论

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

【Docker 那些事儿】容器数据卷的妙手

Albert Edison

Docker Kubernetes 容器 云原生 7月月更

新书上市 | 图解、幽默、有趣、简单的 Java 书

图灵教育

Java 程序员 计算机

手动上传表单数据+图片文件功能

猪痞恶霸

前端 7月月更

Istio组件Mixer介绍

阿泽🧸

istio 7月月更

异步 API 设计之扇入扇出模式

宇宙之一粟

API 7月月更

金融行业开放平台

穿过生命散发芬芳

7月月更 开放平台

玩转Liunx系统,看这篇文章就够了(三)

Java学术趴

7月月更

【愚公系列】2022年07月 Java教学课程 04-Java语言三种注释

愚公搬代码

7月月更

Docker(二)Docker-Compose、网络、数据卷

神农写代码

包装类型

7月月更

Codeforces Round #787 (Div. 3)

KEY.L

7月月更

谈Java Record类

ES_her0

7月月更

Python已有列表和字典,为什么还需要元组?

迷彩

Python Python基础知识 元组 7月月更

Serverless模板重磅上线!多场景覆盖、小时级快速集成

最新动态

zookeeper-ACL权限相关

zarmnosaj

7月月更

Flutter 模拟火箭发射动画

岛上码农

flutter ios 移动端开发 安卓开发 7月月更

项目管理系统选择有哪些需要注意的点?

爱吃小舅的鱼

项目管理

小程序媒体组件-1

小恺

7月月更

计算机组成原理之计算机最基本的工作原理

未见花闻

7月月更

长安链中的加密算法

长安链

把项目打包成docker镜像,并发布到腾讯云?DockerHub!

为自己带盐

Dockerhub 7月月更 dotnetcore

【刷题记录】11. 盛最多水的容器

WangNing

7月月更

jQuery 的事件绑定

Jason199

jquery js 7月月更

解读《深入理解计算机系统(CSAPP)》第11章网络编程

小明Java问道之路

网络编程 socket csapp intel 7月月更

接口测试——流程测试支持批量参数导入,测试效率直接拉满

Xd

Java 数据库 程序员 接口测试工具

【漫步刷题路】- 逆序字符串II

芒果酱

7月月更

AWS Config

冯亮

云计算 DevOps 架构师 AWS 产品解决方案

电商平台数据可视化监控系统-Echarts-vue项目综合练习

武师叔

7月月更

GNU/Linux知识库(4)- 用户 & 权限

冯亮

Linux DevOps 操作系统 GNU

曾经辉煌一世的流媒体协议RTMP是什么样的?它能完全被取代吗?一文带您走进RTMP的世界

wljslmz

RTMP 7月月更 流媒体协议

Linux Lab 会议或直播安排与记录

贾献华

7月月更

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