2.9 KiB
2.9 KiB
知识库API
知识库API位于 backend/app/api/knowledge.py
端点列表
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | /api/v1/knowledge/bases | 获取知识库列表 |
| POST | /api/v1/knowledge/bases | 创建知识库 |
| GET | /api/v1/knowledge/bases/{id} | 获取知识库详情 |
| PUT | /api/v1/knowledge/bases/{id} | 更新知识库 |
| DELETE | /api/v1/knowledge/bases/{id} | 删除知识库 |
| POST | /api/v1/knowledge/bases/{id}/documents | 上传文档 |
| GET | /api/v1/knowledge/bases/{id}/documents | 获取文档列表 |
| DELETE | /api/v1/knowledge/bases/{id}/documents/{doc_id} | 删除文档 |
| POST | /api/v1/knowledge/search | 搜索知识 |
| GET | /api/v1/knowledge/entities | 获取实体列表 |
| GET | /api/v1/knowledge/relations | 获取关系列表 |
获取知识库列表
GET /api/v1/knowledge/bases
响应
{
"success": true,
"data": {
"items": [
{
"id": "uuid",
"name": "知识库名称",
"description": "知识库描述",
"document_count": 100,
"created_at": "2024-01-01T00:00:00Z"
}
],
"total": 10
}
}
创建知识库
POST /api/v1/knowledge/bases
请求体
{
"name": "知识库名称",
"description": "知识库描述",
"embedding_model": "text-embedding-ada-002"
}
上传文档
POST /api/v1/knowledge/bases/{id}/documents
请求体 (multipart/form-data)
| 字段 | 类型 | 说明 |
|---|---|---|
| file | file | 文档文件 |
| title | string | 文档标题 |
| tags | string[] | 标签 |
支持格式
- TXT
- Markdown
- DOCX
搜索知识
POST /api/v1/knowledge/search
请求体
{
"query": "搜索关键词",
"knowledge_base_ids": ["uuid1", "uuid2"],
"top_k": 10
}
响应
{
"success": true,
"data": {
"results": [
{
"content": "相关内容片段",
"document_id": "uuid",
"document_title": "文档标题",
"similarity": 0.95,
"metadata": {}
}
]
}
}
知识图谱API
知识图谱API位于 backend/app/api/knowledge_graph.py
获取实体列表
GET /api/v1/knowledge/entities
查询参数
| 参数 | 类型 | 说明 |
|---|---|---|
| entity_type | string | 实体类型 |
| brand_id | uuid | 品牌ID |
响应
{
"success": true,
"data": {
"items": [
{
"id": "uuid",
"name": "实体名称",
"type": "brand",
"properties": {},
"created_at": "2024-01-01T00:00:00Z"
}
]
}
}
获取关系列表
GET /api/v1/knowledge/relations
响应
{
"success": true,
"data": {
"items": [
{
"id": "uuid",
"source_id": "uuid",
"target_id": "uuid",
"relation_type": "competes_with",
"properties": {},
"created_at": "2024-01-01T00:00:00Z"
}
]
}
}