AnythingLLM – 开源的全栈 AI 客户端,支持本地部署和API集成

Ai项目5天前发布 Agixxw
140 0 0

AnythingLLM是什么

AnythingLLM 是开源免费且支持多模态交互的全栈 AI 客户端。AnythingLLM支持文本、图像和音频等多种输入方式,将任何文档或内容转化为上下文,供各种语言模型(LLM)在对话中使用。AnythingLLM支持本地运行和远程部署,提供多用户管理、工作区隔离、丰富的文档格式支持以及强大的 API 集成。所有数据默认存储在本地,确保隐私安全。AnythingLLM支持多种流行的 LLM 和向量数据库,适合个人用户、开发者和企业使用。

AnythingLLM的主要功能

  • 多模态交互:支持文本、图像和音频等多种输入方式,提供更丰富的交互体验。
  • 文档处理与上下文管理:将文档划分为独立的“工作区”,支持多种格式(如PDF、TXT、DOCX等),保持上下文隔离,确保对话的清晰性。
  • 多用户支持与权限管理:Docker版本支持多用户实例,管理员能控制用户权限,适合团队协作。
  • AI代理与工具集成:支持在工作区内运行AI代理,执行网页浏览、代码运行等任务,扩展应用的功能。
  • 本地部署与隐私保护:默认情况下,所有数据(包括模型、文档和聊天记录)存储在本地,确保隐私和数据安全。
  • 强大的API支持:提供完整的开发者API,方便用户进行自定义开发和集成。
  • 云部署就绪:支持多种云平台(如AWS、GCP等),方便用户根据需求进行远程部署。

AnythingLLM的项目地址

获取AnythingLLM安装包,扫码关注回复:AnythingLLM

AnythingLLM的技术原理

  • 前端:用ViteJS和React构建,提供简洁易用的用户界面,支持拖拽上传文档等功能。
  • 后端:基于NodeJS和Express,负责处理用户交互、文档解析、向量数据库管理及与LLM的通信。
  • 文档处理:基于NodeJS服务器解析和处理上传的文档,将其转化为向量嵌入,存储在向量数据库中。
  • 向量数据库:用LanceDB等向量数据库,将文档内容转化为向量嵌入,便于在对话中快速检索相关上下文。
  • LLM集成:支持多种开源和商业LLM(如OpenAI、Hugging Face等),用户根据需求选择合适的模型。
  • AI代理:在工作区内运行AI代理,代理能执行各种任务(如网页浏览、代码执行等),扩展应用的功能。

AnythingLLM支持的模型和数据库

  • 大型语言模型(LLMs):支持多种开源和闭源模型,如 OpenAI、Google Gemini Pro、Hugging Face 等。
  • 嵌入模型:支持 AnythingLLM 原生嵌入器、OpenAI 等。
  • 语音转文字和文字转语音:支持多种语音模型,包括 OpenAI 和 ElevenLabs。
  • 向量数据库:支持 LanceDB、Pinecone、Chroma 等。

AnythingLLM的使用和部署

  • 桌面版
    • 系统要求
      • 操作系统:支持 Windows、MacOS 和 Linux。
      • 硬件要求:建议至少 8GB 内存,推荐 16GB 或更高。
    • 下载和安装:访问 AnythingLLM 官方网站。根据操作系统选择对应的安装包。
    • 安装程序
      • Windows:双击安装程序并按照提示完成安装。
      • MacOS:双击 DMG 文件,将应用程序拖入“应用程序”文件夹。
      • Linux:基于包管理器安装 DEB 或 RPM 文件。
    • 启动应用:安装完成后,打开 AnythingLLM 应用。
    • 初始化设置
      • 选择模型:首次启动时,选择一个语言模型(LLM)。
      • 配置向量数据库:选择默认的向量数据库(如 LanceDB)或配置其他支持的数据库。
    • 创建工作区:点击“新建工作区”,为项目或文档创建一个独立的工作区。上传文档(如 PDF、TXT、DOCX 等),应用自动解析并生成向量嵌入,存储在向量数据库中。
    • 开始对话
      • 在工作区内输入问题或指令,应用根据上传的文档内容生成智能回答。
      • 支持多模态交互,上传图片或音频文件,应用根据内容进行处理。
  • Docker 版
    • 系统要求:
      • 操作系统:支持 Linux、Windows(WSL2)和 MacOS。
      • 硬件要求:建议至少 8GB 内存,推荐 16GB 或更高。
      • Docker 环境:需要安装 Docker 和 Docker Compose。
    • 部署步骤
      • 访问 GitHub 仓库:前往 AnythingLLM GitHub 仓库
      • 克隆仓库
git clone https://github.com/Mintplex-Labs/anything-llm.git
cd anything-llm
    • 配置环境变量
      • 在项目根目录下运行以下命令,生成 .env 文件:
yarn setup
      • 编辑 server/.env.development 文件,配置 LLM 和向量数据库的参数。
    • 启动 Docker 容器
docker-compose up -d
    • 访问应用:打开浏览器,访问 http://localhost:3000,进入 AnythingLLM 的 Web 界面。
    • 使用方法
      • 创建工作区:与桌面版类似,创建工作区并上传文档。
      • 多用户管理:Docker 版支持多用户登录和权限管理,管理员在后台设置用户权限。
      • 嵌入式聊天小部件:Docker 版支持生成嵌入式聊天小部件,支持嵌入到网站中。
    • 高级功能
      • 自定义集成:基于 API 和插件扩展应用功能。
      • 云平台部署:支持在 AWS、GCP、Digital Ocean 等云平台上部署。

AnythingLLM的应用场景

  • 企业内部知识管理与问答:企业将内部文档(如知识库、手册、项目文档等)上传到 AnythingLLM 的工作区中,员工用对话形式快速查询和获取相关信息,提高工作效率。
  • 学术研究与文献整理:研究人员将大量学术文献、论文等上传到工作区,快速提取关键信息、总结观点,辅助研究工作。
  • 个人学习与资料整理:学生或个人学习者将学习资料(如电子书、笔记等)导入,用对话形式复习和巩固知识,提升学习效率。
  • 内容创作:内容创作者获取创意灵感、润色文本或生成大纲,辅助创作过程。
  • 多语言文档翻译与理解:用户上传多语言文档,快速获取文档内容的翻译版本或关键信息,打破语言障碍。
© 版权声明

相关文章

暂无评论

none
暂无评论...