问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

ChatOllama部署教程:本地与Docker部署详解

创作时间:
作者:
@小白创作中心

ChatOllama部署教程:本地与Docker部署详解

引用
CSDN
1.
https://blog.csdn.net/LY_LM/article/details/138613765

ChatOllama 是一个基于 LLMs(大语言模型)的开源聊天机器人平台,支持多种语言模型。它支持与 LLMs 免费聊天,以及基于知识库与 LLMs 聊天。平台提供 Ollama 模型管理、知识库管理、商业 LLMs API 密钥管理等功能,并支持 Milvus 和 Chroma 两种向量数据库。本文将详细介绍如何在 Windows 系统上部署 ChatOllama,包括本地部署和 Docker 部署两种方式。

一、本地部署

1.1 安装 Ollama 服务器

自行部署 Ollama server,具体安装指南可参考:Ollama 官方安装指南

查看 Ollama server 是否启动:
默认情况下,它运行在 http://localhost:11434

启动成功后的页面如下:

1.2 安装 Chroma

Chroma 官网安装指南:ChromaDB 官方网站

有两种安装方式:Docker 和本地安装。

本地安装:

pip install chromadb

(注意:目前不支持 Python 3.11)

启动命令:

chroma run

默认端口是 http://localhost:8000,启动页面如下:

Docker 安装:

docker pull chromadb/chroma
docker run -d -p 8000:8000 chromadb/chroma

ChromaDB 正在运行于 http://localhost:8000

1.3 配置 ChatOllama

从 GitHub 上获取 ChatOllama 代码:

git clone https://github.com/sugarforever/chat-ollama.git
cd chat-ollama

复制 .env.example 文件到 .env 文件:

cp .env.example .env

安装依赖项:

pnpm install

运行迁移命令以创建数据库表:

pnpm prisma-migrate

启动开发服务器:

pnpm dev 或者 npm run dev

启动成功页面:

在页面的设置中,填写 Ollama 的服务器网址时,Ollama 服务器设置为 http://host.docker.internal:11434

当模型中能看到你下载的模型列表时就说明连接成功啦

这样本地部署就完成了~

二、Docker 部署

这是最简单的方法,只需要配置 docker-compose.yaml 文件:

version: '3.1'
services:
  chromadb:
    image: chromadb/chroma
    ports:
- "8000:8000"
    restart: always
    volumes:
- chromadb_data:/chroma/.chroma/index
  chatollama:
    environment:
- CHROMADB_URL=http://chromadb:8000
- DATABASE_URL=file:/app/sqlite/chatollama.sqlite
- REDIS_HOST=redis
    image: 0001coder/chatollama:latest
    ports:
- "3000:3000"
    pull_policy: always
    restart: always
    volumes:
- ~/.chatollama:/app/sqlite
  redis:
    image: redis:latest
    restart: always
    volumes:
- redis_data:/data
volumes:
  chromadb_data:
  redis_data:

可以按照自己的需要更改端口号,但 chromaDB 的相关配置需要保持一致。

在同一目录下执行命令:

docker compose up

运行时长这样:

在 docker desktop 中查看,可以看到已经运行启动成功了,点击 3000 就可以看到我们已经启动成功了。

第一次在 docker 中启动 chatollama 需要初始化 SQLite 数据库:

docker compose exec chatollama npx prisma migrate dev

三、使用知识库提前准备

使用知识库时,我们需要一个有效的嵌入模型。在这里可以是 Ollama 下载的模型或来自第三方服务提供商,例如 OpenAI。推荐使用 Ollama 管理的 nomic-embed-text 模型。

可以在 Models 页面 http://localhost:3000/models 或使用 CLI 进行下载:

docker compose exec ollama ollama pull nomic-embed-text:latest

如果在使用知识库时遇到问题,可以参考其他相关教程进行排查。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号