有道速讀簡介
概念解釋
有道速讀服務(wù)有道速讀服務(wù)支持快速從文檔中提取、定位、匯總信息,為你一站式解決文檔摘要、文檔解析、文檔QA方面的問題
說明
Hi,您好,歡迎使用有道智云有道速讀接口服務(wù)。
本文檔主要針對需要集成HTTP API的技術(shù)開發(fā)工程師,詳細(xì)描述有道速讀能力相關(guān)的技術(shù)內(nèi)容。
如果您有與我們商務(wù)合作的需求,可以通過以下方式聯(lián)系我們:
商務(wù)郵箱: AIcloud_Business@corp.youdao.com
如果您對文檔內(nèi)容有任何疑問,可以通過以下幾種方式聯(lián)系我們:
客服QQ:1906538062
AIGC產(chǎn)品技術(shù)交流群 :837394306
聯(lián)系郵箱: zhiyun@corp.youdao.com
溫馨提示:
- 本文檔主要針對開發(fā)人員,接入測試前需要獲取應(yīng)用ID和應(yīng)用密鑰,并創(chuàng)建應(yīng)用;如果您還沒有,請按照 新手指南 獲取。
- 平臺向每個賬戶贈送50元的體驗(yàn)金,供用戶集成前測試所用。
協(xié)議須知
調(diào)用方在集成文檔問答API時,請遵循以下規(guī)則。
規(guī)則 | 描述 |
---|
傳輸方式 | HTTPS |
請求方式 | POST |
字符編碼 | 統(tǒng)一使用UTF-8 編碼 |
請求格式 | 表單 |
響應(yīng)格式 | json 或者 text/event-stream |
接口調(diào)用參數(shù)
有道速讀線上調(diào)用地址:
https://openapi.youdao.com/document_qa
服務(wù)耗時說明
超時時間設(shè)置范圍 |
---|
請根據(jù)文檔的篇幅合理設(shè)置超時時間,避免造成模型處理過程中出現(xiàn)超時錯誤。 |
注意:
簽名生成方法如下:
signType=v3;
sign=sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰);
其中,input的計算方式為:input=q前10個字符 + q長度 + q后10個字符(當(dāng)q長度大于20)或 input=q字符串(當(dāng)q長度小于等于20);
有道速讀接口定義
獲取版本接口
- 接口uri:/get_version
- 接口說明:
獲取不同模型的最新版本號,不同版本號的模型生成的結(jié)果可能不同。
字段名 | 類型 | 含義 | 必填 | 備注 |
---|
q | text | 無實(shí)際含義,僅為了計算簽名 | True | 必須是UTF-8編碼 |
appKey | text | 應(yīng)用ID | True | 可在應(yīng)用管理 查看 |
salt | text | 隨機(jī)字符串,可使用UUID進(jìn)行生產(chǎn) | True | uuid (可使用uuid生成) |
sign | text | 簽名 | True | sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
signType | text | 簽名類型 | True | v3 |
curtime | text | 當(dāng)前UTC時間戳(秒) | True | TimeStamp |
{
"requestId": "38c7d97c-affe-43cb-be80-2ce86c279116",
"errorCode": "0",
"msg": "SUCCESS",
"result": {
"reputation_service_version": "0.0.14_20231225_dev3", // 當(dāng)前最新的論文口碑算法版本。
"parse_service_version": "1.0.16_20240131", // 當(dāng)前最新的 PDF 解析算法版本。
"survey_service_version": "v0.1.2", // 當(dāng)前最新的自動綜述算法版本。
"analyze_service_version": "0.0.3_20240112_dev2" // 當(dāng)前最新的文章解讀算法版本。
}
}
pdf解析接口
- 接口uri:/parse_pdf
- 接口說明:
對文檔進(jìn)行解析。 - 接口參數(shù):
字段名 | 類型 | 含義 | 必填 | 備注 |
---|
q | text | pdf文件的base64編碼 | True | 必須是UTF-8編碼 |
appKey | text | 應(yīng)用ID | True | 可在應(yīng)用管理 查看 |
salt | text | 隨機(jī)字符串,可使用UUID進(jìn)行生產(chǎn) | True | uuid (可使用uuid生成) |
sign | text | 簽名 | True | sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
signType | text | 簽名類型 | True | v3 |
curtime | text | 當(dāng)前UTC時間戳(秒) | True | TimeStamp |
{
"requestId": "b470ab36-e7ea-44e8-93bd-0b3830f6aac7",
"errorCode": "0",
"msg": "SUCCESS",
"result": {
"doc_id": "/RD4Jb29sEEmggjkDYWU8QuqZZ4vKUpwJGwvML12PgnAvJZqDL5kMapKmeDk3eg/", // pdf文檔的唯一標(biāo)識,后續(xù)問答、綜述接口的請求參數(shù)之一。
"generated_questions": "", // 自動生成的推薦問題,每行一個問題。
"whole_doc_summary": null, // 保留字段,暫不使用。
"chunks_json": [ // 文檔解析結(jié)果
{
"summary": {}, // 保留字段,暫不使用
"page_ids": [ // 標(biāo)識當(dāng)前chunk跨了哪些頁
0
],
"locations": [ // 每個元素是一個block
{
"page_id": 0,
"page_w": "612",
"bbox": "74,114,462,37",
"lines": [ // 各行文字的bbox
{
"line_text": "On the (in)consistency of perturbation theory at finite ",
"line_fontsize": 17,
"line_bbox": "74,114,462,15"
},
{
"line_text": "temperature ",
"line_fontsize": 17,
"line_bbox": "253,136,104,15"
}
],
"page_h": "792"
}
],
"summary_status": 0, // 0-無需摘要(對于title和hi類型的chunk取值為0); 1-需要請求摘要接口生成摘要(對于normal類型的chunk取值為1);
"text": "On the (in)consistency of perturbation theory at finite temperature ", // 當(dāng)前chunk對應(yīng)的文本內(nèi)容
"chunk_id": "0", // chunk id
"chunk_type": "title" // 當(dāng)前chunk對應(yīng)的文本類型, 取值:title-大標(biāo)題; h1-小標(biāo)題; normal-正文;
}
],
"doc_page_num": "21", // pdf 文檔總頁數(shù) 計費(fèi)使用該字段
"parse_service_version": "1.0.16_20240131" // 算法服務(wù)版本號
}
}
摘要接口
- 接口uri:/get_summary
- 接口說明:
對入?yún)⑽谋旧烧?/li> - 接口參數(shù):
字段名 | 類型 | 含義 | 必填 | 備注 |
---|
q | text | 準(zhǔn)備生成摘要的文本 | True | 限制5000字符 |
lang | text | 預(yù)期模型返回的語種 | False | zh(默認(rèn)) /en |
appKey | text | 應(yīng)用ID | True | 可在應(yīng)用管理 查看 |
salt | text | 隨機(jī)字符串,可使用UUID進(jìn)行生產(chǎn) | True | uuid (可使用uuid生成) |
sign | text | 簽名 | True | sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
signType | text | 簽名類型 | True | v3 |
curtime | text | 當(dāng)前UTC時間戳(秒) | True | TimeStamp |
{
"requestId": "4c0e5494-ae63-4ce3-ba3e-b5b59fb13034",
"errorCode": "0",
"msg": "SUCCESS",
"result": "" // 摘要
}
問答接口
- 接口uri:/chat
- 接口說明:
對文檔內(nèi)容進(jìn)行問答。 - 接口參數(shù):
字段名 | 類型 | 含義 | 必填 | 備注 |
---|
qaId | text | 標(biāo)識一個對話窗口,同一個對話窗口中的問答歷史可能影響接下來模型的回復(fù)內(nèi)容 | True |
docId | text | 解析接口返回的文檔Id | True |
q | text | 問題 | True | 長度限制2000 |
qaType | text | "0"-標(biāo)準(zhǔn)問答模式;"1"-解釋 q 中的話,一般用于“選中原文片段要求解釋”等功能 | False | 0(默認(rèn)) |
lang | text | 需要模型返回的語種 | False | zh(默認(rèn)) /en |
appKey | text | 應(yīng)用ID | True | 可在應(yīng)用管理 查看 |
salt | text | 隨機(jī)字符串,可使用UUID進(jìn)行生產(chǎn) | True | uuid (可使用uuid生成) |
sign | text | 簽名 | True | sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
signType | text | 簽名類型 | True | v3 |
curtime | text | 當(dāng)前UTC時間戳(秒) | True | TimeStamp |
event:request info
data: {
"requestId": "7ebb17fb-53c9-4da1-9024-3e1021fc60a0",
"docId": "/RD4Jb29sEEmggjkDYWU8QuqZZ4vKUpwJGwvML12PgnAvJZqDL5kMapKmeDk3eg/",
"qaId": "6a20b56a-6d18-45d7-9f71-fa03c9eb6d20"
}
data: {
"content": "是"
}
data: {
"content": "的"
}
// 省略其他data
event:docsrc // 倒數(shù)第二條消息
data: {
"sources": [
{
"chunk_id": "27",
"page_id": 12
}
]
}
event:end // 表示是最后一條消息
data: {
"message": "Connection closed",
"sources": [ // 當(dāng)前信息的來源
{
"chunk_id": "27",
"page_id": 12
}
]
}
綜述接口
- 接口uri:/get_review
- 接口說明:
圍繞用戶指定的文檔,生成綜述。 - 接口參數(shù):
字段名 | 類型 | 含義 | 必填 | 備注 |
---|
docId | text | 解析接口返回的文檔Id | True | 生成簽名時的q取值為docId的取值 |
appKey | text | 應(yīng)用ID | True | 可在應(yīng)用管理 查看 |
salt | text | 隨機(jī)字符串,可使用UUID進(jìn)行生產(chǎn) | True | uuid (可使用uuid生成) |
sign | text | 簽名 | True | sha256(應(yīng)用ID+input+salt+curtime+應(yīng)用密鑰) |
signType | text | 簽名類型 | True | v3 |
curtime | text | 當(dāng)前UTC時間戳(秒) | True | TimeStamp |
正常結(jié)果:
event:request info
data:{requestId='4897756f-015d-4725-a717-f7829bb0babf', docId='/RD4Jb29sEEmggjkDYWU8QuqZZ4vKUpwJGwvML12PgnAvJZqDL5kMapKmeDk3eg/', qaId='null'}
event:stream // 一堆 event = stream 的片段,其 data 都是 json
data:{"content": "# Introduction\n\nPerturbation theory, finite temperature, quantum field theory, and propagators are fundamental concepts in theoretical physics. "}
// 省略其他的 event stream
event:finished // 一條 event = finished 的片段,其 data 也是 json,json 的content 字段是完整的自動綜述內(nèi)容全文.這個片段中,包含了model_version字段,用以表明當(dāng)前論文自動綜述的算法版本號。
data:{"content": "# 1. Introduction\n\nPerturbation theory, finite temperature, quantum field theory, and propagators are fundamental concepts in theoretical physics. "}
event:end // 一條 event = end 的片段,其內(nèi)容為 {"message": "Connection closed"}。
data:{"message": "Connection closed"}
異常結(jié)果:
當(dāng)請求的文檔不是論文時,會只返回一條 event = end 的消息:
event:end
data:{"message": "Connection closed"}
錯誤代碼列表
狀態(tài)碼 | 狀態(tài)碼含義 |
---|
101 | 缺少必填的參數(shù),首先確保必填參數(shù)齊全,然后,確認(rèn)參數(shù)書寫是否正確。 |
102 | 不支持的語言類型 |
103 | 翻譯文本過長 |
104 | 不支持的API類型 |
105 | 不支持的簽名類型 |
106 | 不支持的響應(yīng)類型 |
107 | 不支持的傳輸加密類型 |
108 | 應(yīng)用ID無效,注冊賬號,登錄后臺創(chuàng)建應(yīng)用并完成綁定,可獲得應(yīng)用ID和應(yīng)用密鑰等信息 |
109 | batchLog格式不正確 |
110 | 無相關(guān)服務(wù)的有效應(yīng)用,應(yīng)用沒有綁定服務(wù)。注:某些服務(wù)的結(jié)果發(fā)音需要tts服務(wù),需要在控制臺創(chuàng)建語音合成實(shí)例綁定應(yīng)用后方能使用。 |
111 | 開發(fā)者賬號無效 |
112 | 請求服務(wù)無效 |
113 | q不能為空 |
114 | 不支持的圖片傳輸方式 |
201 | 解密失敗,可能為DES,BASE64,URLDecode的錯誤 |
202 | 簽名檢驗(yàn)失敗,如果確認(rèn)應(yīng)用ID和應(yīng)用密鑰的正確性,仍返回202,一般是編碼問題。請確保翻譯文本 q 為UTF-8編碼. |
203 | 訪問IP地址不在可訪問IP列表 |
205 | 請求的接口與應(yīng)用的平臺類型不一致,確保接入方式(Android SDK、IOS SDK、API)與創(chuàng)建的應(yīng)用平臺類型一致。如有疑問請參考入門指南 |
206 | 因?yàn)闀r間戳無效導(dǎo)致簽名校驗(yàn)失敗 |
207 | 重放請求 |
303 | 服務(wù)異常 |
405 | 鑒權(quán)失敗 |
DQA001 | q 長度超出限制 |
DQA002 | 獲取版本號失敗 |
DQA003 | 解析pdf失敗 |
DQA004 | pdf文件異常 |
DQA005 | 生成摘要失敗 |
DQA006 | 不支持的qa type |
DQA007 | 問答失敗 |
DQA008 | doc id 解析異常 |
DQA100 | 請求體超出限制 |