Coco AI 快速构建本地文档知识库增强检索+智能问答系统
以一种极简的方式将本地文档切分导入Coco AI,形成了快速全文检索+智能问答。需要部署:Elasticsearch、FSCrawler、通义本地模型、ollama、开源、跨平台的统一搜索+AI 智能问答工具 Coco AI 0.5.0 发布。3、基于 Coco AI 的本地文档知识库+智能问答系统完整实现步骤。2、基于 Coco AI 的本地文档知识库+智能问答系统效果图。深入解析 Coco A
1、之前视频讲解了 RAG 系统
相对比较复杂。
需要部署:Elasticsearch、FSCrawler、通义本地模型、ollama、Gradio 等。

全部前后端代码都需要自己实现,有一定的学习成本。 那有没有极简的方式构建呢?
之前一篇文章介绍了:《如何将 Coco AI 与自定义数据源集成 ?》 基于这个自定义数据源的思路,再进一步呢?
其实再进一步就是本文题目的内容了。
2、基于 Coco AI 的本地文档知识库+智能问答系统效果图






3、基于 Coco AI 的本地文档知识库+智能问答系统完整实现步骤
3.1 前置部署要求
-
Step1:安装 Easysearch
-
Step2: 安装 Cocoserver 服务器端
-
Step3:安装 Coco APP 客户端
-
Step4: 安装 ollama,且部署好本地相关模型

3.2 创建数据源
-
step1 :创建连接器。

-
Step2:基于连接器创建数据源。 上一步生成的连接器 id:d1mv3g26dku3m75bq3d0 可以用来创建数据源。

数据源唯一id:d1mv5ci6dku3m75bq3tg。
创建完数据源结构如下图所示:

特别说明:目前这里只支持 API 方式生成,0.6 版本不支持通过可视化界面配置生成。
3.3 确保CocoServer 服务端相关配置ok
3.3.1 模型提供部分本地模型设置没有问题。
基于 ollama 本地部署的模型进行添加。

3.3.2 AI 助手设置
应答模型选择好,如下图所示。

数据源头对应好,如下图所示。

3.4 切分大文档为小文档并写入 CocoServer
代码包括读取、分割文档内容并上传至 Elasticsearch 实例的实用工具。

将《一本书讲透 Elasticsearch 》400页+书稿导入效果如下所示。

详细代码参见:https://articles.zsxq.com/id_5ea0h58pdae2.html
|
序号 |
函数名称 |
参数 |
返回值 |
详细说明 |
|---|---|---|---|---|
|
1 |
read_docx |
file_path
(字符串): |
字符串列表 (段落) |
读取 |
|
2 |
split_paragraphs |
paragraphs
(列表): 段落字符串列表 |
字符串列表 (分块) |
根据最大字符数限制将段落分割成块。 |
|
3 |
split_by_bytes |
paragraphs
(列表): 段落字符串列表 |
字符串列表 (分块) |
根据最大字节数 (UTF-8 编码) 将段落分割成块。 |
|
4 |
save_split_docx |
paragraphs
(列表): 段落字符串列表 |
无 |
从段落列表创建新的 |
|
5 |
process_docx_file |
file_path
(字符串): 输入 |
字典列表 (文档) |
处理 |
|
6 |
send_to_es |
document
(字典): 文档元数据和内容 |
元组: (整数: HTTP 状态码, 字符串: 响应文本) |
通过 POST 请求将文档发送到 Elasticsearch 实例。 |
|
7 |
main |
无 |
无 |
主函数,遍历目录中的 |
4、小结
以一种极简的方式将本地文档切分导入Coco AI,形成了快速全文检索+智能问答。适用起来,功能基本满足预期要求。
期待大家使用后的交流。
开源、跨平台的统一搜索+AI 智能问答工具 Coco AI 0.5.0 发布
更多推荐




所有评论(0)