3ChatGPT 可以落地的一个行业就是建立私有知识库,将 ChatGPT 落地 TO B 行业,可基于 ChatGPT 和私有数据构建智能知识库和个性化 AI。
这个应该是 ChatGPT 最热的一个创业方向。
可能出现的产品,有智能 AI 客服、企业内部 / 外部知识库、个人知识库,适用于医疗、法律、金融等行业。
在 ChatGPT 下,建立私有知识库,只需上传文档、定义配置、Chat 就可搭建 AI 客服 / AI 知识库。
下面介绍几个开源的,基于 ChatGPT 建立的私有知识库,也会不断的更新。
技术流程:
大部分的项目的基本流程如下:
1. 把我们的文档变为向量数据库。
2. 搜索向量数据库,把相似的数据和问题作为 prompt,输入到大模型
相关项目
Quivr:让数据管理更智能更高效
摘要:Quivr 是一个功能强大而高效的数据管理工具,可将本地文件向量化并存储到云端,随时可查询对话。它采用先进的人工智能技术,支持多种文件格式,如文本、Markdown、PDF、音频和视频等,并支持生成式人工智能。Quivr 专为速度和效率而设计,保证数据安全可靠,另外还是开源且免费使用的。
项目地址:https://github.com/StanGirard/quivr
gpt4-pdf-chatbot-langchain-chroma
介绍如何使用 GPT-4 api 基于 LangChain、Chroma、Typescript、Openai 和 Next.js 等技术栈创建可处理多个大型 PDF 文件的 ChatGPT 聊天机器人。LangChain 是一个构建可扩展 AI/LLM 应用和聊天机器人的框架,Chroma 则用于存储嵌入向量和文本,以便以后检索类似 PDF 文档。包含操作指南、教程视频和错误排查部分。如果有疑问可加入 Discord 交流。
项目地址:https://github.com/mayooear/gpt4-pdf-chatbot-langchain
langchain-ChatGLM
一种基于 langchain 思想实现的本地知识库问答应用,旨在为中文场景与开源模型提供友好支持,可离线运行。该应用能够使用 ChatGLM-6B 等大语言模型直接接入,或通过 fastchat api 形式接入其他模型。本项目实现基于文件加载,文本分割,文本向量化,问题向量化,文本匹配,上下文添加等流程,可全部使用开源模型离线私有部署。
项目地址:https://github.com/imClumsyPanda/langchain-ChatGLM
PrivateGPT
通过利用本地 LLMs 的能力,在不依赖于互联网的情况下创建一个针对您的文档的问答聊天机器人。确保完全的隐私和安全性,因为您的数据永远不会离开您的本地执行环境。即使没有互联网连接,也可以无缝地处理和查询您的文档。受 imartinez 启发。
项目地址:https://github.com/imClumsyPanda/langchain-ChatGLM
LangChain-ChatGLM-Webui
受 langchain-ChatGLM 启发, 利用 LangChain 和 ChatGLM-6B 系列模型制作的 Webui, 提供基于本地知识的大模型应用.
目前支持上传 txt、docx、md、pdf 等文本格式文件, 提供包括 ChatGLM-6B 系列、Belle 系列等模型文件以及 GanymedeNil/text2vec-large-chinese、nghuyong/ernie-3.0-base-zh、nghuyong/ernie-3.0-nano-zh 等 Embedding 模型.
项目地址:https://github.com/thomas-yanxin/LangChain-ChatGLM-Webui
ChatFiles
上传文件然后与之对话.
项目地址:https://github.com/guangzhengli/ChatFiles
doc-chatbot
该聊天机器人使用 GPT-3.5-turbo 训练模型,基于 Pinecone 和 LangChain 开发,支持多个主题、交谈和文件类型,并具有储存聊天记录等功能。
项目地址:https://github.com/dissorial/doc-chatbot
pdfGPT
当你将大量的文本传递给 Open AI 时,它会受到 4K 令牌限制。它无法接受整个 pdf 文件作为输入。有时,Open AI 变得过于啰嗦,并返回与您的查询无关的、不直接相关的回复。这是因为 Open AI 使用了低质量的嵌入。ChatGPT 不能直接与外部数据交互。有一些解决方案使用 Langchain,但如果实现不正确,它会 “吃掉” 大量令牌。
项目地址:https://github.com/bhaskatripathi/pdfGPT
ChatLongDoc
本项目打破了使用 OpenAI Chat-LLMs(如 ChatGPT)的长度限制,使您能够与任何长文档进行交流。它加快了对内容的理解,促进了有价值的见解的获取。与 ChatPDF 相比,它支持各种文件格式,包括 PDF、doc、docx、txt 和 Web URL。此项目的实现易于跟随、扩展,并且对于集成到其他应用程序非常高效。
欢迎您查看我们的 ChatGPT 插件和 Chrome 扩展。
项目地址:https://github.com/webpilot-ai/ChatLongDoc
Robby-chatbot
Robby-chatbot 是一个 AI chatbot,旨在使用户能更直观地讨论他们的 CSV、PDF、TXT 数据和 YTB 视频等内容。该聊天机器人具有会话式记忆功能,并可在 Python3.8 或更高版本上本地运行。文章介绍了如何设置和本地运行该服务的步骤,并邀请人士为该项目贡献代码。
项目地址:https://github.com/yvann-hub/Robby-chatbot
MultiPDF Chat App 与多个 PDF 文档聊天
MultiPDF Chat App 是一个 Python 应用程序,允许您与多个 PDF 文档进行聊天。您可以用自然语言询问关于 PDF 的问题,应用程序将根据文档内容提供相关响应。该应用程序利用语言模型生成准确的答案。请注意,该应用程序仅会回答与已加载的 PDF 相关的问题。
项目地址:https://github.com/alejandro-ao/ask-multiple-pdfs
embedchain
embedchain 是一个框架,可以轻松地在任何数据集上创建 LLM 驱动的聊天机器人。它将加载数据集、分块、创建嵌入和存储在向量数据库中的整个过程抽象出来。您可以使用. add 和. add_local 函数添加单个或多个数据集,然后使用. query 函数从添加的数据集中查找答案。如果您想要创建一个包含 1 个 YouTube 视频、1 本 PDF 书籍、2 篇他的博客文章以及您提供的问题和答案对的 Naval Ravikant 机器人,您只需要添加视频、PDF 和博客文章的链接即可,embedchain 将为您创建一个机器人。
项目地址:https://github.com/embedchain/embedchain
llama_farm
使用本地 Llama LLM 或 OpenAI 进行聊天,讨论您的文档、YouTube 等等。
Danswer
Danswer 是一款开源的企业级问答工具,通过自然语言问答提供可靠的答案,并提供引用和参考来源。它具有智能的文档检索、AI 助手、用户认证、文档级访问管理等功能,并支持与 Slack、GitHub 和 Confluence 等各种工具的连接。Danswer 可使用 Docker Compose 或 Kubernetes 轻松部署,未来的更新包括聊天 / 对话支持、自定义端点和个性化搜索。Danswer 使用生成式 AI 模型,从内部文档中提供可靠的答案,并提供引用和源链接。它还具有智能的文档检索、解释用户意图的 AI 助手、用户认证和访问管理以及与 Slack 和 Confluence 等各种工具的连接。
项目地址:https://github.com/danswer-ai/danswer
AnythingLLM
AnythingLLM 是一款全栈应用程序,用户可以智能地与文档和资源进行对话,利用长期记忆解决方案和向量数据库。它提供了原子化管理文档、对话和查询两种聊天模式以及管理大型文档的成本节约措施。该应用程序包括三个主要部分:收集器(用于将资源转换为 LLM 格式)、前端(用于内容管理)和服务器(用于交互和 LLM 管理)。AnythingLLM 是一款全栈应用程序,使用户可以将任何文档或内容转换为可以被 AI 助手使用的数据。它支持商业 LLM 和开源 LLM,可以在本地运行或远程托管。该应用程序将文档分为工作空间,以便进行轻松的组织和上下文管理。它提供了对话和查询聊天模式、引用链接以及管理大型文档的成本节约措施。该代码库包括三个主要部分:收集器、前端和服务器。可以使用 Docker 进行简单设置,开发环境需要 yarn 和 node。欢迎贡献。
项目地址:https://github.com/Mintplex-Labs/anything-llm
相关技术
langchain
如何通过组合和连接多个 LLM 模型来构建强大且具有高度可定制性的应用程序。
项目地址:GitHub - hwchase17/langchain: ⚡ Building applications with LLMs through composability ⚡
Voyager
Voyager 是一个在内存向量集合上执行快速最近邻搜索的库。
ChatGPT PROMPTs Splitter
这是一个工具,可以安全地处理每个请求多达 15,000 个字符的块。
如果你还发现有别的,欢迎在评论区中讨论。