AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


ChatOllama构建AI聊天和知识库问答
发布日期:2024-04-14 14:10:44 浏览次数: 2286 来源:各种折腾


什么是 ChatOllama ?

ChatOllama 是一个 Nuxt 3 + Ollama Web 应用程序。ChatOllama 允许您管理您的 Ollama 服务器,并与世界各地的 LLM 聊天。

从功能上来说,ChatOllama 类似于老苏之前介绍的 Open WebUAnythingLLM 的混合体,既可以和 AI 聊天,也可以用来构建自己专属的知识库

文章传送门:

由于 ChatOllama 仍在积极开发中,功能、界面和数据库架构可能会发生变化

安装

在群晖上以 Docker 方式安装。

在安装 ChatOllama 之前,需要先安装 Ollama

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

version: '3.1'

services:
  chromadb:
    image: chromadb/chroma:latest
    container_name: chatollama-db
    restart: always
    ports:
      - "11431:8000"
    volumes:
      - ./data:/chroma/.chroma/index

  chatollama:
    image: 0001coder/chatollama:latest
    container_name: chatollama-web
    restart: always
    pull_policy: always    
    ports:
      - "11432:3000"
    volumes:
      - ./db:/app/sqlite
    environment:
      - CHROMADB_URL=http://chromadb:8000
      - DATABASE_URL=file:/app/sqlite/chatollama.sqlite
  • 镜像 chromadb/chromaAI 原生开源嵌入数据库,用于存储矢量数据,latest 对应的版本可能是 0.4.24
  • 镜像 0001coder/chatollama:自带 SQLite 数据库,用于存储关系数据,latest 对应的版本可能是 1710926535

然后执行下面的命令

# 新建文件夹 chatollama 和 子目录
mkdir -p /volume1/docker/chatollama/{data,db}

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

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

# 一键启动
docker-compose up -d

运行

数据库初始化

容器启动后,先不忙访问,还需要对 SQLite 数据库进行初始化处理

# 如果您是第一次启动,需要初始化 SQLite 数据库
docker-compose exec chatollama npx prisma migrate dev

如果不执行初始化,后面在创建知识库时会遇到下面的报错

Invalid `prisma.knowledgeBase.count()` invocation: The table `main.KnowledgeBase` does not exist in the current database.

聊天

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

  • ① 设置 Ollama 服务器地址
  • ② 模型管理
  • ③ 进入聊天界面

setting 设置 Ollama Server 地址

这个设置是本地的,也就是说如果你换了一台机器的话,还需要重新设置

进入 Models,原来下载的模型文件都还在,当然你也可以在这里下载新的模型文件

进入 Chat 界面就可以开始聊天了

这次选择的 gemma:2b 问了几个问题,速度还可以

两个模型做个简单的对比

知识库

使用知识库时,我们需要一个有效的嵌入模型,官方建议下载 nomic-embed-text模型

文件不大,下载比较快

进入 Knowledge Bases界面,还是以 华为投资控股有限公司2022年年度报告 为例

上传成功后,点 Name 进入知识库问答

随便问了几个问题,这次使用了 gemma:2b

除了第一个问题外,其他似乎也不准确,但是速度还行,而之前在 AnythingLLM 使用 gemma:2b 总是超时


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询