qwen_agent/test_knowledge_base.sh
2026-02-10 18:59:10 +08:00

86 lines
2.7 KiB
Bash
Executable File

#!/bin/bash
# 知识库 API 测试脚本
API_BASE="http://localhost:8001"
TOKEN="a21c99620a8ef61d69563afe05ccce89"
DATASET_ID="3c3c671205c911f1a37efedd444ada7f"
echo "=========================================="
echo "知识库 API 测试"
echo "=========================================="
# 1. 获取数据集列表
echo ""
echo "1. 获取数据集列表"
echo "GET /api/v1/knowledge-base/datasets"
curl --silent --request GET \
"$API_BASE/api/v1/knowledge-base/datasets" \
--header "authorization: Bearer $TOKEN" \
--header 'content-type: application/json' | python3 -m json.tool
echo ""
# 2. 获取数据集详情
echo "2. 获取数据集详情"
echo "GET /api/v1/knowledge-base/datasets/{dataset_id}"
curl --silent --request GET \
"$API_BASE/api/v1/knowledge-base/datasets/$DATASET_ID" \
--header "authorization: Bearer $TOKEN" | python3 -m json.tool
echo ""
# 3. 创建数据集
echo "3. 创建数据集"
echo "POST /api/v1/knowledge-base/datasets"
curl --silent --request POST \
"$API_BASE/api/v1/knowledge-base/datasets" \
--header "authorization: Bearer $TOKEN" \
--header 'content-type: application/json' \
--data '{
"name": "API测试知识库",
"description": "通过API创建的测试知识库",
"chunk_method": "naive"
}' | python3 -m json.tool
echo ""
# 4. 获取文件列表
echo "4. 获取文件列表"
echo "GET /api/v1/knowledge-base/datasets/{dataset_id}/files"
curl --silent --request GET \
"$API_BASE/api/v1/knowledge-base/datasets/$DATASET_ID/files" \
--header "authorization: Bearer $TOKEN" | python3 -m json.tool
echo ""
# 5. 上传文件
echo "5. 上传文件"
echo "POST /api/v1/knowledge-base/datasets/{dataset_id}/files"
echo "测试文档内容,用于文件上传测试。" > /tmp/test_doc.txt
curl --silent --request POST \
"$API_BASE/api/v1/knowledge-base/datasets/$DATASET_ID/files" \
--header "authorization: Bearer $TOKEN" \
-F "file=@/tmp/test_doc.txt" | python3 -m json.tool
echo ""
# 6. 获取切片列表
echo "6. 获取切片列表"
echo "GET /api/v1/knowledge-base/datasets/{dataset_id}/chunks"
curl --silent --request GET \
"$API_BASE/api/v1/knowledge-base/datasets/$DATASET_ID/chunks" \
--header "authorization: Bearer $TOKEN" | python3 -m json.tool
echo ""
# 7. 更新数据集
echo "7. 更新数据集"
echo "PATCH /api/v1/knowledge-base/datasets/{dataset_id}"
curl --silent --request PATCH \
"$API_BASE/api/v1/knowledge-base/datasets/$DATASET_ID" \
--header "authorization: Bearer $TOKEN" \
--header 'content-type: application/json' \
--data '{
"name": "更新后的知识库名称",
"description": "更新后的描述"
}' | python3 -m json.tool
echo ""
echo "=========================================="
echo "测试完成"
echo "=========================================="