Ollama + Docker + AnythingLLM 搭建本地多用户AI知识库

整个过程需要准备三个工具:

Ollama: 用于运行本地大模型的管理:llama3, qwen2等
Docker:用于运行AnythingLLM。
AnythingLLM:知识库运行平台,提供知识库构建及运行的功能。

Ollama, Docker

这二个安装不再重复,参考上个贴子:
https://blog.csdn.net/qq_28171389/article/details/140068915

AnythingLLM

安装AnythingLLM

一定要装Web版, 功能比Desktop版多
参考官网: https://github.com/Mintplex-Labs/anything-llm
网上很多介绍AnythingLLM的, 但搜了很少关于docker无脑的安装, 有的根关看不懂人家在写什么, 后面找到这个链接:
https://github.com/Mintplex-Labs/anything-llm/blob/master/docker/HOW_TO_USE_DOCKER.md
先拉取:

docker pull mintplexlabs/anythingllm

由于我的是windows, 在powerShell运行:

$env:STORAGE_LOCATION="D:\anythingllm-data"; `
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 3101: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;

anythingllm在powerShell里运行

STORAGE_LOCATION 缓存设为D盘路径
3101 自定义端口

还可用Docker Compose方式, 这里我没有去试用

配置 AnythingLLM

关联Ollama,从它调取模型,这里我用了qwen:7b
在这里插入图片描述
创建管理员,一定要先My team, 用于团队/公司
在这里插入图片描述
总的大概是这样设置:
在这里插入图片描述
上传文档让模型训练:
在这里插入图片描述
可以集成google搜索
在这里插入图片描述

使用 AnythingLLM

AnythingLLM有个优势,它可以按不同业务逻辑分别上传文档,再按不同的用户去登陆使用
在这里插入图片描述
还可以集成到你的内部OA系统里去
在这里插入图片描述
在这里插入图片描述
以下是 AnythingLLM 的一些功能总结:

  1. 支持多用户实例和权限
  2. 新的自定义可嵌入式聊天小部件,可以嵌入到你的网站
  3. 支持多种文件类型(PDF,TXT,DOCX等)
  4. 通过简单的用户界面管理你的向量数据库中管理文件
  5. 提供两种聊天模式:对话和查询。对话保留先前的问题和修订。查询是针对文档的简单QA
  6. 聊天过程中的引用
  7. 100%适合云部署。
  8. “自带LLM”模型
  9. 处理大文件时极有效的节约成本措施。你永远不必为将大型文件或记录输送到聊天机器人中支付费用,比其他的文件聊天机器人解决方案节省90%的费用。
  10. 提供全面的开发者API用于自定义集成!
    同类开源项目大多基于Python语言开发。AnythingLLM采用了Javascript,前端用React,后端用Node,对于全栈工程师非常友好。

前端: React和ViteJS,实现创建和管理大模型用到的知识库

后端: Node.js Express框架,实现向量数据库的管理和所有与大模型的交互

采集器: Node.js Express框架,实现对文档的处理解析

多用户模式

这一点对于企业级应用特别关键,AnythingLLM支持多用户模式,3种角色的权限管理。

系统会默认创建一个管理员(Admin)账号,拥有全部的管理权限。

第二种角色是Manager账号,可管理所有工作区和文档,但是不能管理大模型、嵌入模型和向量数据库。

普通用户账号,则只能基于已授权的工作区与大模型对话,不能对工作区和系统配置做任何更改。

交流q:

link :  316853809
### AnythingLLM多用户环境下的配置与使用 #### 配置概述 AnythingLLM 支持多用户管理和不同权限设置,这使得该平台非常适合团队协作和企业级应用。通过灵活的角色分配机制,管理员能够精确控制各个用户的访问级别和操作范围[^2]。 #### 用户角色定义 为了实现有效的多用户管理,系统内预设了几种基本角色: - **超级管理员**:拥有最高级别的权限,可创建其他账户、调整全局参数以及监控整个系统的运行状态。 - **普通管理员**:负责日常运营维护工作,比如审核新注册请求、处理反馈意见等;同时也具备一定限度内的数据编辑权能。 - **一般成员**:仅限于查看已授权的内容,并能在限定范围内提交查询或参与讨论交流活动。 #### 权限设定指南 针对上述提到的不同身份类别,在实际部署过程中应当依据具体业务场景来细化各自的职能边界。例如对于敏感资料的操作(增删改查),建议只授予给特定职位人员;而公开信息则可以适当放宽查阅门槛以促进资源共享效率提升。 #### 实际应用场景模拟 假设在一个科研项目组内部署了AnythingLLM用于文献检索辅助工具开发,则可以通过如下方式来进行初始设置: 1. 创建一个新的组织机构; 2. 添加所有参与者成为正式会员并将他们指派到相应小组里去; 3. 设定好各层级领导者的职责分工后发布通知告知大家登录地址及相关注意事项; 4. 开始上传所需学习材料至云端服务器供集体在线研读分析之用。 ```json { "organization": { "name": "Research Team XYZ", "description": "A collaborative group focused on AI research." }, "users": [ {"role":"super_admin", "email":"admin@researchteamxyz.com"}, {"role":"regular_member", "email":"member1@researchteamxyz.com"} ] } ```
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值