anythingLLM+ Ollama+deepseek on ubuntu24

一、Ollama install

方式一:

官网下载

https://ollama.com/download

curl -fsSL https://ollama.com/install.sh | sh

方式二:

使用ModelScope下载

1、确保已通过pip install modelscope安装ModelScope

2、进入下载目录并运行安装脚本

modelscope download --model=modelscope/ollama-linux --local_dir ./ollama-linux

3、进入下载目录并运行安装脚本

cd ollama-linux

改权限

sudo chmod 777 ./ollama-modelscope-install.sh

运行

./ollama-modelscope-install.sh

二、deepseek下载

1、使用ollama在 Ollama 官网下载Models

举例:ollama run deepseek-r1:1.5b

2、测试ollama运行 http://localhost:11434/

Ollama is running

三、anythingLLM安装

anythingLLM参考网站  Home ~ AnythingLLM

docker部署 Local Docker Installation ~ AnythingLLM

1、安装docker

2、 下载镜像

docker pull mintplexlabs/anythingllm

3、运行容器

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" \
--add-host=host.docker.internal:host-gateway \
mintplexlabs/anythingllm

访问服务 http://localhost:3001

四、问题处理

1、anythingllm中没法访问ollama服务

因为anythingllm运行在docker中,没法访问ollama服务,修点如下:

(1)anythingllm端口映射,docker容器run时已经添加3001:3001

(2)虚拟 docker 网络内部的 Host 的 IP 默认不绑定到主机系统的端口 11434。要解决此问题并确保 Dockerized AnythingLLM 和 Ollama 服务之间的正确通信,必须将 Ollama 配置为绑定到 0.0.0.0 或特定 IP 地址。详见 Ollama 的常见问题

如果 Ollama 作为 systemd 服务运行,则应使用以下方法设置环境变量:systemctl

通过调用 编辑 systemd 服务。这将打开一个编辑器。

systemctl edit ollama.service


对于每个环境变量,在 section 下添加一行:Environment[Service]

[Service]
Environment="OLLAMA_HOST=0.0.0.0"


保存并退出。Ctrl + O 保存文件,Ctrl + X 退出编辑器。
重新加载并重新启动 Ollama:systemd

systemctl daemon-reload
systemctl restart ollama

      五、API 访问

      API http://localhost:3001/api/docs/

      docs API Access & Keys ~ AnythingLLM

      详情参考这个博主的分享  使用AnythingLLM的api调用-优快云博客

      补充python调用方式,其他类似:

      import requests
      
      API_KEY = 'XXXXXXXXXXXXXXXXXXXXXXXXXX'  # apikey
      URL = 'http://localhost:3001/api/v1/workspace/workspace_xxxx/chat'  # workspace名称
      
      headers = {
          'Authorization': f'Bearer {API_KEY}',
          'Content-Type': 'application/json',
          'Accept': 'application/json',
      }
      
      data = {
          "mode": "chat",
          "message": "What is 平和运动?"
      }
      
      response = requests.post(URL, headers=headers, json=data)
      if response.status_code == 200:
          result = response.json()
          print("生成的回答:", result)
      else:
          print(f"请求失败,状态码: {response.status_code}")

      六、云端部署

      在云端访问anythingllm部署的AI服务,可以通过一个公网服务器(有公网ip),使用frp内网穿透技术,访问把本地GPU服务器。

      评论
      添加红包

      请填写红包祝福语或标题

      红包个数最小为10个

      红包金额最低5元

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

      抵扣说明:

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

      余额充值