Project Icon

canopy

基于Pinecone的RAG开源框架,简化应用开发与部署

Canopy是基于Pinecone的开源RAG框架,支持从文本嵌入到上下文检索和生成的全流程应用开发。通过内置服务器和CLI工具,用户可以高效部署和评估RAG应用,优化文档聊天与查询功能。更多信息请参考我们的博客与教程。

Canopy 项目介绍

Canopy 是一个开源的检索增强生成(Retrieval Augmented Generation, RAG)框架,它基于 Pinecone 矢量数据库构建。该框架旨在加速和简化 RAG 应用程序的开发,用户只需通过几个简单的命令,就能够使用文档或文本数据进行交互。

项目功能概览

Canopy 主要负责构建 RAG 应用的繁重工作,包括文本数据划分和嵌入、聊天记录管理、查询优化、上下文检索(例如提示工程)以及增强生成等。Canopy 提供了一个可配置的内置服务器,用户可以轻松将一个 RAG 驱动的聊天应用部署到现有的聊天界面中,或者使用 Canopy 库构建自己的定制 RAG 应用。此外,Canopy 还提供了一个 CLI 工具,用户可以用它来评估他们的 RAG 工作流,并与非 RAG 工作流进行比较。

RAG 流程与 Canopy

Canopy 实现了完整的 RAG 流程,以防止虚构内容并增强语言模型(LLM)的表现。Canopy 有两个主要流程:知识库创建和聊天。在知识库创建流程中,用户上传文档,并将其转化为有意义的表示形式,存储在 Pinecone 的矢量数据库中。在聊天流程中,系统通过优化传入查询和聊天记录来检索最相关的文档,并生成有意义的上下文提交给 LLM 进行回答。

主要组成模块

Canopy 核心库

  1. ChatEngine:提供聊天界面以与数据交互。基于聊天消息历史,ChatEngine 通过形成相关查询给 ContextEngine,然后使用 LLM 生成有知识性的响应。
  2. ContextEngine:执行 RAG 的“检索”部分,利用基础的 KnowledgeBase 来检索最相关的文档,并形成一段连贯的文本上下文,作为 LLM 的提示。
  3. KnowledgeBase:管理 RAG 流程中的数据,它会自动划分和转化文本数据到文本嵌入,并将其存储在 Pinecone(默认)或 Qdrant 的矢量数据库中。

Canopy 服务器

这是一个基于 FastAPI、Uvicorn 和 Gunicorn 构建的网络服务,它将 Canopy 核心库封装为一个 REST API,可以方便地部署在生产环境中,并配有内置的 Swagger UI,方便测试和文档查看。

Canopy CLI

一个内置的开发工具,允许用户快速设置自己的 Canopy 服务器并测试其配置。只需三个 CLI 命令,用户就可以创建新的 Canopy 服务器,上传文档,并通过内置的聊天应用在终端中与 Chatbot 互动。内置聊天机器人还可以将含 RAG 的响应与本机 LLM 聊天机器人进行比较。

快速入门

使用 Canopy 可以快速构建一个简单的基于 RAG 的问答系统。以下是使用指南:

  1. 创建新的 Canopy 索引:运行 canopy new 命令,并遵循 CLI 指导。

  2. 上传数据:使用 canopy upsert 命令将数据上传到 Canopy 索引中。支持 jsonlparquetcsv 格式的文件。

  3. 启动 Canopy 服务器:运行 canopy start,即可使用任何支持 /chat.completion 接口的聊天应用。

项目贡献与高阶使用

如果希望贡献到 Canopy 项目,请参考官方的贡献指南。此外,用户可以将已有的 OpenAI 应用迁移到 Canopy 或在生产环境中运行 Canopy 服务器,甚至利用 Canopy 的 Docker 镜像进行更高效的部署。

Canopy 提供了强大的功能和灵活的配置,是构建 RAG 应用程序的理想选择。通过使用 Canopy,开发者可以专注于构建业务逻辑,而将复杂的技术细节交给框架处理。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号