如何启用向量知识库功能
向量知识库为本产品的扩展模块,用于为工作表提供向量检索与语义搜索能力,用户可根据实际需求选择是否启用。
⚠️ 注意:向量知识库功能需购买「超级搜索」授权许可证,否则部署完成后仍无法创建知识库。
环境要求
启用前请确保服务器满足以下条件(强烈建议使用独立服务器部署):
Milvus 单机模式运行包含
Milvus、MinIO、etcd三个组件,总内存占用约 6~8GB。可用内存低于 8GB 的服务器不建议启用该功能。
| 组件 | 最低配置 | 推荐配置 |
|---|---|---|
| Docker | 20.10.16 及以上 | — |
| CPU | 4 核(支持 SSE4.2 / AVX 指令集) | 4 核及以上 |
| 空余内存 | 8GB | 16GB 及以上 |
| 磁盘 | SATA SSD | NVMe SSD |
部署 Milvus
Milvus 可根据服务器资源和运维方式选择独立部署,或并入 HAP 部署。
方案一:独立服务器部署
适用于有独立服务器或希望将向量数据库与 HAP 主服务分开维护的场景。
安装 Docker 与 Docker Compose
-
安装 Docker
- Linux amd64
- Linux arm64
安装 Docker,可参考官方对不同 Linux 版本的 安装说明 或参考部署示例中的 Docker 安装章节。
安装 Docker,可参考官方对不同 Linux 版本的 安装说明 或参考部署示例中的 Docker 安装章节。
-
下载 Docker Compose 二进制文件
- Linux amd64
- Linux arm64
wget https://pdpublic.mingdao.com/private-deployment/offline/common/docker-compose-linux-x86_64wget https://pdpublic.mingdao.com/private-deployment/offline/common/arm64/docker-compose-linux-aarch64 -
移至二进制文件存储路径
- Linux amd64
- Linux arm64
mv docker-compose-linux-x86_64 /usr/local/bin/docker-composemv docker-compose-linux-aarch64 /usr/local/bin/docker-compose -
添加可执行权限
chmod +x /usr/local/bin/docker-compose
部署 Milvus
-
拉取镜像(离线包下载)
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 -
创建数据目录
定义 milvus 部署路径,以
/data/mingdao/script为例mkdir -p /data/mingdao/script在部署路径下创建对应数据挂载目录
cd /data/mingdao/script
mkdir -p ./volume/data/milvus/{etcd,minio,data} -
在部署路径下创建
milvus.yamlversion: "3.5"
services:
etcd:
container_name: milvus-etcd
restart: always
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
restart: always
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
restart: always
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
MINIO_ACCESS_KEY_ID: minioadmin
MINIO_SECRET_ACCESS_KEY: minioadmin
MINIO_BUCKET_NAME: mdmilvus
COMMON_SECURITY_AUTHORIZATIONENABLED: "true"
MQ_TYPE: woodpecker
volumes:
- ./volume/data/milvus/data:/var/lib/milvus
ports:
- 19530:19530
depends_on:
- etcd
- minio复用现有 MinIO 服务(可选)
如果本产品部署时已存在 MinIO 服务,Milvus 可复用现有 MinIO,无需单独部署。操作方式:
- 在
docker-compose.yaml中删除minio服务定义 - 在
milvus服务中删除depends_on里的- minio - 修改
milvus服务中以下环境变量:MINIO_ADDRESS:改为现有 MinIO 服务地址(如192.168.1.100:9000)MINIO_ACCESS_KEY_ID:改为现有 MinIO 的 Access KeyMINIO_SECRET_ACCESS_KEY:改为现有 MinIO 的 Secret KeyMINIO_BUCKET_NAME:建议保持mdmilvus,Milvus 会自动创建
- 在
-
启动服务
docker-compose -f milvus.yaml up -d-
后续如需停止 Milvus 服务,可执行:
docker-compose -f milvus.yaml down
-
-
修改 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":{}}表示修改成功。 - 用户名:
方案二:Milvus 并入 HAP 部署
该方案会将 Milvus 相关组件与 HAP 部署在同一台服务器上,请确保服务器空闲资源充足。若采用该方式,服务器配置最低建议为 16C 64G,且数据盘务必使用 SSD。