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

RayRay
OpenGPTsLangGraphLangChainLLM开源Github开源项目

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的潜力,未来值得期待!

编辑推荐精选

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

热门AI工具AI办公办公工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

模型训练热门AI工具内容创作智能问答AI开发讯飞星火大模型多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

热门AI工具生产力协作转型TraeAI IDE
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

AI助手热门AI工具AI创作AI辅助写作讯飞绘文内容运营个性化文章多平台分发
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多