qanything簡介
概念解釋
qanything可以實(shí)現(xiàn)文檔知識(shí)庫問答,采用網(wǎng)頁爬蟲/文檔解析等技術(shù),生成專屬您的個(gè)人知識(shí)庫!讀、查、問、寫一站實(shí)現(xiàn)。為您提供快速、精準(zhǔn)、高效的文檔處理與知識(shí)管理體驗(yàn)。
訪問 https://read.youdao.com/qanything/#/home 可視化配置管理知識(shí)庫。
說明
Hi,您好,歡迎使用有道智云qanything接口服務(wù)。
本文檔主要針對(duì)需要集成HTTP API的技術(shù)開發(fā)工程師,詳細(xì)描 述qanything能力相關(guān)的技術(shù)內(nèi)容。
如果您有與我們商務(wù)合作的需求,可以通過以下方式聯(lián)系我們:
商務(wù)郵箱: AIcloud_Business@corp.youdao.com
如果您對(duì)文檔內(nèi)容有任何疑問,可以通過以下幾種方式聯(lián)系我們:
客服QQ:1906538062
AIGC產(chǎn)品技術(shù)交流群 :837394306
聯(lián)系郵箱: zhiyun@corp.youdao.com
溫馨提示:
- 本文檔主要針對(duì)開發(fā)人員,接入測試前需要獲取應(yīng)用ID和應(yīng)用密鑰,并創(chuàng)建應(yīng)用;如果您還沒有,請(qǐng)按照 新手指南 獲取。
- 平臺(tái)向每個(gè)賬戶贈(zèng)送50元的體驗(yàn)金,供用戶集成前測試所用。
接口調(diào)用參數(shù)
請(qǐng)求地址
baseUrl: https://openapi.youdao.com
知識(shí)庫管理
創(chuàng)建知識(shí)庫
1、接口說明:
創(chuàng)建知識(shí)庫,獲取知識(shí)庫id。
2、地址:
baseUrl + /q_anything/paas/create_kb
請(qǐng)求方式: POST
Content-Type: application/json
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
可在應(yīng)用管理 查看 |
true |
curtime |
時(shí)間戳(秒) |
當(dāng)前UTC時(shí)間戳(秒) |
true |
q |
知識(shí)庫名稱 |
長度不超過100字符 |
true |
salt |
隨機(jī)字符串 |
建議使用UUID |
true |
sign |
簽名信息:sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
|
true |
signType |
簽名類型 |
v3 |
true |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰);
其中,input的計(jì)算方式為:input=q前10個(gè)字符 + q長度 + q后10個(gè)字符(當(dāng)q長度大于20)或 input=q字符串(當(dāng)q長度小于等于20);
3、返回結(jié)果:
參數(shù)名稱 |
描述 |
類型 |
errorCode |
錯(cuò)誤碼 |
text |
msg |
描述 |
text |
requestId |
請(qǐng)求id |
text |
result |
結(jié)果 |
|
+kbId |
知識(shí)庫id |
text |
++kbName |
知識(shí)庫名稱 |
text |
刪除知識(shí)庫
1、接口說明:
刪除知識(shí)庫
2、地址:
baseUrl + /q_anything/paas/delete_kb
請(qǐng)求方式: POST
Content-Type: application/json
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
|
true |
curtime |
時(shí)間戳(秒) |
|
true |
q |
知識(shí)庫id |
長度不超過100字符 |
true |
salt |
隨機(jī)字符串 |
建議使用UUID |
true |
sign |
簽名信息:sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
|
true |
signType |
簽名類型 |
v3 |
true |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰);
其中,input的計(jì)算方式為:input=q前10個(gè)字符 + q長度 + q后10個(gè)字符(當(dāng)q長度大于20)或 input=q字符串(當(dāng)q長度小于等于20);
3、返回結(jié)果:
參數(shù)名稱 |
描述 |
類型 |
errorCode |
錯(cuò)誤碼 |
text |
msg |
描述 |
text |
requestId |
請(qǐng)求id |
text |
result |
結(jié)果 |
|
上傳文檔(文件)
1、接口說明:
為知識(shí)庫添加文檔
2、地址:
baseUrl + /q_anything/paas/upload_file
請(qǐng)求方式: POST
Content-Type: multipart/form-data
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
|
true |
curtime |
時(shí)間戳(秒) |
|
true |
q |
知識(shí)庫id (kbid) |
長度不超過100字符 |
true |
salt |
隨機(jī)字符串 |
建議使用UUID |
true |
sign |
簽名信息:sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
|
true |
signType |
簽名類型 |
v3 |
true |
file |
文檔文件 |
圖片大小不超過5M,文檔大小不超過30M。該字段可存在多個(gè),即批量文檔上傳 |
true |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰);
其中,input的計(jì)算方式為:input=q前10個(gè)字符 + q長度 + q后10個(gè)字符(當(dāng)q長度大于20)或 input=q字符串(當(dāng)q長度小于等于20);
3、返回結(jié)果:
參數(shù)名稱 |
描述 |
類型 |
errorCode |
錯(cuò)誤碼 |
text |
msg |
描述 |
text |
requestId |
請(qǐng)求id |
text |
result |
結(jié)果 |
array |
+fileId |
文檔id |
text |
+fileName |
文檔名稱 |
text |
+status |
文檔狀態(tài),取值見4. |
text |
上傳文檔連接(url)
1、接口說明:
為知識(shí)庫添加文檔
2、地址:
baseUrl + /q_anything/paas/upload_url
請(qǐng)求方式: POST
Content-Type: application/json
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
|
true |
curtime |
時(shí)間戳(秒) |
|
true |
q |
知識(shí)庫id (kbid) |
長度不超過100字符 |
true |
salt |
隨機(jī)字符串 |
建議使用UUID |
true |
sign |
簽名信息:sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
|
true |
signType |
簽名類型 |
v3 |
true |
url |
文檔連接url |
url長度不超過5000字符,資源大小不超過30M |
true |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰);
其中,input的計(jì)算方式為:input=q前10個(gè)字符 + q長度 + q后10個(gè)字符(當(dāng)q長度大于20)或 input=q字符串(當(dāng)q長度小于等于20);
3、返回結(jié)果:
參數(shù)名稱 |
描述 |
類型 |
errorCode |
錯(cuò)誤碼 |
text |
msg |
描述 |
text |
requestId |
請(qǐng)求id |
text |
result |
結(jié)果 |
array |
+fileId |
文檔id |
text |
+fileName |
文檔名稱 |
text |
+status |
文檔狀態(tài),取值見4. |
text |
刪除文檔
1、接口說明:
刪除知識(shí)庫中的文檔
2、地址:
baseUrl + /q_anything/paas/delete_file
請(qǐng)求方式: POST
Content-Type: application/json
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
|
true |
curtime |
時(shí)間戳(秒) |
|
true |
q |
知識(shí)庫id (kbid) |
長度不超過100字符 |
true |
salt |
隨機(jī)字符串 |
建議使用UUID |
true |
sign |
簽名信息:sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
|
true |
signType |
簽名類型 |
v3 |
true |
fileIds |
需要?jiǎng)h除的文檔id(fileId) |
json數(shù)組形式,例:[XXX,XXX] |
true |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰);
其中,input的計(jì)算方式為:input=q前10個(gè)字符 + q長度 + q后10個(gè)字符(當(dāng)q長度大于20)或 input=q字符串(當(dāng)q長度小于等于20);
3、返回結(jié)果:
參數(shù)名稱 |
描述 |
類型 |
errorCode |
錯(cuò)誤碼 |
text |
msg |
描述 |
text |
requestId |
請(qǐng)求id |
text |
result |
結(jié)果 |
array |
查詢知識(shí)庫列表
1、接口說明:
獲取所有知識(shí)庫列表
2、地址:
baseUrl + /q_anything/paas/kb_list
請(qǐng)求方式: POST
Content-Type: application/json
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
|
true |
curtime |
時(shí)間戳(秒) |
|
true |
salt |
隨機(jī)字符串 |
建議使用UUID |
true |
sign |
簽名信息:sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
|
true |
signType |
簽名類型 |
v3 |
true |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+salt+curtime+應(yīng)用密鑰);
3、返回結(jié)果:
參數(shù)名稱 |
描述 |
類型 |
errorCode |
錯(cuò)誤碼 |
text |
msg |
描述 |
text |
requestId |
請(qǐng)求id |
text |
result |
結(jié)果 |
array |
+kbId |
知識(shí)庫id |
text |
+kbName |
知識(shí)庫名稱 |
text |
查詢知識(shí)庫文檔列表
1、接口說明:
查詢知識(shí)庫文檔列表
2、地址:
baseUrl + /q_anything/paas/file_list
請(qǐng)求方式: POST
Content-Type: application/json
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
|
true |
curtime |
時(shí)間戳(秒) |
|
true |
q |
知識(shí)庫id (kbid) |
長度不超過100字符 |
true |
salt |
隨機(jī)字符串 |
建議使用UUID |
true |
sign |
簽名信息:sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
|
true |
signType |
簽名類型 |
v3 |
true |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰);
其中,input的計(jì)算方式為:input=q前10個(gè)字符 + q長度 + q后10個(gè)字符(當(dāng)q長度大于20)或 input=q字符串(當(dāng)q長度小于等于20);
3、返回結(jié)果:
參數(shù)名稱 |
描述 |
類型 |
errorCode |
錯(cuò)誤碼 |
text |
msg |
描述 |
text |
requestId |
請(qǐng)求id |
text |
result |
結(jié)果 |
array |
+fileId |
文檔id |
text |
+fileName |
文檔名稱 |
text |
+status |
文檔狀態(tài),取值見4. |
text |
知識(shí)庫問答
知識(shí)庫問答(onetime)
1、接口說明:
知識(shí)庫問答對(duì)話, 一次性返回對(duì)話結(jié)果
2、地址:
baseUrl + /q_anything/paas/chat
請(qǐng)求方式: POST
Content-Type: application/json
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
|
true |
curtime |
時(shí)間戳(秒) |
|
true |
q |
提問內(nèi)容 |
長度不超過200字符 |
true |
salt |
隨機(jī)字符串 |
建議使用UUID |
true |
sign |
簽名信息:sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
|
true |
signType |
簽名類型 |
v3 |
true |
kbIds |
知識(shí)庫id |
json數(shù)組類型,多知識(shí)庫問答 |
true |
prompt |
請(qǐng)求prompt |
不超過500字符 |
false |
history |
對(duì)話歷史 |
json數(shù)組類型,最多支持兩輪對(duì)話歷史消息 |
false |
+question |
歷史提問(歷史發(fā)送的q) |
|
true |
+response |
歷史回答(模型發(fā)送的歷史response) |
|
true |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰);
其中,input的計(jì)算方式為:input=q前10個(gè)字符 + q長度 + q后10個(gè)字符(當(dāng)q長度大于20)或 input=q字符串(當(dāng)q長度小于等于20);
3、返回結(jié)果:
參數(shù)名稱 |
描述 |
類型 |
errorCode |
錯(cuò)誤碼 |
text |
msg |
描述 |
text |
requestId |
請(qǐng)求id |
text |
result |
結(jié)果 |
|
+question |
本輪提問 |
text |
+response |
本輪回答 |
text |
+history |
歷史問答 |
array |
++question |
歷史提問 |
text |
++response |
歷史回答 |
text |
+source |
文檔出處 |
array |
++fileId |
文檔id |
text |
++fileName |
文檔名稱 |
text |
++content |
原文內(nèi)容 |
text |
++source |
可信度 |
text |
知識(shí)庫問答(stream)
1、接口說明:
知識(shí)庫問答對(duì)話, text/event-stream流式返回回答內(nèi)容
2、地址:
baseUrl + /q_anything/paas/chat_stream
請(qǐng)求方式: POST
Content-Type: application/json
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
|
true |
curtime |
時(shí)間戳(秒) |
|
true |
q |
提問內(nèi)容 |
長度不超過200字符 |
true |
salt |
隨機(jī)字符串 |
建議使用UUID |
true |
sign |
簽名信息:sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
|
true |
signType |
簽名類型 |
v3 |
true |
kbIds |
知識(shí)庫id |
json數(shù)組類型,多知識(shí)庫問答 |
true |
history |
對(duì)話歷史 |
json數(shù)組類型,最多支持兩輪對(duì)話歷史消息 |
false |
prompt |
請(qǐng)求prompt |
不超過500字符 |
false |
+question |
歷史提問(歷史發(fā)送的q) |
|
true |
+response |
歷史回答(模型發(fā)送的歷史response) |
|
true |
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰);
其中,input的計(jì)算方式為:input=q前10個(gè)字符 + q長度 + q后10個(gè)字符(當(dāng)q長度大于20)或 input=q字符串(當(dāng)q長度小于等于20);
3、返回結(jié)果:
中間過程只有source字段的content有值, 其余字段的信息在最終分片返回。
參數(shù)名稱 |
描述 |
類型 |
errorCode |
錯(cuò)誤碼 |
text |
msg |
描述 |
text |
requestId |
請(qǐng)求id |
text |
result |
結(jié)果 |
|
+question |
本輪提問 |
text |
+response |
本輪回答 |
text |
+history |
歷史問答 |
array |
++question |
歷史提問 |
text |
++response |
歷史回答 |
text |
+source |
文檔出處 |
array |
++fileId |
文檔id |
text |
++fileName |
文檔名稱 |
text |
++content |
原文內(nèi)容 |
text |
++score |
可信度,取值范圍(0-1) |
text |
文檔狀態(tài)說明(status)
狀態(tài)碼 |
含義 |
0 |
上傳完成 |
1 |
解析完成(可以參與問答) |
2 |
解析失敗 |
3 |
上傳文件大小超過限制 |
服務(wù)配置
服務(wù)名稱 |
使用限制 |
文檔可用空間 |
5G |
知識(shí)庫使用上限 |
100個(gè) |
常用語言 Demo
Java 示例
Qanything Java demo
Python3 示例
Qanything python3 demo
go示例
Qanything go demo
錯(cuò)誤碼
錯(cuò)誤碼 |
msg |
101 |
缺少必填的參數(shù),首先確保必填參數(shù)齊全,然后,確認(rèn)參數(shù)書寫是否正確。 |
104 |
不支持的API類型 |
105 |
不支持的簽名類型 |
106 |
不支持的響應(yīng)類型 |
110 |
無相關(guān)服務(wù)的有效應(yīng)用,應(yīng)用沒有綁定服務(wù),可以新建服務(wù)。注:某些服務(wù)的結(jié)果發(fā)音需要tts服務(wù),需要在控制臺(tái)創(chuàng)建語音合成實(shí)例綁定應(yīng)用后方能使用。 |
111 |
開發(fā)者賬號(hào)無效 |
202 |
簽名檢驗(yàn)失敗,如果確認(rèn)應(yīng)用ID和應(yīng)用密鑰的正確性,仍返回202,一般是編碼問題。請(qǐng)確保翻譯文本 q 為UTF-8編碼. |
203 |
訪問IP地址不在可訪問IP列表 |
205 |
請(qǐng)求的接口與應(yīng)用的平臺(tái)類型不一致,確保接入方式(Android SDK、IOS SDK、API)與創(chuàng)建的應(yīng)用平臺(tái)類型一致。如有疑問請(qǐng)參考入門指南 |
206 |
因?yàn)闀r(shí)間戳無效導(dǎo)致簽名校驗(yàn)失敗 |
207 |
重放請(qǐng)求 |
303 |
服務(wù)端的其它異常 |
401 |
賬戶已經(jīng)欠費(fèi)停 |
405 |
鑒權(quán)失敗 |
QA10001 |
請(qǐng)求api失敗 |
QA10002 |
知識(shí)庫id錯(cuò)誤 |
QA10003 |
文件上傳額度超限, 默認(rèn)文件總大小不超過5G,知識(shí)庫創(chuàng)建總數(shù)100個(gè) |
QA10004 |
文件上傳過大 |
QA10005 |
不支持的文件格式 |
QA10006 |
fileId錯(cuò)誤 |
QA10007 |
url格式錯(cuò)誤 |
QA10008 |
獲取url資源失敗 |