Anything LLM,一个全栈应用程序,使您能够将任何文档、资源或内容片段转换为任何LLM可以在聊天期间用作参考的上下文。该应用程序允许您选择要使用的LLM或矢量数据库,并支持多用户管理和权限。
AnythingLLM 将您的文档划分为名为 workspaces 的对象。工作区的功能很像线程,但增加了文档的容器化。工作区可以共享文档,但它们不会相互通信,因此您可以保持每个工作区的上下文干净。
AnythingLLM 的一些很酷的功能
- 多用户实例支持和权限
- 多种文档类型支持(PDF、TXT、DOCX 等)
- 通过简单的 UI 管理矢量数据库中的文档
- 两种聊天模式 conversation 和 query 。对话保留了之前的问题和修正。Query 是针对您的文档的简单 QA
- 聊天内引用链接到原始文档来源和文本
- 简单的技术栈,快速迭代
- 100% 云部署就绪。
- “自带LLM”模式。
- 用于管理非常大的文档的极其有效的成本节约措施。您永远不需要支付多次嵌入大量文档或成绩单的费用。比其他文档聊天机器人解决方案成本效益高 90%。
-
用于自定义集成的完整开发人员 API!
支持的LLMs、嵌入模型和矢量数据库
支持的LLMs:
- 任何开源 llama.cpp 兼容模型
- OpenAI
- Azure OpenAI Azure
- Anthropic ClaudeV2
- LM Studio(所有型号)
- LocalAi(所有型号)
支持的嵌入模型:
- OpenAI
- Azure OpenAI Azure
- Anthropic ClaudeV2
- LM Studio(所有型号)
-
LocalAi(所有型号)
支持的矢量数据库:
- LanceDB (default)
- Pinecone
- Chroma
- Weaviate
- QDrant
技术概述
monorepo 包含三个主要部分:
- collector :Python工具,使您能够快速将在线资源或本地文档转换为LLM可用格式。
- frontend :一个 viteJS + React 前端,您可以运行它来轻松创建和管理 LLM 可以使用的所有内容。
- server :一个nodeJS + Express服务器,用于处理所有交互并完成所有vectorDB管理和LLM交互。
- docker :Docker 说明和构建过程+从源代码构建的信息。
缺点
- 界面目前不可定制
- 没有API接口
- 支持的LLM、向量数据库还不够多
项目链接
https://github.com/Mintplex-Labs/anything-llm