一、先简介一下:
ChatOllama 是一个基于 LLMs(大语言模型)的开源聊天机器人平台,支持多种语言模型。
ChatOllama 支持多种聊天类型:与 LLMs 免费聊天,基于知识库与 LLMs 聊天。
ChatOllama 的功能列表:Ollama 模型管理;知识库管理;聊天;商业 LLMs API 密钥管理;
ChatOllama 支持 2 种向量数据库:Milvus 和 Chroma。当然,本篇主要是chromaDB,因为我只部署使用了这个。
二、部署实操
2.1 先说本地部署吧~
2.1.1 安装 Ollama 服务器
自行部署Ollama server,(指路:安装指南 https://github.com/ollama/ollama)
查看自己的ollama server是否启动了:默认情况下,它运行在 http://localhost:11434
打开之后页面是这样的~ 这样就是启动成功的~
2.1.2 安装 Chroma
https://docs.trychroma.com/getting-started 官网安装指南
两个方法:docker和本地
本地安装:
pip install chromadb
(目前不支持3.11python)
启动: chroma run 。端口默认是 http://localhost:8000。启动的页面是这样的:
docker安装:
# https://hub.docker.com/r/chromadb/chroma/tags docker pull chromadb/chroma docker run -d -p 8000:8000 chromadb/chroma
ChromaDB 正在运行于 http://localhost:8000
2.1.3 chatollama设置运行
从github上git一份保存到本地:GitHub – sugarforever/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`
当模型中能看到你下载的模型列表时就说明连接成功啦
这样本地部署就完成了~
2.2 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](http://localhost:3000/models) 或使用 CLI 进行下载。
docker compose exec ollama ollama pull nomic-embed-text:latest
大概就是这样。
如果知识库创建错误,可以看看同一个专栏的另外一篇文章,或许可以帮到你https://blog.csdn.net/LY_LM/article/details/138612547?spm=1001.2014.3001.5501https://blog.csdn.net/LY_LM/article/details/138612547?spm=1001.2014.3001.5501
原文链接:https://blog.csdn.net/LY_LM/article/details/138613765?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171836884016800180645872%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=171836884016800180645872&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-1-138613765-null-null.nonecase&utm_term=docker%E9%83%A8%E7%BD%B2