搭建本地AI知识库问答系统

1、Docker服务安装

安装教程:Ubuntu 安装 Docker

2、Ollama安装

2.1 下载ollama并安装:Ollama
// 查看是否安装正常
ollama --version
2.2 下载大语言模型

以阿里 通义千问14(8.2G)B为例(根据自己需求及服务器配置确定)
在这里插入图片描述
在这里插入图片描述

// 下载语言模型
ollama run qwen:14b

验证是否安装成功
在这里插入图片描述

2.3 下载向量模型

在这里插入图片描述

ollama pull shaw/dmeta-embedding-zh

// 测试语言模型api请求是否可以正常使用
curl 'http://localhost:11434/api/chat' \
--data '{
    "model": "qwen:7b",
    "messages": [
        {
            "role": "user",
            "content": "你是谁"
        }
    ],
    "temperature": 0.1,
    "stream": false
}'
// 测试向量模型api请求是否可以正常使用
curl 'http://localhost:11434/api/embeddings' \
--data '{
  "model": "shaw/dmeta-embedding-zh",
  "prompt": "天空是灰色的"
}'
2.4 下载 docker 文件 和 config 文件
mkdir kbqa
cd kbqa
curl -O https://harryai.cc/kbqa/docker-compose.yml
curl -O https://harryai.cc/kbqa/config.json

// 安装docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/v2.6.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
// 赋予二进制文件可执行权限
sudo chmod +x /usr/local/bin/docker-compose
// 启动 docker 并后台运行
docker-compose up -d
2.5 修改ollama服务配置文件
// 编辑文件
vim /etc/systemd/system/ollama.service
// 添加环境变量
Environment="OLLAMA_HOST=0.0.0.0"
// 重载 systemd 并重启 Ollama
systemctl daemon-reload
systemctl restart ollama

在这里插入图片描述
测试是否成功
地址栏输入:http://ip:11434
出现 Ollama is running 代表配置成功

3、配置One API渠道

访问路径http://ip:3001
在这里插入图片描述
在这里插入图片描述

// 查看模型列表
ollama list
// 查看运行的模型
ollama ps

配置qwen:7b和shaw/dmeta-embedding-zh

4、配置FastGPT

4.1 配置应用

注意:不管配置了啥最好都重启一下
访问路径http://ip:3000

创建AI对话
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果列表中没有自己安装的本地模型,可进行修改配置文件
进入到docker容器安装目录,修改config.json
在这里插入图片描述
修改配置文件后执行 docker restart fastgpt 重新启动容器

4.2 配置知识库

![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/286563e815164fdcae86d89a286e7aeb.png
在这里插入图片描述
索引模型和文件处理模型中没有的话在config.json中进行配置,配置后重新启动fastgpt容器

4.3 添加数据集

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
输入完成保存即可

4.4 应用关联知识库

在这里插入图片描述
一个应用只能关联同种向量模型的知识库(不能既关联模型A又关联模型B)

4.5 网页转Markdown(添加网页版文本数据)

链接:https://github.com/jina-ai/reader
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
网络链接格式 https://r.jina.ai/网络文章地址

4.6 PDF转Markdown

安装插件 pip install marker-pdf
使用命令 marker_single pdf路径 转换后文件路径

### 如何本地部署 AI 知识库智能问答系统 #### 使用 Docker 和 Ollama 构建环境 为了构建一个高效的企业级知识库问答系统,可以采用 Docker 容器技术配合 Ollama 平台来简化安装过程并确保稳定性。通过这种方式可以在本地环境中快速搭建起支持大型语言模型的服务框架[^1]。 ```bash docker pull ollama/ollama:latest docker run -d --name my_ollama_service -p 8080:80 ollama/ollama ``` 这段命令会拉取最新的 Ollama 映像,并启动名为 `my_ollama_service` 的服务实例,在主机上监听端口 8080 来接收请求。 #### 数据管理与文档操作接口 对于已建立的知识库而言,维护其数据完整性至关重要。为此提供了诸如 `delete_docs` 这样的 API 接口用于管理和清理不再需要的信息资源。此函数接受目标仓库的名字以及一系列待移除项作为参数,并返回执行状态报告连同任何未能成功处理的对象清单[^2]。 ```python def delete_docs(knowledge_base_name, file_names_to_delete): # 假设这里实现了验证逻辑... success_response = {"success": True} failed_files = [] try: for name in file_names_to_delete: os.remove(f"/path/to/{knowledge_base_name}/{name}") except Exception as e: success_response["success"] = False failed_files.append({"file": name, "error": str(e)}) result = { **success_response, "failedFiles": failed_files } return json.dumps(result) ``` #### 利用 FastGPT 提升交互体验 FastGPT 是一款专为开发者设计的强大工具集,它不仅能够轻松集成先进的自然语言理解能力到应用程序当中去,而且还允许用户借助直观易懂的工作流程编辑界面定制个性化的对话路径,极大地提高了项目的灵活性和可扩展性[^3]。 #### WSL2 下的最佳实践建议 当在 Windows Subsystem for Linux (WSL2) 上运行此类应用时,请务必注意将持久化数据存放在 Linux 文件系统的特定位置内,而非直接位于 Windows 分区下。这是因为跨平台间存在兼容性和性能差异的问题,可能导致某些组件无法正常运作甚至频繁崩溃的情况发生[^4]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值