Logo

OpenGPTs:开源版GPT商店的强大替代方案

OpenGPTs:开启AI助手的无限可能

在人工智能快速发展的今天,聊天机器人和AI助手正在改变我们与技术互动的方式。而OpenGPTs项目的出现,为开发者和企业提供了一个强大的开源替代方案,可以创建高度定制化的AI助手,突破了闭源解决方案的限制。让我们深入了解这个激动人心的项目,看看它如何为AI助手的开发带来新的可能性。

什么是OpenGPTs?

OpenGPTs是一个开源项目,旨在创造类似于OpenAI的GPTs和Assistants API的体验。它由LangGraph提供支持,这是一个用于创建agent运行时的框架。此外,它还建立在LangChain、LangServe和LangSmith等技术之上。OpenGPTs最大的优势在于它给予用户更多的控制权,允许用户灵活配置多个关键组件:

  • 语言模型(LLM):从LangChain提供的60多个选项中选择
  • 提示词:使用LangSmith进行调试
  • 工具:从LangChain的100多个工具中选择,或轻松编写自己的工具
  • 向量数据库:从LangChain的60多个向量数据库集成中选择
  • 检索算法
  • 聊天历史数据库

最重要的是,OpenGPTs让用户完全掌控应用程序的认知架构。目前,它实现了三种不同的架构:

  1. 助手(Assistant)
  2. RAG(检索增强生成)
  3. 聊天机器人(Chatbot)

由于是开源项目,如果这些预设架构不能满足需求,用户可以轻松修改或创建自己的架构。

OpenGPTs配置界面

OpenGPTs的核心特性

OpenGPTs strive了尽可能实现与OpenAI功能对等,同时提供更多的灵活性:

  1. 沙盒环境:提供了一个导入、测试和修改现有聊天机器人的环境。所有聊天机器人都以代码形式存在,便于编辑。

  2. 自定义动作:使用OpenAPI规范为聊天机器人定义额外功能,通过添加工具来支持。

  3. 知识文件:允许附加额外文件,供聊天机器人参考。可以通过UI或API上传文件,由检索工具使用。

  4. 工具集成:提供基本工具,如网页浏览、图像创建等。默认启用DuckDuckGo搜索和Python REPL工具。

  5. 分析功能:使用LangSmith查看和分析聊天机器人的使用数据。

  6. 草稿功能:保存和共享正在创建的聊天机器人草稿,支持保存配置。

  7. 发布功能:通过LangServe部署,公开分发完成的聊天机器人。

  8. 共享管理:通过LangServe部署,设置和管理聊天机器人的共享。

  9. 市场功能:搜索和部署其他用户创建的聊天机器人(即将推出)。

OpenGPTs的认知架构

OpenGPTs支持三种不同的认知架构,每种架构都有其特点和适用场景:

1. 助手(Assistant)

助手可以配备任意数量的工具,并使用LLM来决定何时使用它们。这使得助手成为最灵活的选择,但它们只能与少数模型良好配合,可靠性也可能较低。

创建助手时,需要指定以下内容:

  • 语言模型:只有少数语言模型可以可靠使用,如GPT-3.5、GPT-4、Claude和Gemini。
  • 工具:可以是预定义工具或从上传文件构建的检索器。可以选择任意数量的工具。

助手的认知架构可以看作是一个循环:

  1. 首先,调用LLM来决定是否采取行动。
  2. 如果决定采取行动,则执行这些行动并返回循环。
  3. 如果决定不采取行动,则LLM的回应作为最终回应,结束循环。

助手架构图

这种架构非常强大和灵活,可能最接近人类的思考方式。然而,它可能不太可靠,通常只有性能更强的模型才能很好地工作(即使如此也可能出错)。

2. RAGBot

RAGBot是一个专注于检索的GPT,具有简单直接的架构:

  1. 首先检索一组文档。
  2. 然后将这些文档作为系统消息传递给语言模型,以生成响应。

与助手相比,RAGBot更加结构化(但功能较弱)。它总是会查找信息,这在已知用户需要查询信息时很有用,但如果用户只是想进行普通对话,可能会造成资源浪费。

RAGBot架构图

尽管架构较简单,RAGBot仍有其优势:

  • 可以与更广泛的模型(包括许多开源模型)良好配合。
  • 适用于不需要助手灵活性的使用场景(例如,已知用户每次都会查找信息)。
  • 与纯聊天机器人相比,可以使用外部知识。

3. ChatBot

ChatBot是最简单的架构 - 仅仅是对语言模型的调用,通过系统消息进行参数化。这允许GPT承担不同的角色和性格。虽然功能远不如助手或RAGBot(无法访问外部数据源或计算),但仍然有其价值。许多流行的GPT本质上就是系统消息,而CharacterAI也主要依赖于系统消息就取得了巨大成功。

ChatBot架构图

如何使用OpenGPTs

要开始使用OpenGPTs,您可以按照以下步骤操作:

  1. 克隆仓库

    git clone https://github.com/langchain-ai/opengpts.git
    cd opengpts
    
  2. 设置环境变量: 创建一个.env文件,添加必要的API密钥和配置信息。

  3. 安装依赖: 对于后端,使用poetry管理依赖:

    cd backend
    poetry install
    

    对于前端:

    cd frontend
    npm install
    
  4. 启动应用: 启动后端服务器和前端开发服务器。

  5. 访问应用: 打开浏览器,访问http://localhost:5173即可开始使用OpenGPTs。

结语

OpenGPTs为AI助手的开发开辟了新的道路。通过提供更多的控制权和定制选项,它使开发者能够创建真正符合特定需求的AI助手。无论是想要构建一个强大的多功能助手,还是专注于特定领域的知识检索机器人,或是简单的角色扮演聊天机器人,OpenGPTs都能满足这些需求。

随着项目的不断发展和社区的贡献,我们可以期待看到更多创新的AI应用被开发出来。OpenGPTs不仅是一个工具,更是一个平台,它正在重新定义我们与AI互动的方式,为未来的AI应用开发铺平道路。

如果你对AI开发感兴趣,不妨深入探索OpenGPTs,看看它能为你的项目带来什么样的可能性。开源的力量加上AI的潜力,未来值得期待!

最新项目

Project Cover
豆包MarsCode
豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。
Project Cover
AI写歌
Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。
Project Cover
商汤小浣熊
小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。
Project Cover
有言AI
有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。
Project Cover
Kimi
Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。
Project Cover
吐司
探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。
Project Cover
SubCat字幕猫
SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。
Project Cover
AIWritePaper论文写作
AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。
Project Cover
稿定AI
稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。
投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号