Skip to main content

如何启用向量知识库功能

向量知识库为本产品的扩展模块,用于为工作表提供向量检索与语义搜索能力,用户可根据实际需求选择是否启用。

环境要求

启用前请确保服务器满足以下条件(强烈建议使用独立服务器部署):

⚠️ Milvus 单机模式运行包含 milvusminioetcd 三个组件,总内存占用约 6~8GB。可用内存低于 8GB 的服务器不建议启用该功能。

组件最低配置推荐配置
Docker20.10.16 及以上
CPU4 核(支持 SSE4.2 / AVX 指令集)4 核及以上
空余内存8GB16GB 及以上
磁盘SATA SSDNVMe SSD

部署 Milvus

  1. 拉取镜像

    docker pull registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-etcd:v3.5.25
    docker pull registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-minio:RELEASE.2025-04-22T22-12-26Z
    docker pull registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-milvus:v2.6.14
  2. 创建数据目录

    如下:在当前目录下创建对应数据挂载目录

    mkdir -p ./volume/data/milvus/{etcd,minio,data}
  3. 创建 docker-compose.yaml

    version: "3.5"

    services:
    etcd:
    container_name: milvus-etcd
    image: registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-etcd:v3.5.25
    environment:
    - ETCD_AUTO_COMPACTION_MODE=revision
    - ETCD_AUTO_COMPACTION_RETENTION=1000
    - ETCD_QUOTA_BACKEND_BYTES=4294967296
    - ETCD_SNAPSHOT_COUNT=50000
    volumes:
    - ./volume/data/milvus/etcd:/etcd
    command: etcd -advertise-client-urls=http://etcd:2379 -listen-client-urls http://0.0.0.0:2379 --data-dir /etcd

    minio:
    container_name: milvus-minio
    image: registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-minio:RELEASE.2025-04-22T22-12-26Z
    environment:
    MINIO_ROOT_USER: minioadmin
    MINIO_ROOT_PASSWORD: minioadmin
    volumes:
    - ./volume/data/milvus/minio:/minio_data
    command: minio server /minio_data --console-address ":9001"

    milvus:
    container_name: milvus-standalone
    image: registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-milvus:v2.6.14
    command: ["milvus", "run", "standalone"]
    security_opt:
    - seccomp:unconfined
    environment:
    ETCD_ENDPOINTS: etcd:2379
    MINIO_ADDRESS: minio:9000
    COMMON_SECURITY_AUTHORIZATIONENABLED: "true"
    MQ_TYPE: woodpecker
    volumes:
    - ./volume/data/milvus/data:/var/lib/milvus
    ports:
    - 19530:19530
    epends_on:
    - etcd
    - minio
  4. 启动服务

    docker-compose up -d
  5. 修改 Milvus 默认密码(必须

    Milvus 默认账号:

    • 用户名:root
    • 密码:Milvus

    首次启动后必须修改(your_password 替换为实际密码):

    docker exec -it milvus-standalone bash

    TOKEN=$(echo -n 'root:Milvus' | base64 -w0)

    curl -s -X POST 'http://localhost:19530/v2/vectordb/users/update_password' \
    -H 'Content-Type: application/json' \
    -H "Authorization: Basic $TOKEN" \
    -d '{"userName": "root", "password": "Milvus", "newPassword": "your_password"}'

    返回 {"code":0,"data":{}} 表示修改成功。

接入主服务

  1. 拉取镜像

    docker pull registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-rag:1.0.0
  2. 增加 rag 服务

    在主服务配置文件 docker-compose.yaml 中追加:

    rag:
    image: registry.cn-hangzhou.aliyuncs.com/mdpublic/mingdaoyun-rag:1.0.0
    environment:
    <<: *app-environment
  3. 新增环境变量

    在主服务配置文件 docker-compose.yamlapp 服务下新增环境变量

    app:
    environment:
    ENV_RAG_ENABLE: "true"
    ENV_MILVUS_URI: "http://{Milvus内网IP地址}:19530"
    ENV_MILVUS_DATABASE: "default"
    ENV_MILVUS_USERNAME: "root"
    ENV_MILVUS_PASSWORD: "your_password"
  4. 在管理器根目录下执行 bash ./service.sh restartall 重启服务,等待命令执行完成