用AnythingLLM构建专属知识库

什么是 AnythingLLM ?

AnythingLLMMintplex Labs Inc. 开发的一款可以与任何内容聊天的私人 ChatGPT,是高效、可定制、开源的企业级文档聊天机器人解决方案。它能够将任何文档、资源或内容片段转化为大语言模型(LLM)在聊天中可以利用的相关上下文。

软件特点:

  • 多用户实例支持和权限管理
  • 全新的可嵌入式聊天小部件,适用于您的网站
  • 支持多种文档类型(PDFTXTDOCX等)
  • 通过简单的用户界面管理您的向量数据库中的文档
  • 两种聊天模式:对话模式和查询模式。对话模式保留之前的问题和修改记录。查询模式用于对您的文档进行简单的问答。
  • 聊天中的引用文献功能
  • 完全适用于云部署。
  • “自带 LLM “模型。
  • 极其高效的成本节约措施,用于管理非常大的文档。您将永远不会为嵌入的大型文档或转录付费超过一次。比其他文档聊天机器人解决方案更省成本,降低 90%
  • 提供完整的开发者 API,用于自定义集成!

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 anythingllm ,选择第一个 mintplexlabs/anythingllm,版本选择 latest

用AnythingLLM构建专属知识库

权限

勾选 使用高权限执行容器

用AnythingLLM构建专属知识库

docker 文件夹中,创建一个新文件夹 anythingllm,并在其中建一个子文件夹 data

在本机上新建一个 env.txt 文件,上传到 data 目录中,在文件中写入下面的内容

SERVER_PORT=3001
STORAGE_DIR="/app/server/storage"
UID='1000'
GID='1000'
用AnythingLLM构建专属知识库

现在的目录结构

用AnythingLLM构建专属知识库

默认 data 目录,Everyone 只有读权限

用AnythingLLM构建专属知识库

要给 data 目录赋予 Everyone 读写权限

用AnythingLLM构建专属知识库

对于 env.txt 文件

用AnythingLLM构建专属知识库

同样也要给予 Everyone 读写权限

用AnythingLLM构建专属知识库
文件夹 装载路径 说明
docker/anythingllm/data /app/server/storage 存放数据库等
docker/anythingllm/env.txt /app/server/.env 环境变量文件

前一项是通过 添加文件夹,后一项通过 添加文件 进行挂载

用AnythingLLM构建专属知识库

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
3014 3001
用AnythingLLM构建专属知识库

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 anythingllm 和 子目录
mkdir -p /volume1/docker/anythingllm/data

# 进入 anythingllm 目录
cd /volume1/docker/anythingllm

# 修改 data 目录权限
chmod -R 777 data

# 将 env.txt 放入当前目录

# 修改 env.txt 文件权限
chmod 777 env.txt

# 运行容器
docker run -d 
   --restart unless-stopped 
   --cap-add SYS_ADMIN 
   --name anythingllm 
   -p 3014:3001 
   -v $(pwd)/data:/app/server/storage 
   -v $(pwd)/env.txt:/app/server/.env 
   mintplexlabs/anythingllm

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  anythingllm:
    image: mintplexlabs/anythingllm
    container_name: anythingllm
    restart: unless-stopped
    cap-add:
      - SYS_ADMIN
    ports:
      - 3014:3001
    volumes:
      - ./data:/app/server/storage
      - ./env.txt:/app/server/.env

然后执行下面的命令

# 新建文件夹 anythingllm 和 子目录
mkdir -p /volume1/docker/anythingllm/data

# 进入 anythingllm 目录
cd /volume1/docker/anythingllm

# 修改 data 目录权限
chmod -R 777 data

# 将 env.txt 放入当前目录

# 修改 env.txt 文件权限
chmod 777 env.txt

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

启动过程有点长,要稍等一会儿,当日志中显示 Primary server in HTTP mode listening on port 3001

用AnythingLLM构建专属知识库

在浏览器中输入 http://群晖IP:3014 就能看到主界面

用AnythingLLM构建专属知识库

设置向导

点中间的 Get started 开始设置向导

用AnythingLLM构建专属知识库
  • LLM Preference

如果你有 OpenAIkey,可以选这个试试。不过老苏没有,正好前一段装了 Ollama  还没删,所以 LLM 就选择了 Ollama

用AnythingLLM构建专属知识库
  • Embedding Preference

选择了默认的 AnythingLLM Embedder,这是 AnythingLLM 自带的

用AnythingLLM构建专属知识库
  • Vector Database Connection

选择了默认的 LanceDB,这同样是 AnythingLLM 自带的

用AnythingLLM构建专属知识库

接下来是设置 logo 和用户

用AnythingLLM构建专属知识库

这是我们选择的数据处理和隐私

用AnythingLLM构建专属知识库

创建工作空间

用AnythingLLM构建专属知识库

设置完成后的主界面

用AnythingLLM构建专属知识库

这个时候你再打开 env.txt 文件,已经根据你的设置做了改变

所以是完全可以通过设置来跳过向导的;

用AnythingLLM构建专属知识库

上传文档

点上传按钮

用AnythingLLM构建专属知识库

打开上传界面,可以上传文档,也可以指定网站

用AnythingLLM构建专属知识库

网上下了一份 华为投资控股有限公司2022年年度报告

下载地址:https://www-file.huawei.com/minisite/media/annual_report/annual_report_2022_cn.pdf

用AnythingLLM构建专属知识库

选中上传完成的文件,点  Move 1 file to workspace

用AnythingLLM构建专属知识库

将文件移入工作空间

用AnythingLLM构建专属知识库

Save and Embed 开始处理文档,等待处理完成

用AnythingLLM构建专属知识库

开始提问

进入工作空间

用AnythingLLM构建专属知识库

开始提问

用AnythingLLM构建专属知识库

答案感觉上都跟文档对不上,老苏切换  Chat Modelgemma:2b 时,又总是超时,可能原因还是机器太弱了吧

用AnythingLLM构建专属知识库

参考文档

Mintplex-Labs/anything-llm: A multi-user ChatGPT for any LLMs and vector database. Unlimited documents, messages, and storage in one privacy-focused app. Now available as a desktop application!
地址:https://github.com/Mintplex-Labs/anything-llm

Ollama – AnythingLLM by Mintplex Labs
地址:https://docs.useanything.com/feature-overview/llm-selection/ollama

@所有人:写文不易,如果你都看到了这里,请点个在看,分享给更多的朋友;为确保你能收到每一篇文章,请主页右上角设置星标。

原文始发于微信公众号(各种折腾):用AnythingLLM构建专属知识库

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/235830.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!