私有知识库 Coco AI 实战(二):摄入 MongoDB 数据

在之前的文章中,我们介绍过如何使用《 Logstash 迁移 MongoDB 数据到 Easyseach》,既然 Coco AI 后台数据存储也使用 Easysearch,我们能否直接把 MongoDB 的数据迁移到 Coco AI 的 Easysearch,使用 Coco AI 对数据进行检索呢?You got it!

Connector

Coco AI 的 Connector 支持通过两种方式创建:API 接口或管理平台。相信已经完成《私有知识库 Coco AI 实战(一)》的小伙伴已经有 Coco AI 的管理平台了,下面我们将通过管理平台创建 Connector,如需要通过 API 方式创建,请参考文档

登录管理平台,设置 -> Connector -> 新增

Datasource

数据源 -> 新增 -> MongoDB

记录上面的 Datasource ID: d037kjj75bvg264k5pe0

Easysearch

由于是使用 Logstash 连接 Easysearch,要开启兼容模式,编辑 easysearch.yml,详情请查阅《如何使用 Logstash 8 连接 Easysearch》

复制代码
elasticsearch.api_compatibility: true
elasticsearch.api_compatibility_version: "8.9.0"

Logstash

我们在上次 Logstash 迁移 MongoDB 数据的配置上稍作修改,增加文档 source 信息,写入 coco_document 索引。

复制代码
input {
  jdbc{
    jdbc_driver_class => "Java::com.wisecoders.dbschema.mongodb.JdbcDriver"
    jdbc_driver_library => "/usr/share/logstash/driver/mongojdbc4.8.3.jar"
    jdbc_user => "user"
    jdbc_password => "pwd"
    jdbc_connection_string => "jdbc:mongodb://localhost:27017/test"
    statement => "db.collection_test.find({},{'_id': false})"
  }
}

filter {
    mutate {
        rename => {
            "[document][tags]" => "tags"
            "[document][summary]" => "summary"
            "[document][username]" => "owner.username"
            "[document][content]" => "content"
            "[document][category]" => "category"
            "[document][created]" => "created"
            "[document][url]" => "url"
            "[document][id]" => "id"
            "[document][title]" => "title"
        }
        remove_field => [ "document","@timestamp","@version" ]
        add_field => {
            "[source][type]" => "connector"
            "[source][name]" => "MongoDB Datasource"
            "[source][id]" => "d037kjj75bvg264k5pe0" 
        }
    }
}

output {
    #stdout { }
    elasticsearch {
        hosts => ["https://127.0.0.1:9200"]
        index => "coco_document"
        manage_template => false
        ssl_verification_mode => none
        user => "admin"
        password => "coco-server"
    }
}

测试能否搜索到文档。

相关推荐
进击的CJR6 分钟前
MySQL 8.0 OCP 英文题库解析(十五)
数据库·mysql·开闭原则
羊小猪~~12 分钟前
数据库学习笔记(十五)--变量与定义条件与处理程序
数据库·人工智能·笔记·后端·sql·学习·mysql
ahhhhaaaa-19 分钟前
【AI图像生成网站&Golang】部署图像生成服务(阿里云ACK+GPU实例)
开发语言·数据仓库·人工智能·后端·阿里云·golang
正在努力Coding20 分钟前
MongoDB详细安装步骤(Windows 系统)
数据库·mongodb
TDengine (老段)27 分钟前
TDengine 基础功能——数据写入
大数据·数据库·物联网·oracle·时序数据库·tdengine·涛思数据
摘取一颗天上星️40 分钟前
NLP进化史:从规则模板到思维链推理,七次范式革命全解析
人工智能·自然语言处理
知舟不叙1 小时前
深度学习——基于PyTorch的MNIST手写数字识别详解
人工智能·pytorch·深度学习·手写数字识别
Jamence1 小时前
多模态大语言模型arxiv论文略读(118)
论文阅读·人工智能·语言模型·自然语言处理·论文笔记
愚农搬码1 小时前
LangChain 调用不同类型的多MCP服务
人工智能·后端
fie88891 小时前
MySQL:Prepared Statement 预处理语句
android·数据库·mysql