什么是 AnythingLLM?

1 人赞同了该文章

AnythingLLM 是由 Mintplex Labs Inc. 开发的一款全栈应用程序, 全方位AI应用程序。与文档聊天,使用AI代理,高度可配置,多用户,无需繁琐的设置。 适用于桌面(Mac、Windows和Linux)的AnythingLLM!下载地址

这是一个全栈应用程序,可以将任何文档、资源(如网址链接、音频、视频)或内容片段转换为上下文,以便任何大语言模型(LLM)在聊天期间作为参考使用。此应用程序允许您选择使用哪个LLM或向量数据库,同时支持多用户管理并设置不同权限。

一个完全可定制的、私有的、多合一的 AI 应用程序,用于您的企业或组织,它基本上是一个具有许可的完整 ChatGPT,但具有任何 LLM、嵌入模型或向量数据库。

教程:Home ~ AnythingLLM (useanything.com)

地址:Mintplex-Labs/anything-llm: The all-in-one Desktop & Docker AI application with full RAG and AI Agent capabilities. (github.com)

安装教程:闲谈大模型(1):Anything LLM 在本地使用自己的大模型与 RAG - 知乎 (zhihu.com)

利用AnythingLLM构建自己的私人ChatGPT - 知乎 (zhihu.com)

产品概览

AnythingLLM是一个全栈应用程序,您可以使用现成的商业大语言模型或流行的开源大语言模型,再结合向量数据库解决方案构建一个私有ChatGPT,不再受制于人:您可以本地运行,也可以远程托管,并能够与您提供的任何文档智能聊天。

AnythingLLM将您的文档划分为称为workspaces (工作区)的对象。工作区的功能类似于线程,同时增加了文档的容器化。工作区可以共享文档,但工作区之间的内容不会互相干扰或污染,因此您可以保持每个工作区的上下文清晰。

AnythingLLM的一些酷炫特性

  • 多用户实例支持和权限管理
  • 工作区内的智能体Agent(浏览网页、运行代码等)
  • 为您的网站定制的可嵌入聊天窗口
  • 支持多种文档类型(PDF、TXT、DOCX等)
  • 通过简单的用户界面管理向量数据库中的文档
  • 两种对话模式:聊天查询。聊天模式保留先前的对话记录。查询模式则是是针对您的文档做简单问答
  • 聊天中会提供所引用的相应文档内容
  • 100%云部署就绪。
  • “部署你自己的LLM模型”。
  • 管理超大文档时高效、低耗。只需要一次就可以嵌入(Embedding)一个庞大的文档或文字记录。比其他文档聊天机器人解决方案节省90%的成本。
  • 全套的开发人员API,用于自定义集成!

文档管理
用户的文档和信息都存储在运行 AnythingLLM 的机器上,数据与实例相隔离,确保数据不会暴露或与其他客户共享存储2。

成本与隐私
AnythingLLM Desktop 是免费的,也可以通过 GitHub Repo 自托管。云托管起价为每月 25 美元,专为需要 AnythingLLM 功能但希望拥有 AnythingLLM 托管实例的企业或团队而构建

使用 AnythingLLM 可以完全控制与任何 LLM 和向量数据库的访问、权限和数据共享,能够完全离线运行,仅由本地运行的服务提供支持


支持的LLM、嵌入模型、转录模型和向量数据库

支持的LLM:

支持的嵌入模型:

支持的转录模型:

支持的向量数据库:

技术概览

这个单库由三个主要部分组成:

  • frontend: 一个 viteJS + React 前端,您可以运行它来轻松创建和管理LLM可以使用的所有内容。
  • server: 一个 NodeJS express 服务器,用于处理所有交互并进行所有向量数据库管理和 LLM 交互。
  • docker: Docker 指令和构建过程 + 从源代码构建的信息。
  • collector: NodeJS express 服务器,用于从UI处理和解析文档。

自托管

Mintplex Labs和社区维护了许多部署方法、脚本和模板,您可以使用它们在本地运行AnythingLLM。请参阅下面的表格,了解如何在您喜欢的环境上部署,或自动部署。

其他方案:不使用Docker配置AnythingLLM实例 →

如何设置开发环境

  • yarn setup 填充每个应用程序部分所需的 .env 文件(从仓库的根目录)。
  • 在开始下一步之前,先填写这些信息server/.env.development,不然代码无法正常执行。
  • yarn dev:server 在本地启动服务器(从仓库的根目录)。
  • yarn dev:frontend 在本地启动前端(从仓库的根目录)。
  • yarn dev:collector 然后运行文档收集器(从仓库的根目录)。

了解文档

了解向量缓存

远程信息收集与隐私保护

由 Mintplex Labs Inc 开发的 AnythingLLM 包含一个收集匿名使用信息的 Telemetry 功能。

怎样关闭

通过在服务器或 docker 的 .env 设置中将 DISABLE_TELEMETRY 设置为 “true” 来选择退出 Telemetry 远程信息收集功能。您也可以进入 AnythingLLM 应用 >>> 侧边栏最下方 >>> 隐私和数据 (Privacy&Data) >>> 找到最下方的 Anonymous Telemetry Enabled,点击绿色按钮让它变灰色,从而禁用信息收集功能。

更多产品

  • VectorAdmin:一个用于管理向量数据库的全方位GUI和工具套件。
  • OpenAI Assistant Swarm:一个智能体Agent就可以管理您所有的OpenAI助手。