OpenAI最近推出了OpenAI GPTs——一个构建定制化AI代理的无代码“应用商店”,随后LangChain开发了类似的开源工具OpenGPTs。OpenGPTs是一款低代码的开源框架,专用于构建定制化的人工智能代理。因为Redis具有高速和稳定性的优点,所以LangChain选择了Redis来作为OpenGPTs的默认向量数据库。
文章速览:
OpenGPTs简介
Redis在OpenGPTs中的作用
在本地使用OpenGPTs
在云端使用OpenGPTs
Redis与LangChain赋能创新
一、OpenGPTs简介
通过几个配置步骤,我们可以用OpenGPTs构建一个精通Redis的机器人,名为“RedisGuru”。
以下是我们选择的LLM、系统消息和工具的示例,包括DuckDuckGo搜索、维基百科搜索,以及通过Kay.ai访问的公共新闻稿。
配置并部署RedisGuru后,可以测试代理如何运行:
此外,我们还可以查询有关Redis数据结构的问题。可以看到,RedisGuru记住了我的名字:
我们构建的这个RedisGuru代理只是一个应用示例。你也可以构建各类应用,比如电子邮件文案编辑器、智能研究助理、代码审查员等。
二、Redis在OpenGPTs中的作用
在这个OpenGPTs演示的背后,Redis提供了一个强大且高性能的数据层,是 OpenGPTs 技术栈不可或缺的一部分。
Redis可以持久化用户聊天会话(线程)、代理配置和嵌入式文档块,并用于向量数据库检索。
01
用户聊天会话
为了在对话中维持“状态”,Redis为OpenGPTs提供了用户与AI代理间的持久聊天线程。这些聊天会话也被输入到LLM中,以提供当前对话状态的上下文信息。
02
代理配置
为了支持多租户代理架构,Redis为OpenGPTs提供了一个远程的、低延迟的存储层。当应用程序启动时,它从Redis读取指定的代理设置,然后开始处理请求。
03
向量数据库用于RAG
为了让对话基于实际情况,OpenGPTs允许我们上传“知识”源,以便LLM将其与生成的答案结合。通过一种称为检索增强生成(RAG)的过程,OpenGPTs将上传的文档存储在Redis中,并提供实时向量搜索,以检索与LLM相关的上下文。
这些功能是Redis平台的一部分,通过我们的LangChain + Redis集成融入到应用程序中。
Redis与LangChain的OpenGPTs集成带来了更高的灵活性、可扩展性以及实时处理和搜索能力。处理多样化数据结构的能力是Redis成为OpenGPTs记忆功能的首选解决方案。
三、在本地使用OpenGPTs
如果想亲自体验OpenGPTs,你可以在项目的README文件中找到更详细的指南。以下是一个快速概述:
1、安装后端依赖:克隆项目仓库,然后导航到后端目录并安装必要的Python依赖项。
cd backendpip install -r requirements.txt
2、连接Redis和OpenAI:OpenGPTs使用Redis作为LLM的记忆库,使用OpenAI进行LLM的生成和嵌入。设置环境变量REDIS_URL和OPENAI_API_KEY,以连接到您的Redis实例和OpenAI账户。
export OPENAI_API_KEY=your-openai-api-keyexport REDIS_URL=redis://your-redis-url
3、启动后端服务器:在本地机器上运行LangChain服务器,提供应用程序服务。
langchain serve --port=8100
4、启动前端:在前端目录中,使用yarn启动开发服务器。
cd frontendyarnyarn dev
5、在浏览器中打开http://localhost:5173/,与您的本地OpenGPTs部署进行交互。
四、在云端使用OpenGPTs
如果希望在没有本地设置的情况下使用OpenGPTs,可以尝试在谷歌云上部署。另外,你还可以访问由LangChain、LangServe和Redis支持的托管预览部署。这种部署展示了OpenGPTs的可定制性和易用性。
五、Redis与LangChain赋能创新
Redis企业版作为一款企业级的低延迟向量数据库,在支持生成性AI项目方面具有独特优势。其不仅提供向量搜索,还提供多功能数据结构,能有效满足LLMs的应用状态需求。这个强大的平台提供了优异的可扩展性和性能,Redis借此成为生成式AI领域的重要工具。
全部0条评论
快来发表一下你的评论吧 !