Skip to content

知识库管理

接口说明

接口鉴权方式: 在控制台创建apikey,将apikey放入每个请求头的Authorization字段中完成鉴权。

创建一个知识库

创建知识库,获取知识库id。

shell
curl --location --request POST 'https://openapi.youdao.com/q_anything/api/create_kb' \
--header 'Authorization: {{apikey}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "kbName": "知识库1"
}'
json
{
  "kbName": "知识库1", // 知识库名,长度不超过100字符(必填)
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "38e4e659-13a7-45ea-b8c5-484979348b43", // 请求id
  "result": {
    "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id
    "kbName": "知识库1" // 知识库名称
  }
}

删除知识库

shell
curl --location --request POST 'https://openapi.youdao.com/q_anything/api/delete_kb' \
--header 'Authorization: {{apikey}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "kbId": "KB248e8e079642491383596f63c2ab069a_240430"
}'
json
{
  "kbId": "KB248e8e079642491383596f63c2ab069a_240430" // 知识库id(必填)
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "9454b20a-2788-4eeb-a057-08d78b10ef4a", // 请求id
  "result": null // 结果
}

上传文档(文件)

为知识库添加文档

shell
curl --location --request POST 'https://openapi.youdao.com/q_anything/api/upload_file' \
--header 'Authorization: {{apikey}}' \
--header 'Content-Type: multipart/form-data' \
--form 'file=@"C:\\Users\\user\\Desktop\\qanything测试文件\\test.pdf"' \
--form 'kbId="KBa3d4f06881484a97a1c78d058ec92869_240430"' \
json
需要使用 POST form-data 的格式上传。包含 file 和 kbId 两个字段。file可以上传多个。
{
  "file": "(binary)", // 文件(必填)
  "kbId": "KB248e8e079642491383596f63c2ab069a_240430" // 知识库id(必填)
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "3402a048-cc30-46a1-839e-318b81ca85ee", // 请求id
  "result": [
    {
      "fileId": "5c4289765dfe45c5bcf5174a10ce0e78", // 文档id
      "fileName": "test.pdf", // 文档名称
      "status": "0" // 文档状态 0:上传完成 1:解析完成(可以参与问答) 2:解析失败 3:上传文件大小超过限制
    }
  ]
}

上传文档连接(url)

为知识库添加文档

shell
curl --location --request POST 'https://openapi.youdao.com/q_anything/api/upload_url' \
--header 'Authorization: {{apikey}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "kbId": "KB248e8e079642491383596f63c2ab069a_240430",
    "url": "https://upimg.baike.so.com/doc/3361515-3539268.html"
}'
json
{
  "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id(必填)
  "url": "https://upimg.baike.so.com/doc/3361515-3539268.html",  // 文件访问链接(必填)
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "3402a048-cc30-46a1-839e-318b81ca85ee", // 请求id
  "result": [
    {
      "fileId": "dcc4da6435674e68a16248147f200d73", // 文档id
      "fileName": "3361515-3539268.html.web", // 文档名称
      "status": "0" // 文档状态 0:上传完成 1:解析完成(可以参与问答) 2:解析失败 3:上传文件大小超过限制
    }
  ]
}

删除文档

删除知识库中的文档

shell
curl --location --request POST 'https://openapi.youdao.com/q_anything/api/delete_file' \
--header 'Content-Type: application/json' \
--data-raw '{
    "kbId": "KB248e8e079642491383596f63c2ab069a_240430",
    "fileIds": ["6daacc4d4b1e4fe0a42db925f59ccc4f"]
}'
json
{
  "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id(必填)
  "fileIds": ["6daacc4d4b1e4fe0a42db925f59ccc4f"],  // 需要删除的文档id(fileId),json数组形式,可传多个(必填)
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "268e0df0-547a-4a06-b71a-be63d283e259", // 请求id
  "result": null // 结果
}

查询知识库列表

获取所有知识库列表

shell
curl --location --request GET 'https://openapi.youdao.com/q_anything/api/kb_list' \
--header 'Authorization: {{apikey}}' \
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "3402a048-cc30-46a1-839e-318b81ca85ee", // 请求id
  "result": [
    {
      "kbId": "KB0f2cf0ae51684a9ca44b1af6cc091eed_240430", // 知识库id
      "kbName": "知识库1", // 知识库名称
    }
  ]
}

查询知识库文档列表

查询知识库文档列表

shell
curl --location --request GET 'https://openapi.youdao.com/q_anything/api/file_list?kbId=KB0f2cf0ae51684a9ca44b1af6cc091eed_240430' \
--header 'Authorization: {{apikey}}' \
json
{
  "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id(必填)
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "3402a048-cc30-46a1-839e-318b81ca85ee", // 请求id
  "result": [
    {
      "fileId": "dcc4da6435674e68a16248147f200d73", // 文档id
      "fileName": "3361515-3539268.html.web", // 文档名称
      "status": "0", // 文档状态 0:上传完成 1:解析完成(可以参与问答) 2:解析失败 3:上传文件大小超过限制
      "charSize": 0 // 除文档解析完成外,charSize都是0
    }
  ]
}

修改知识库名称

shell
curl --location --request POST 'https://openapi.youdao.com/q_anything/api/kb_config' \
--header 'Content-Type: application/json' \
--data-raw '{
    "kbId": "KB248e8e079642491383596f63c2ab069a_240430",
    "kbName": "知识库2"
}'
json
{
  "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id(必填)
  "kbName": "知识库2",  // 新的知识库名称,长度不超过100字符(必填)
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "268e0df0-547a-4a06-b71a-be63d283e259", // 请求id
  "result": null // 结果
}

创建问答集

为知识库创建问答集

shell
curl --location --request POST 'https://openapi.youdao.com/q_anything/api/upload_faq' \
--header 'Content-Type: multipart/form-data' \
--form 'kbId="KBa3d4f06881484a97a1c78d058ec92869_240430"' \
--form 'question="你好"' \
--form 'answer="你好呀"' \
json
{
  "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id(必填)
  "question": "你好",  // 问题,长度不超过500字符(必填)
  "answer": "你好呀", // 回答,长度不超过2000字符(必填)
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "268e0df0-547a-4a06-b71a-be63d283e259", // 请求id
  "result": {
    "faqId": "5df397aa27f544b4a156136011a2e34c", // 问答集id
    "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id
    "question": "你好", // 问题
    "answer": "你好呀", // 回答
    "size": 3, // 字符数
    "status": 0 // 文档状态 0:上传完成 1:解析完成(可以参与问答) 2:解析失败 3:上传文件大小超过限制
  }
}

更新问答集

shell
curl --location --request POST 'https://openapi.youdao.com/q_anything/api/update_faq' \
--header 'Content-Type: multipart/form-data' \
--form 'kbId="KBa3d4f06881484a97a1c78d058ec92869_240430"' \
--form 'faqId="5df397aa27f544b4a156136011a2e34c"' \
--form 'question="你好吗"' \
--form 'answer="我很好"' \
json
{
  "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id(必填)
  "faqId": "5df397aa27f544b4a156136011a2e34c", // 问答集id(必填)
  "question": "你好吗",  // 问题,长度不超过500字符(必填)
  "answer": "我很好", // 回答,长度不超过2000字符(必填)
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "268e0df0-547a-4a06-b71a-be63d283e259", // 请求id
  "result": {
    "faqId": "5df397aa27f544b4a156136011a2e34c", // 问答集id
    "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id
    "question": "你好吗", // 问题
    "answer": "我很好", // 回答
    "size": 3, // 字符数
    "status": 0 // 文档状态 0:上传完成 1:解析完成(可以参与问答) 2:解析失败 3:上传文件大小超过限制
  }
}

删除问答集

shell
curl --location --request POST 'https://openapi.youdao.com/q_anything/api/delete_faq' \
--header 'Content-Type: application/json' \
--data-raw '{
    "kbId": "KB248e8e079642491383596f63c2ab069a_240430",
    "faqIds": ["5df397aa27f544b4a156136011a2e34c"]
}'
json
{
  "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id(必填)
  "faqIds": ["5df397aa27f544b4a156136011a2e34c"], // 需要删除的问答集id(faqId),json数组形式,可传多个(必填)
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "268e0df0-547a-4a06-b71a-be63d283e259", // 请求id
  "result": null // 结果
}

查询问答集列表

shell
curl --location --request GET 'https://openapi.youdao.com/q_anything/api/faq_list?kbId={{kbId}}' \
--header 'Authorization:  {{apikey}}' \
json
{
  "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id(必填)
  "page": "1", // 页数,默认1
  "pageSize": "10", // 每页条数,最长不超过50,默认50
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "268e0df0-547a-4a06-b71a-be63d283e259", // 请求id
  "result": {
    "faqList": [ // 问答集列表
      {
        "faqId": "5df397aa27f544b4a156136011a2e34c", // 问答集id
        "kbId": "KB248e8e079642491383596f63c2ab069a_240430", // 知识库id
        "question": "你好吗", // 问题
        "answer": "我很好", // 回答
        "size": 3, // 字符数
        "status": 1, // 文档状态 0:上传完成 1:解析完成(可以参与问答) 2:解析失败 3:上传文件大小超过限制
      }
    ],
    "total": 5 // 问答集总数
  }
}

查询 faq 详情

shell
curl --location --request POST 'https://openapi.youdao.com/q_anything/api/faqDetail' \
--header 'Authorization: {{apikey}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "kbId": "KB8d21ee7e280b438d81dea9997b743a31_240xxx",
    "faqId": "aef2d9f5fc3540f7a06a1b67f6f79xxx"
}'
json
{
  "kbId": "KB8d21ee7e280b438d81dea9997b743a31_240XXX", // faq对应知识库id,必选
  "faqId": "77241f857397464794929101bedfeXXX" // faqId,必选
}
json
{
  "errorCode": 0, // 错误码
  "msg": "SUCCESS", // 描述
  "requestId": "268e0df0-547a-4a06-b71a-be63d283eXXX", // 请求id
  "result": {
    "faqId": "77241f857397464794929101bedfeXXX", // 问答集id
    "kbId": "KB8d21ee7e280b438d81dea9997b743a31_240XXX", // 知识库id
    "question": "你好吗", // 问题
    "answer": "我很好", // 回答
    "size": 3, // 字符数
    "status": 1 // 文档状态 0:上传完成 1:解析完成(可以参与问答) 2:解析失败 3:上传文件大小超过限制
  }
}

基于 MIT 许可发布