本文介绍如何使用RAG Agent数据面API。RAG Agent数据面API主要用于处理实际业务请求和执行数据操作,例如管理数据集、上传文档、查询知识库、生成回答以及检索文档等。
功能简介
RAG Agent API包括管控面API和数据面API:
管控面API:用于管理和配置资源的系统。它负责资源的生命周期管理,包括创建、变更配置、查看和删除实例等操作。管控面API的调用频率通常较低。
数据面API :用于处理实际业务请求及执行数据操作,例如管理数据集、上传文档、查询知识库、生成回答以及检索文档等。数据面API的调用频率较高。
使用API Key认证
RAG Agent的API端点需要经过认证才能进行访问。支持使用API Key进行认证,每个API请求的URL末尾附加API Key。
格式:
?apikey=<api_key>示例:
curl -X GET "http://api.example.com/rag/v1/datasets?apikey=<api_key>"apikey为Supabase的AnonKey。获取AnonKey方式请参考DescribeInstanceAuthInfo - 查询RDS AI应用实例认证信息。
API
数据集管理
创建数据集
POST /rag/v1/datasets
创建新的数据集,并初始化相应的RDS PostgreSQL schema,以实现数据隔离。
请求参数
参数名 | 类型 | 是否必填 | 描述 |
name | string | 是 | 数据集名称,必须为唯一标识,字符长度为1~255。 |
description | string | 否 | 数据集描述,默认为null,最大支持2000个字符。 |
rag_type | string | 否 | RAG类型,当前仅支持GraphRAG(默认设置)。 |
workspace | string | 否 | 工作空间标识符,默认为null。 |
namespace_prefix | string | 否 | 命名空间前缀,默认为null。 |
storage_type | string | 否 | 存储类型,取值:
|
chunk_engine | string | 否 | 分块引擎类型,默认为default。 |
schedule | string | 否 | 调度配置,默认为空。 |
args | object | 否 | 存储类型(storage_type)取值为supabase或aliyun-oss时需配置。为采用JSON格式,默认为null。 |
created_by | string | 否 | 创建者标识符,默认为null。 |
owner_id | string | 否 | 所有者标识符,默认为null。 |
visibility | string | 否 | 数据集可见性,取值:
|
default_permission | string | 否 | 默认权限级别,默认值为null。 |
user_id | string | 否 | 对应于Supabase Auth表的user_id,用于控制数据集权限,默认为 null。 |
当storage_type取值为supabase或aliyun-oss时,args参数取值示例如下:
supabase
"args": { "supabase_url": "http://your-project.supabase.co", "supabase_api_key": "your-supabase-api-key", "supabase_bucket_name": "your-bucket-name", "path": "test" }aliyun-oss
"args": { "oss_endpoint": "http://oss-cn-hangzhou.aliyuncs.com", "oss_access_key_id": "LTAI5tF****", "oss_access_key_secret": "your-secret-key-here", "oss_bucket_name": "my-lightrag-bucket", "oss_region": "oss-cn-hangzhou", "oss_path": "datasets/production/" }
响应示例
{
"dataset": {
"dataset_uuid": "uuid-string",
"name": "My Dataset",
"description": "Dataset description",
"status": "active",
"created_at": "2024-01-01T00:00:00Z"
}
}获取数据集列表
GET /rag/v1/datasets
获取数据集列表,支持可选的过滤功能及分页显示。
请求参数
参数名 | 类型 | 是否必填 | 描述 |
owner_id | string | 否 | 按所有者ID过滤。默认为null |
status | string | 否 | 按状态过滤。默认为null |
visibility | string | 否 | 按可见性过滤。默认为null |
page | integer | 否 | 页码。取值为大于等于1的整数,默认为1 |
page_size | integer | 否 | 每页大小,取值范围1~100,默认为20 |
获取单个数据集
GET /rag/v1/datasets/{dataset_id}
通过数据集ID获取数据集信息。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID |
更新数据集
PUT /rag/v1/datasets/{dataset_id}
更新数据集信息。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID |
请求参数
参数名 | 类型 | 是否必填 | 描述 |
description | string | 否 | 数据集描述,默认为null,最大支持2000个字符。 |
rag_type | string | 否 | RAG类型,当前仅支持GraphRAG(默认设置)。 |
workspace | string | 否 | 工作空间标识符,默认为null。 |
namespace_prefix | string | 否 | 命名空间前缀,默认为null。 |
storage_type | string | 否 | 存储类型,取值:
|
chunk_engine | string | 否 | 分块引擎类型,默认为default。 |
schedule | string | 否 | 调度配置,默认为空。 |
args | object | 否 | 存储类型(storage_type)取值为supabase或aliyun-oss时需配置。为采用JSON格式,默认为null。 |
created_by | string | 否 | 创建者标识符,默认为null。 |
owner_id | string | 否 | 所有者标识符,默认为null。 |
visibility | string | 否 | 数据集可见性,取值:
|
default_permission | string | 否 | 默认权限级别,默认值为null。 |
user_id | string | 否 | 对应于Supabase Auth表的user_id,用于控制数据集权限,默认为 null。 |
删除数据集
DELETE /rag/v1/datasets/{dataset_id}
删除数据集及其所有数据。此操作不可逆转,将永久删除与该数据集相关的所有数据。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID |
文档管理
上传文档到数据集
POST /rag/v1/datasets/{dataset_id}/documents/upload
将文档上传至指定数据集。支持本地文件上传及远程文件处理。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
请求参数
参数名 | 类型 | 是否必填 | 描述 |
file | binary | 否 | 要上传的文件,默认为null。 |
remote_file_path | string | 否 | 远程文件的URL,默认为null。支持:
|
remote_storage_type | string | 否 | 远程存储类型,默认为null。 |
remote_storage_config | string | 否 | 远程存储配置的JSON字符串,默认为null。 |
original_filename | string | 否 | 原始文件名,默认为null。 |
multimodal_config | string | 否 | 多模态配置的JSON字符串,默认为null。 |
api_key_header_value | string | 否 | API密钥,默认为null。 |
本地文件上传时,提供file参数。
远程文件上传时,需要提供remote_file_path、remote_storage_type和remote_storage_config参数。
远程文件上传示例:
Supabase
{ "SUPABASE_URL": "http://your-project.supabase.co", "SUPABASE_API_KEY": "your_service_key", "SUPABASE_BUCKET_NAME": "multimodal_files" }阿里云OSS
{ "ALIYUN_OSS_ACCESS_KEY": "your_access_key_id", "ALIYUN_OSS_SECRET_KEY": "your_access_key_secret", "ALIYUN_OSS_ENDPOINT": "oss-cn-beijing.aliyuncs.com", "ALIYUN_OSS_BUCKET_NAME": "your_bucket_name", "ALIYUN_OSS_REGION": "oss-cn-beijing" }
插入文本到数据集
POST /rag/v1/datasets/{dataset_id}/documents/text
将文本内容插入到指定数据集中。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
请求参数
参数名 | 类型 | 是否必填 | 描述 |
text | string | 是 | 要插入的文本内容,必须大于或等于1个字符。 |
file_source | string | 否 | 文本的来源标识符,默认为text_input。 |
api_key_header_value | string | 否 | API密钥,默认为null。 |
获取文档处理状态
GET /rag/v1/datasets/{dataset_id}/track_status/{track_id}
通过跟踪ID获取数据集中文档的处理状态。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
track_id | string | 是 | 待查询的跟踪ID。 |
文档状态
pending:等待处理。
processing:正在处理。
processed:处理完成。
failed:处理失败。
multimodal_parsing:多模态解析中。
multimodal_processing:多模态处理中。
获取数据集文档列表
GET /rag/v1/datasets/{dataset_id}/documents
获取指定数据集中的文档列表。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
请求参数
参数名 | 类型 | 是否必填 | 描述 |
limit | integer | 否 | 返回的最大文档数量。默认为100,取值范围为1~1000。 |
offset | integer | 否 | 跳过的文档数量。默认为0,取值为大于等于0的整数。 |
分页获取数据集文档
POST /rag/v1/datasets/{dataset_id}/documents/paginated
使用分页、过滤和排序功能以获取相关文档。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
请求参数
参数名 | 类型 | 是否必填 | 描述 |
status_filter | string | 否 | 按文档状态过滤。默认为null。取值:
|
page | integer | 否 | 页码。默认为1,取值为大于等于1的整数。 |
page_size | integer | 否 | 每页文档数量。默认为50,取值范围为10~200。 |
sort_field | string | 否 | 排序字段。取值:
|
sort_direction | string | 否 | 排序方向。取值:
|
删除数据集文档
DELETE /rag/v1/datasets/{dataset_id}/documents/delete_document
从指定数据集中删除特定文档。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
请求参数
参数名 | 类型 | 是否必填 | 描述 |
doc_ids | array | 是 | 要删除的文档ID列表。 |
delete_file | boolean | 否 | 是否删除上传目录中的对应文件。取值:
|
清空数据集文档
DELETE /rag/v1/datasets/{dataset_id}/documents
清空指定数据集中的所有文档。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
获取文档统计信息
GET /rag/v1/datasets/{dataset_id}/documents/statistics
获取指定数据集的文档统计信息。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
查询功能
查询数据集
POST /rag/v1/datasets/{dataset_id}/query
在指定数据集的隔离环境中执行查询。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
请求参数
参数名 | 类型 | 是否必填 | 描述 |
query | string | 是 | 查询文本。必须大于或等于1个字符。 |
mode | string | 否 | 查询模式。取值:
|
only_need_context | boolean | 否 | 是否仅返回上下文,不生成响应。默认为null,取值:
|
only_need_prompt | boolean | 否 | 是否仅返回提示,不生成响应。默认为null,取值:
|
response_type | string | 否 | 响应格式类型。默认为null。 |
top_k | integer | 否 | 返回结果数量。默认为null,取值范围为1~100。 |
chunk_top_k | integer | 否 | 返回分块数量。默认为null,取值范围为1~100。 |
max_entity_tokens | integer | 否 | 实体上下文最大令牌数。默认为null,取值大于等于1。 |
max_relation_tokens | integer | 否 | 关系上下文最大令牌数。默认为null,取值大于等于1。 |
max_total_tokens | integer | 否 | 总令牌预算。默认为null,取值大于等于1。 |
conversation_history | array | 否 | 对话历史。默认为null。 |
history_turns | integer | 否 | 对话轮次数。默认为null,取值大于等于0。 |
ids | array | 否 | 要过滤的文档ID列表。默认为null。 |
user_prompt | string | 否 | 自定义用户提示。默认为null。 |
enable_rerank | boolean | 否 | 启用重新排序。默认为null。 |
流式查询数据集
POST /rag/v1/datasets/{dataset_id}/query/stream
对指定数据集实施流式查询,以提供实时处理,并返回流式响应。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
请求参数
参数名 | 类型 | 是否必填 | 描述 |
query | string | 是 | 查询文本。必须大于或等于1个字符。 |
mode | string | 否 | 查询模式。取值:
|
only_need_context | boolean | 否 | 是否仅返回上下文,不生成响应。默认为null,取值:
|
only_need_prompt | boolean | 否 | 是否仅返回提示,不生成响应。默认为null,取值:
|
response_type | string | 否 | 响应格式类型。默认为null。 |
top_k | integer | 否 | 返回结果数量。默认为null,取值范围为1~100。 |
chunk_top_k | integer | 否 | 返回分块数量。默认为null,取值范围为1~100。 |
max_entity_tokens | integer | 否 | 实体上下文最大令牌数。默认为null,取值大于等于1。 |
max_relation_tokens | integer | 否 | 关系上下文最大令牌数。默认为null,取值大于等于1。 |
max_total_tokens | integer | 否 | 总令牌预算。默认为null,取值大于等于1。 |
conversation_history | array | 否 | 对话历史。默认为null。 |
history_turns | integer | 否 | 对话轮次数。默认为null,取值大于等于0。 |
ids | array | 否 | 要过滤的文档ID列表。默认为null。 |
user_prompt | string | 否 | 自定义用户提示。默认为null。 |
enable_rerank | boolean | 否 | 启用重新排序。默认为null。 |
跨数据集查询
POST /rag/v1/datasets/cross-query
同时查询多个数据集,合并结果并进行跨数据集的重新排序。
请求参数
参数名 | 类型 | 是否必填 | 描述 |
query | string | 是 | 查询文本。必须大于或等于1个字符。 |
dataset_ids | array | 是 | 数据集ID列表。取值范围为1~10。 |
document_filters | object | 否 | 每个数据集的文档ID过滤器。格式为 |
mode | string | 否 | 查询模式。取值:
|
only_need_context | boolean | 否 | 是否仅返回上下文,不生成响应。默认为null,取值:
|
only_need_prompt | boolean | 否 | 是否仅返回提示,不生成响应。默认为null,取值:
|
response_type | string | 否 | 响应格式类型。默认为null。 |
top_k | integer | 否 | 返回结果数量。默认为null,取值范围为1~100。 |
chunk_top_k | integer | 否 | 返回分块数量。默认为null,取值范围为1~100。 |
max_entity_tokens | integer | 否 | 实体上下文最大令牌数。默认为null,取值大于等于1。 |
max_relation_tokens | integer | 否 | 关系上下文最大令牌数。默认为null,取值大于等于1。 |
max_total_tokens | integer | 否 | 总令牌预算。默认为null,取值大于等于1。 |
conversation_history | array | 否 | 对话历史。默认为null。 |
history_turns | integer | 否 | 对话轮次数。默认为null,取值大于等于0。 |
user_prompt | string | 否 | 自定义用户提示。默认为null。 |
enable_rerank | boolean | 否 | 启用重新排序。默认为true。 |
max_results_per_dataset | integer | 否 | 合并前每个数据集的最大结果数量。默认为20,取值范围为1~100。 |
跨数据集上下文查询
POST /rag/v1/datasets/cross-query/context
从多个数据集获取上下文信息,且不生成最终响应。
请求参数
参数名 | 类型 | 是否必填 | 描述 |
query | string | 是 | 查询文本。必须大于或等于1个字符。 |
dataset_ids | array | 是 | 数据集ID列表。取值范围为1~10。 |
document_filters | object | 否 | 每个数据集的文档ID过滤器。格式为 |
mode | string | 否 | 查询模式。取值:
|
only_need_context | boolean | 否 | 是否仅返回上下文,不生成响应。默认为null,取值:
|
only_need_prompt | boolean | 否 | 是否仅返回提示,不生成响应。默认为null,取值:
|
response_type | string | 否 | 响应格式类型。默认为null。 |
top_k | integer | 否 | 返回结果数量。默认为null,取值范围为1~100。 |
chunk_top_k | integer | 否 | 返回分块数量。默认为null,取值范围为1~100。 |
max_entity_tokens | integer | 否 | 实体上下文最大令牌数。默认为null,取值大于等于1。 |
max_relation_tokens | integer | 否 | 关系上下文最大令牌数。默认为null,取值大于等于1。 |
max_total_tokens | integer | 否 | 总令牌预算。默认为null,取值大于等于1。 |
conversation_history | array | 否 | 对话历史。默认为null。 |
history_turns | integer | 否 | 对话轮次数。默认为null,取值大于等于0。 |
user_prompt | string | 否 | 自定义用户提示。默认为null。 |
enable_rerank | boolean | 否 | 启用重新排序。默认为true。 |
max_results_per_dataset | integer | 否 | 合并前每个数据集的最大结果数量。默认为20,取值范围为1~100。 |
跨数据集流式查询
POST /rag/v1/datasets/cross-query/stream
对多个数据集进行流式查询,实时提供结果并返回流式响应。
请求参数
参数名 | 类型 | 是否必填 | 描述 |
query | string | 是 | 查询文本。必须大于或等于1个字符。 |
dataset_ids | array | 是 | 数据集ID列表。取值范围为1~10。 |
document_filters | object | 否 | 每个数据集的文档ID过滤器。格式为 |
mode | string | 否 | 查询模式。取值:
|
only_need_context | boolean | 否 | 是否仅返回上下文,不生成响应。默认为null,取值:
|
only_need_prompt | boolean | 否 | 是否仅返回提示,不生成响应。默认为null,取值:
|
response_type | string | 否 | 响应格式类型。默认为null。 |
top_k | integer | 否 | 返回结果数量。默认为null,取值范围为1~100。 |
chunk_top_k | integer | 否 | 返回分块数量。默认为null,取值范围为1~100。 |
max_entity_tokens | integer | 否 | 实体上下文最大令牌数。默认为null,取值大于等于1。 |
max_relation_tokens | integer | 否 | 关系上下文最大令牌数。默认为null,取值大于等于1。 |
max_total_tokens | integer | 否 | 总令牌预算。默认为null,取值大于等于1。 |
conversation_history | array | 否 | 对话历史。默认为null。 |
history_turns | integer | 否 | 对话轮次数。默认为null,取值大于等于0。 |
user_prompt | string | 否 | 自定义用户提示。默认为null。 |
enable_rerank | boolean | 否 | 启用重新排序。默认为true。 |
max_results_per_dataset | integer | 否 | 合并前每个数据集的最大结果数量。默认为20,取值范围为1~100。 |
搜索功能
搜索数据集
POST /rag/v1/datasets/{dataset_id}/search
在指定数据集的隔离环境中进行实体、关系或分块的搜索。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
请求参数
参数名 | 类型 | 是否必填 | 描述 |
query | string | 是 | 搜索查询。必须大于或等于1个字符。 |
search_type | string | 否 | 搜索类型。取值:
|
top_k | integer | 否 | 返回结果数量。默认为10,取值范围1~100。 |
图谱功能
获取图谱统计信息
GET /rag/v1/datasets/{dataset_id}/graphs/statistics
获取特定数据集的知识图谱综合统计信息。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
获取图谱标签
GET /rag/v1/datasets/{dataset_id}/graphs/labels
获取指定数据集知识图谱中可用的节点标签。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
查询图谱数据
GET /rag/v1/datasets/{dataset_id}/graphs
查询特定数据集的知识图谱数据(节点和边)。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
请求参数
参数名 | 类型 | 是否必填 | 描述 |
label | string | 否 | 要查询的图谱标签。默认为 |
max_depth | integer | 否 | 最大查询深度。默认为2,取值范围1~10。 |
max_nodes | integer | 否 | 返回的最大节点数。默认为100,取值范围为1~1000. |
获取数据集健康状态
GET /rag/v1/datasets/{dataset_id}/health
获取指定数据集的健康状态,包括数据的可用性、图谱的连接性以及相关建议。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
缓存管理
清空数据集缓存
POST /rag/v1/datasets/{dataset_id}/clear_cache
清空指定数据集的LLM缓存数据。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
管道管理
获取数据集管道状态
GET /rag/v1/datasets/{dataset_id}/pipeline/status
获取指定数据集的管道处理状态。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
清空数据集管道缓存
POST /rag/v1/datasets/{dataset_id}/pipeline/clear_cache
清除指定数据集的管道缓存。
路径参数
参数名 | 类型 | 是否必填 | 描述 |
dataset_id | string | 是 | 数据集的UUID。 |
获取管道状态概览
GET /pipeline/status/overview
获取所有数据集及全局管道的管道状态概览。
系统功能
获取认证状态
GET /auth-status
获取认证状态;如果未配置认证,则返回访客令牌。
登录认证
POST /login
用户登录认证。
请求参数
参数名 | 类型 | 是否必填 | 描述 |
grant_type | string | 否 | 授权类型。默认为null。 |
username | string | 是 | 用户名。 |
password | string | 是 | 密码。 |
scope | string | 否 | 作用域。默认为 |
client_id | string | 否 | 客户端ID。默认为null。 |
client_secret | string | 否 | 客户端密钥。默认为null。 |
健康检查
GET /health
获取当前系统状态。
请求参数
参数名 | 类型 | 是否必填 | 描述 |
api_key_header_value | string | 否 | API密钥。默认为null。 |
响应信息
RAG Agent的API采用标准HTTP状态码。
常见状态码
状态码 | 描述 | 说明 |
200 | 成功 | 请求已成功处理 |
400 | 请求错误 | 参数错误、配置无效等 |
401 | 未认证 | 缺失或无效的认证信息 |
404 | 资源不存在 | 数据集或文档不存在 |
422 | 验证错误 | 请求参数验证失败 |
500 | 服务器错误 | 内部服务器发生错误 |
错误响应
所有错误响应均遵循统一格式:
{
"error": "错误类型",
"message": "详细错误描述",
"dataset_id": "相关数据集ID(可选)"
}使用示例
创建数据集并上传文档
创建数据集。
curl -X POST "http://api.example.com/rag/v1/datasets?apikey=<api_key>" \ -H "Content-Type: application/json" \ -d '{ "name": "My Knowledge Base", "description": "Company documents and policies", "visibility": "private" }'上传文档,以本地文件为例。
curl -X POST "http://api.example.com/rag/v1/datasets/{dataset_id}/documents/upload?apikey=<api_key>" \ -F "file=@document.pdf"向数据集中插入内容。
curl -X POST "http://api.example.com/rag/v1/datasets/{dataset_id}/documents/text?apikey=<api_key>" \ -H "Content-Type: application/json" \ -d '{ "text": "This is important company information...", "file_source": "manual_input" }'
查询数据集
单个数据集查询
curl -X POST "http://api.example.com/rag/v1/datasets/{dataset_id}/query?apikey=<api_key>" \ -H "Content-Type: application/json" \ -d '{ "query": "What is our company policy on remote work?", "mode": "hybrid", "top_k": 5 }'跨数据集查询
curl -X POST "http://api.example.com/rag/v1/datasets/cross-query?apikey=<api_key>" \ -H "Content-Type: application/json" \ -d '{ "query": "Compare policies across departments", "dataset_ids": ["dataset1", "dataset2", "dataset3"], "enable_rerank": true, "max_results_per_dataset": 10 }'
搜索和统计
搜索实体和关系
curl -X POST "http://api.example.com/rag/v1/datasets/{dataset_id}/search?apikey=<api_key>" \ -H "Content-Type: application/json" \ -d '{ "query": "remote work policy", "search_type": "entities", "top_k": 10 }'获取文档统计
curl -X GET "http://api.example.com/rag/v1/datasets/{dataset_id}/documents/statistics?apikey=<api_key>"获取图谱统计
curl -X GET "http://api.example.com/rag/v1/datasets/{dataset_id}/graphs/statistics?apikey=<api_key>"
远程文件上传
Supabase存储
curl -X POST "http://api.example.com/rag/v1/datasets/{dataset_id}/documents/upload?apikey=<api_key>" \ -F "remote_file_path=folder1/folder2/document.pdf" \ -F "remote_storage_type=supabase" \ -F 'remote_storage_config={"url":"http://xxx.supabase.co","key":"xxx","bucket":"bucket"}' \ -F "original_filename=document.pdf"阿里云OSS
curl -X POST "http://api.example.com/rag/v1/datasets/{dataset_id}/documents/upload?apikey=<api_key>" \ -F "remote_file_path=folder1/folder2/document.pdf" \ -F "remote_storage_type=aliyun-oss" \ -F 'remote_storage_config={"access_key_id":"xxx","access_key_secret":"xxx","bucket":"bucket","endpoint":"oss-region.aliyuncs.com"}' \ -F "original_filename=document.pdf"
请将folder1/folder2/document.pdf替换为您实际业务场景中文件存储的相对路径。
数据集响应信息(DatasetInfo)
{
"dataset_uuid": "string",
"name": "string",
"description": "string",
"rag_type": "string",
"workspace": "string",
"namespace_prefix": "string",
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-01T00:00:00Z",
"status": "string",
"storage_type": "string",
"chunk_engine": "string",
"schedule": "string",
"args": {},
"created_by": "string",
"owner_id": "string",
"visibility": "string",
"default_permission": "string"
}
文档响应信息 (DocStatusResponse)
{
"id": "doc_123456",
"content_summary": "Research paper on machine learning",
"content_length": 15240,
"status": "processed",
"created_at": "2025-03-31T12:34:56",
"updated_at": "2025-03-31T12:35:30",
"track_id": "upload_20250729_170612_abc123",
"chunks_count": 12,
"error_msg": null,
"metadata": {
"author": "John Doe",
"year": 2025
},
"file_path": "research_paper.pdf"
}
分页响应信息(PaginationInfo)
{
"page": 1,
"page_size": 50,
"total_count": 150,
"total_pages": 3,
"has_next": true,
"has_prev": false
}支持的文件类型
系统支持多种文档格式如下:
PDF文档
Word文档(.doc,.docx)
文本文件(.txt)
Markdown文件(.md)
HTML文件(.html)
具体支持的格式可能会因配置和版本的不同而有所变化。