织梦CMS - 轻松建站从此开始!

24小时在线平台

当前位置: 24小时在线平台 > 部署教程大全 > 文章页

AnythingLLM:34K Star!一键上传文件轻松打造个人知识库,构建只属于你的AI助手,附

时间:2025-05-14 09:37来源: 作者:admin 点击: 1 次
AnythingLLM 是一个全栈应用程序,能够将文档、资源转换为上下文,支持多种大语言模型和向量数据库,提供智能聊天功能。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日分享大模型与 AI 领域的最新开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

大家好,我是蚝油菜花,今天跟大家分享一下 AnythingLLM 这个能够将任何文档、资源转换为 AI 知识库,构建私人 AI 助手的强大应用。

🚀 快速阅读

AnythingLLM 是一个全栈应用程序,能够将任何文档、资源转换为上下文,以便大语言模型(LLM)在聊天期间作为参考使用。

核心功能:支持多用户管理、多种 LLM 和向量数据库,提供智能聊天功能。

技术原理:通过工作区隔离不同内容,确保上下文清晰,并支持本地和云部署。

AnythingLLM 是什么

AnythingLLM-show.gif

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

通过 AnythingLLM,用户可以轻松构建一个私有 ChatGPT,不再受制于第三方平台。您可以本地运行,也可以远程托管,并能够与您提供的任何文档智能聊天。

AnythingLLM 的主要功能

多用户实例支持和权限管理:支持多个用户同时使用,管理员可以设置不同用户的权限。

工作区内的智能体 Agent:Agent 可以浏览网页、运行代码等,帮助用户更高效地处理任务。

可嵌入聊天窗口:为您的网站定制的可嵌入聊天窗口,方便集成到现有系统中。

多种文档类型支持:支持 PDF、TXT、DOCX 等多种文档格式。

文档管理:通过简单的用户界面管理向量数据库中的文档。

两种对话模式:提供“聊天”和“查询”两种模式,满足不同的需求。

引用文档内容:聊天中会自动引用相关文档的内容,确保信息准确。

高效处理超大文档:只需要一次嵌入即可处理超大文档,节省时间和成本。

开发者 API:提供全套的开发人员 API,便于自定义集成。

AnythingLLM 的技术原理

前端:基于 ViteJS + React 构建,提供直观的用户界面,方便用户创建和管理 LLM 可使用的所有内容。

后端:基于 NodeJS Express 服务器,处理所有交互并进行向量数据库管理和 LLM 交互。

Docker:提供 Docker 指令和构建过程,方便用户从源代码构建和部署。

文档收集器:基于 NodeJS Express 服务器,负责从 UI 处理和解析文档。

AnythingLLM 的最小要求

为了确保 AnythingLLM 的顺利运行,建议满足以下最低要求:

内存:至少 2GB RAM

磁盘存储:推荐 10GB 以上,具体取决于存储的数据量(文档、向量、模型等)

软件:需要安装 docker,以及 yarn 和 node(用于本地开发)

LLM 访问:需要访问本地或远程运行的语言模型

如何运行 AnythingLLM 1. 设置开发环境

安装依赖:在仓库根目录下运行 yarn setup,填充每个应用程序部分所需的 .env 文件。

启动服务器:运行 yarn dev:server 启动本地服务器。

启动前端:运行 yarn dev:frontend 启动本地前端。

启动文档收集器:运行 yarn dev:collector 启动文档收集器。

2. 自托管部署

Mintplex Labs 提供了多种部署方法,包括 Docker、AWS、GCP、Digital Ocean 和 Render.com。下面选择 Docker 作为部署方法进行详细介绍。

推荐使用 Docker 进行部署

为了确保 AnythingLLM 的最佳性能和稳定性,推荐使用 Docker 化部署。以下是详细的步骤:

1. 拉取最新镜像

首先,从 Docker Hub 拉取最新的 AnythingLLM 镜像:

docker pull mintplexlabs/anythingllm 2. 持久化存储

为了确保数据在容器重启后不会丢失,建议将容器的存储卷挂载到主机的文件夹中。这样可以在更新镜像时保留现有数据。

Linux/MacOS export STORAGE_LOCATION=$HOME/anythingllm && \ mkdir -p $STORAGE_LOCATION && \ touch "$STORAGE_LOCATION/.env" && \ docker run -d -p 3001:3001 \ --cap-add SYS_ADMIN \ -v ${STORAGE_LOCATION}:/app/server/storage \ -v ${STORAGE_LOCATION}/.env:/app/server/.env \ -e STORAGE_DIR="/app/server/storage" \ mintplexlabs/anythingllm Windows # 在 PowerShell 终端中运行 $env:STORAGE_LOCATION="$HOME\Documents\anythingllm"; ` If(!(Test-Path $env:STORAGE_LOCATION)) { New-Item $env:STORAGE_LOCATION -ItemType Directory}; ` If(!(Test-Path "$env:STORAGE_LOCATION\.env")) { New-Item "$env:STORAGE_LOCATION\.env" -ItemType File}; ` docker run -d -p 3001:3001 ` --cap-add SYS_ADMIN ` -v "$env:STORAGE_LOCATION`:/app/server/storage" ` -v "$env:STORAGE_LOCATION\.env:/app/server/.env" ` -e STORAGE_DIR="/app/server/storage" ` mintplexlabs/anythingllm; 3. 使用 Docker Compose

如果你更喜欢使用 Docker Compose,可以使用以下配置文件:

version: '3.8' services: anythingllm: image: mintplexlabs/anythingllm container_name: anythingllm ports: - "3001:3001" cap_add: - SYS_ADMIN environment: - STORAGE_DIR=/app/server/storage - JWT_SECRET="make this a large list of random numbers and letters 20+" - LLM_PROVIDER=ollama - OLLAMA_BASE_PATH=http://127.0.0.1:11434 - OLLAMA_MODEL_PREF=llama2 - OLLAMA_MODEL_TOKEN_LIMIT=4096 - EMBEDDING_ENGINE=ollama - EMBEDDING_BASE_PATH=http://127.0.0.1:11434 - EMBEDDING_MODEL_PREF=nomic-embed-text:latest - EMBEDDING_MODEL_MAX_CHUNK_LENGTH=8192 - VECTOR_DB=lancedb - WHISPER_PROVIDER=local - TTS_PROVIDER=native - PASSWORDMINCHAR=8 volumes: - anythingllm_storage:/app/server/storage restart: always volumes: anythingllm_storage: driver: local driver_opts: type: none o: bind device: /path/on/local/disk 4. 访问用户界面

完成上述步骤后,访问 :3001 即可使用 AnythingLLM 的用户界面。所有数据和进度将持久保存,即使在容器重建或从 Docker Hub 拉取新镜像后也不会丢失。

常见问题解决 无法连接到本地服务

如果你在 Docker 容器中无法连接到主机上的服务(如 Chroma、LocalAI 或 LMStudio),请确保将 localhost 替换为 host.docker.internal。例如,如果 Ollama 在主机上运行并绑定到 :11434,则应将连接 URL 设置为 :11434。

注意:在 Linux 上, 不可用,应使用 作为替代。

API 无法工作,无法登录,LLM 离线

如果你在远程机器(如 EC2)上运行 Docker 容器,并且无法通过 :3001 访问 API,请确保在 frontend/.env.production 中设置正确的 API 基础 URL。例如,如果 Docker 实例的 IP 地址为 192.186.1.222,则应将 VITE_API_BASE 设置为 VITE_API_BASE="http://192.186.1.222:3001/api"。

Ollama 问题

如果你遇到与 Ollama 相关的错误(如 llama:streaming - could not stream chat. Error: connect ECONNREFUSED 172.17.0.1:11434),请参考 Ollama 常见问题 进行排查。

资源

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日分享大模型与 AI 领域的最新开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

(责任编辑:)
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:
发布者资料
查看详细资料 发送留言 加为好友 用户等级: 注册时间:2025-05-17 16:05 最后登录:2025-05-17 16:05
栏目列表
推荐内容
  • 天翼云服务器怎么搭建https

    为了保证网络交流的安全性,越来越多的网站开始采用HTTPS协议。而为了使用HTTPS协议,需要在服务器上安装SSL证书。而对于天翼云服务器而言,搭建HTTPS协...

  • AI赋能住房公积金业务管理提质增效

    中国建设新闻网是由住房和城乡建设部主管,中国建设报社主办的互联网站。坚持“大资源平台,大数据高地”的目标,为住房城乡建设部提供信息参考与决策支持、为地方和住建系...

  • 【VMware vSAN 7.0】4.1 选择或验证存储设备的兼容性

    文章浏览阅读1.2k次。部署vSAN之前的一个重要步骤是通过查阅VMware 兼容性指南确认存储设备、驱动程序和固件与vSAN兼容。验证vSAN兼容性的方法有多...

  • 数据软件即服务:混合部署架构介绍

    由于要集成客户的数据堆栈,所以我们需要提供最高级别的安全性和遵从性。问题是:我们将如何构建它们?SaaS 吗?On-prem 吗?还是别的什么方法?为了实现这些...

  • 黑马程序员Docker快速入门到项目部署(学习笔记)

    文章浏览阅读5.1k次,点赞24次,收藏65次。命令说明文档地址拉取镜像推送镜像到DockerRegistry查看本地镜像docker rmi删除本地镜像doc...

  • 云服务器 ECS 部署前后端分离项目(若依)详细教程

    文章浏览阅读800次。前言自己白嫖到云服务器一个月,岂不是要赶快享受一下,另外也早就有买服务器部署自己项目的想法,刚好机会来了。来着网络对应若依前后端分离项目来...

  • 阿里云云服务器网站域名管理

    阿里云云服务器(Alibaba Cloud Elastic Compute Service,ECS)是阿里巴巴集团旗下的云计算服务之一,它提供稳定可靠的虚拟机实...

  • jboss部署上传文件问题

    以下内容是CSDN社区关于jboss部署上传文件问题相关内容,如果想了解更多关于Java EE社区其他内容,请访问CSDN社区。...

  • 天风证券:给予嘉益股份买入评级

      天风证券股份有限公司孙谦,孙海洋近期对嘉益股份进行研究并发布了研究报告《下游景气及供应链稀缺性延续》,给予嘉益股份买入评级。  嘉益股份(301004)  ...

  • 合肥经济学院部署校园消防安全教育示范基地建设工作

    近日,合肥经济学院召开专题会议,部署校园消防安全教育示范基地建设工作。该院党委副书记、副院长吴国兵,副院长伍德勤,安全管理处、学生处、教务处、后勤管理处等相关部...