英文作文批改(圖像識(shí)別-高級(jí)版) API 簡(jiǎn)介
說(shuō)明
Hi,您好,歡迎使用有道智云英文作文批改(圖像識(shí)別-高級(jí)版)API 接口服務(wù)。
本文檔主要針對(duì)需要集成 HTTP API 的技術(shù)開(kāi)發(fā)工程師,詳細(xì)描述英文作文批改(圖像識(shí)別-高級(jí)版)能力相關(guān)的技術(shù)內(nèi)容。
如果您有與我們商務(wù)合作的需求,可以通過(guò)以下方式聯(lián)系我們:
商務(wù)郵箱: AIcloud_Business@corp.youdao.com
如果您對(duì)文檔內(nèi)容有任何疑問(wèn),可以通過(guò)以下幾種方式聯(lián)系我們:
客服 QQ:1906538062
智云作文批改技術(shù)交流 QQ 1 群: 1092639188
聯(lián)系郵箱: zhiyun@corp.youdao.com
溫馨提示:
本文檔主要針對(duì)開(kāi)發(fā)人員,接入測(cè)試前需要獲取應(yīng)用 ID 和應(yīng)用密鑰;如果您還沒(méi)有,請(qǐng)按照 新手指南 獲取。
平臺(tái)向每個(gè)賬戶(hù)贈(zèng)送 50 元的體驗(yàn)金,供用戶(hù)集成前測(cè)試所用,具體資費(fèi)規(guī)則詳見(jiàn) 英文作文批改服務(wù)報(bào)價(jià) 。
接口說(shuō)明
有道 AI 團(tuán)隊(duì)自研的基于深度學(xué)習(xí)網(wǎng)絡(luò)技術(shù)的自動(dòng)作文批改技術(shù)。覆蓋學(xué)生英語(yǔ)學(xué)習(xí)全周期,提供高參考價(jià)值的智能批改功能,用戶(hù)只需要輸入一篇英文作文,選擇對(duì)應(yīng)的英文級(jí)別,智能批改服務(wù)即可一鍵給出文章得分、整體評(píng)價(jià)、拼寫(xiě)錯(cuò)誤反饋、語(yǔ)法錯(cuò)誤反饋、主題相關(guān)度反饋、以及高級(jí)詞匯和推薦詞組等一系列結(jié)果,從而向用戶(hù)提供針對(duì)性的作文指導(dǎo)意見(jiàn)。
請(qǐng)求地址
英文作文批改(圖像識(shí)別-高級(jí)版) API HTTPS 地址:
https://openapi.youdao.com/v3/correct_writing_image
協(xié)議須知
調(diào)用方在集成文本翻譯 API 時(shí),請(qǐng)遵循以下規(guī)則。
規(guī)則 |
描述 |
傳輸方式 |
HTTPS |
求方式 |
POST |
字符編碼 |
統(tǒng)一使用 UTF-8 編碼 |
請(qǐng)求格式 |
表單 |
響應(yīng)格式 |
JSON |
請(qǐng)求參數(shù)
字段名 |
含義 |
備注 |
必填 |
appKey |
應(yīng)用標(biāo)識(shí)(應(yīng)用 ID) |
**** 325f2a1d4**** |
true |
curtime |
時(shí)間戳 |
當(dāng)前UTC時(shí)間戳(秒) |
true |
q |
正文文本 |
圖片文本 |
true |
salt |
隨機(jī)字符串 |
推薦使用uuid確保唯一性 |
true |
sign |
簽名信息:sha256(appKey+input+salt+密鑰) |
sha256(appKey+input+salt+密鑰) |
true |
signType |
簽名類(lèi)型 |
v3 |
true |
grade |
作文等級(jí) |
取值見(jiàn)grade |
false |
title |
作文標(biāo)題和題目要求 |
標(biāo)題內(nèi)容+題目要求,5000字符以?xún)?nèi) |
false |
isNeedEssayReport |
是否返回寫(xiě)作報(bào)告(essayReport字段,僅在高級(jí)批改時(shí)生效) |
默認(rèn)為 false(true/false) |
false |
簽名生成算法如下:
signType=v3,sha256(應(yīng)用 ID+input+salt+curtime+密鑰),推薦使用
sha256 簽名計(jì)算方法為:sha256(應(yīng)用 ID+input+salt+當(dāng)前 UTC 時(shí)間戳+密鑰)。
其中,input 的計(jì)算方式為:input=多個(gè)q拼接后前10個(gè)字符 + 多個(gè)q拼接長(zhǎng)度 + 多個(gè)q拼接后十個(gè)字符(當(dāng)多個(gè) q 拼接后長(zhǎng)度大于 20)或 input=多個(gè)q拼接的字符串(當(dāng)多個(gè) q 拼接后長(zhǎng)度小于等于 20)。
不同語(yǔ)言獲取時(shí)間戳,請(qǐng)參看此鏈接
如果對(duì)簽名有疑問(wèn),可以參看各語(yǔ)言 demo。
服務(wù)配置
服務(wù)內(nèi)容 |
說(shuō)明 |
圖像識(shí)別 |
支持 jpg/png/bmp 格式,base64 編碼后進(jìn)行 urlencode,要求 base64 編碼 后大小不超過(guò) 4M,最短邊至少 15px,最長(zhǎng)邊最大 4096px |
grade取值
學(xué)級(jí) |
代碼 |
分?jǐn)?shù) |
不考慮級(jí)別,單純?cè)u(píng)價(jià)句子好壞 |
default |
100 |
小學(xué) |
elementary |
100 |
初中 |
junior |
100 |
高中 |
high |
25 |
四級(jí) |
cet4 |
106.5 |
六級(jí) |
cet6 |
106.5 |
考研英語(yǔ)(一)大作文 |
graduate_b1 |
20 |
考研英語(yǔ)(一)小作文 |
graduate_a1 |
10 |
考研英語(yǔ)(二)小作文 |
graduate_a2 |
10 |
考研英語(yǔ)(二)大作文 |
graduate_b2 |
15 |
托福-獨(dú)立寫(xiě)作 |
toefl_independent |
30 |
托福-綜合寫(xiě)作 |
toefl_comprehensive |
30 |
GRE |
gre |
6 |
雅思-task1 |
ielts_task1 |
9 |
雅思-task2 |
ielts_task2 |
9 |
學(xué)術(shù)寫(xiě)作 |
academic |
100 |
返回結(jié)果
參數(shù)名稱(chēng) |
描述 |
RequestId |
請(qǐng)求Id |
errorCode |
錯(cuò)誤碼 |
Result |
返回結(jié)果 |
返回結(jié)果
例:
{
"RequestId": "9cd0e024-5927-4c43-8fbf-0d36462cb4ca",
"errorCode": "0",
"Result": {
"rawEssay": "Actually, it is sort of a fish berry jam. Lots of job loss is just one thing resulting from automation. We do the essential Python on 22nd September 2019. We do an important python on the 22nd of September 2019. We have 5 apples in the important things 5 on Sep 2019.",
"sentNum": 5,
"uniqueKey": "3b9e61e0-d6c1-4194-8cf6-2c4c9ae209c2",
"essayAdvice": "",
"totalScore": 0,
"totalEvaluation": "Excellent!",
"essayLangName": "English",
"majorScore": {
"grammarScore": 89.8,
"grammarAdvice": "存在少量語(yǔ)法錯(cuò)誤,建議認(rèn)真檢查",
"topicScore": 66.2,
"wordScore": 89,
"wordAdvice": "單詞拼寫(xiě)基本正確,單詞拼寫(xiě)基礎(chǔ)扎實(shí);詞匯量較為豐富,能使用一定數(shù)量的高級(jí)詞匯",
"structureScore": 88.3,
"structureAdvice": "邏輯性不錯(cuò),上下文關(guān)系銜接較為緊密"
},
"paraNum": 1,
"essayFeedback": {
"sentsFeedback": [
{
"rawSent": "Actually, it is sort of a fish berry jam.",
"paraId": 0,
"sentId": 0,
"errorPosInfos": [
{
"id": 1668590140818,
"isValidLangChunk": true,
"orgChunk": "Actually",
"errorTypeTitle": "詞匯頻繁使用",
"startPos": 0,
"correctChunk": "Actually",
"endPos": 8,
"cardSubtitle": "替換新單詞",
"errBaseInfo": "詞匯使用頻繁,建議替換新單詞",
"errToBBasicType": "",
"detailReason": "詞匯使用頻繁",
"exampleCases": [],
"nodeType": 1,
"structType": 3,
"showType": 2,
"target": [
"Really",
"Indeed"
],
"vip": true
},
{
"id": 1668590140820,
"isValidLangChunk": true,
"orgChunk": "sort of",
"errorTypeTitle": "不必要的修飾詞",
"startPos": 16,
"correctChunk": "sort of",
"endPos": 23,
"cardSubtitle": "刪除修飾詞",
"errBaseInfo": "學(xué)術(shù)用詞具體、簡(jiǎn)潔,口語(yǔ)化的一些補(bǔ)白詞不夠正式,表意模糊,建議刪除[rValidChunk]",
"errToBBasicType": "",
"detailReason": "學(xué)術(shù)用詞具體、簡(jiǎn)潔,口語(yǔ)化的一些補(bǔ)白詞不夠正式,表意模糊",
"knowledgeExp": "學(xué)術(shù)寫(xiě)作要求用詞<b>明確、簡(jiǎn)潔</b>,類(lèi)似kind of的補(bǔ)白詞模糊性較強(qiáng),過(guò)于口語(yǔ)化,建議刪除。",
"exampleCases": [
{
"error": "An oil does not blend with water",
"rightTranslate": "油不溶于水。",
"right": "Oil does not blend with water."
}
],
"nodeType": 1,
"showType": 2,
"structType": 2,
"target": [],
"vip": true
}
],
"sentFeedback": "詞匯頻繁使用,建議替換新單詞;不必要的修飾詞,建議刪除〖sort of〗",
"sentStartPos": 0,
"correctedSent": "Actually, it is sort of a fish berry jam.",
"isContainGrammarError": false,
"isContainTypoError": false,
"isValidLangSent": true,
},
{
"rawSent": "We do the essential Python on 22nd September 2019.",
"paraId": 0,
"sentId": 2,
"errorPosInfos": [
{
"id": 1668590140825,
"isValidLangChunk": true,
"orgChunk": "22nd September",
"errorTypeTitle": "日期表達(dá)不一致",
"startPos": 30,
"correctChunk": "{\"DthMonth\":\"22nd September\",\"TheDthofMonth\":\"the 22nd of September\",\"MonthDth\":\"September 22nd\"}",
"endPos": 44,
"cardSubtitle": "使用一致的日期表達(dá)",
"errBaseInfo": "上下文日期表達(dá)不一致,建議使用一致的日期表達(dá)",
"errToBBasicType": "",
"detailReason": "上下文日期表達(dá)不一致",
"knowledgeExp": "<b>日期</b>有幾種不同表達(dá)方式。January 20,January 20th,Jan. 20,以及20 January都是正確的。一篇文章通常<b>保持日期表達(dá)一致</b>。",
"exampleCases": [
],
"parentId": "1668590140767",
"nodeType": 2,
"orgDateType": "Dth Month",
"showType": 2,
"structType": 4,
"vip": true,
"statInfo": [
{
"count": 1,
"demo": "5th Dec",
"item": "Dth Month"
},
{
"count": 1,
"demo": "The 5th of Dec",
"item": "The Dth of Month"
}
],
}
],
"sentFeedback": "大小寫(xiě)不統(tǒng)一,建議修改大小寫(xiě);日期表達(dá)不一致,建議使用一致的日期表達(dá)",
"sentStartPos": 105,
"correctedSent": "We do the essential {\"lower\":\"python\",\"capitalize\":\"Python\"} on {\"DthMonth\":\"22nd September\",\"TheDthofMonth\":\"the 22nd of September\",\"MonthDth\":\"September 22nd\"} 2019.",
"isContainGrammarError": false,
"isContainTypoError": false,
"isValidLangSent": true
},
{
"rawSent": "We do an important python on the 22nd of September 2019.",
"paraId": 0,
"sentId": 3,
"errorPosInfos": [
{
"id": 1668590140828,
"isValidLangChunk": true,
"orgChunk": "the 22nd of September",
"orgDateType": "The Dth of Month",
"errorTypeTitle": "日期表達(dá)不一致",
"startPos": 29,
"correctChunk": "{\"DthMonth\":\"22nd September\",\"TheDthofMonth\":\"the 22nd of September\",\"MonthDth\":\"September 22nd\"}",
"endPos": 50,
"cardSubtitle": "使用一致的日期表達(dá)",
"errBaseInfo": "上下文日期表達(dá)不一致,建議使用一致的日期表達(dá)",
"errToBBasicType": "",
"detailReason": "上下文日期表達(dá)不一致",
"knowledgeExp": "<b>日期</b>有幾種不同表達(dá)方式。January 20,January 20th,Jan. 20,以及20 January都是正確的。一篇文章通常<b>保持日期表達(dá)一致</b>。",
"exampleCases": [],
"parentId": "1668590140767",
"nodeType": 2,
"showType": 2,
"statInfo": [
{
"count": 1,
"demo": "5th Dec",
"item": "Dth Month"
},
{
"count": 1,
"demo": "The 5th of Dec",
"item": "The Dth of Month"
}
],
"structType": 4,
"vip": true
}
],
"sentFeedback": "詞匯頻繁使用,建議替換新單詞;大小寫(xiě)不統(tǒng)一,建議修改大小寫(xiě);日期表達(dá)不一致,建議使用一致的日期表達(dá)",
"sentStartPos": 156,
"correctedSent": "We do an important {\"lower\":\"python\",\"capitalize\":\"Python\"} on {\"DthMonth\":\"22nd September\",\"TheDthofMonth\":\"the 22nd of September\",\"MonthDth\":\"September 22nd\"} 2019.",
"isContainGrammarError": false,
"isContainTypoError": false,
"isValidLangSent": true
},
{
"rawSent": "We have 5 apples in the important things 5 on Sep 2019.",
"paraId": 0,
"sentId": 4,
"errorPosInfos": [
{
"id": 1668590140830,
"isValidLangChunk": true,
"orgChunk": "5",
"errorTypeTitle": "拼寫(xiě)不統(tǒng)一",
"startPos": 8,
"correctChunk": "five",
"endPos": 9,
"cardSubtitle": "拼寫(xiě)單詞",
"errBaseInfo": "阿拉伯?dāng)?shù)字應(yīng)該使用英文拼寫(xiě),建議將[orgChunk]修改為[correctChunk]",
"errToBBasicType": "",
"detailReason": "阿拉伯?dāng)?shù)字應(yīng)該使用英文拼寫(xiě)",
"knowledgeExp": "一般來(lái)說(shuō),<b>0到9的數(shù)字</b>都應(yīng)該<b>拼寫(xiě)</b>出來(lái)。如果想要表達(dá)日期、地址、金錢(qián)、分?jǐn)?shù)、百分比、分?jǐn)?shù)和小數(shù),可以直接使用數(shù)字。",
"exampleCases": [],
"nodeType": 1,
"showType": 2,
"structType": 2,
"vip": true
}
],
"sentFeedback": "拼寫(xiě)不統(tǒng)一,建議將〖5〗修改為【five】;詞匯頻繁使用,建議替換新單詞",
"sentStartPos": 213,
"correctedSent": "We have five apples in the important things 5 on Sep 2019.",
"isContainGrammarError": true,
"isContainTypoError": false,
"isValidLangSent": true
}
]
},
"wordNum": 0,
"fullScore": 100,
"stLevel": "TASK1",
"stLevelCode": 9,
"title": "yapi-test-1",
"writeModel": 1,
"writeType": 1,
"articleFormCode": 90102,
"essayReport": {}
}
}
寫(xiě)作報(bào)告essayReport:
{
"essayReport": {
"avgSentLen": 17.1,
"avgSentLenAdvice": "文章平均句長(zhǎng)為17.1,達(dá)到四級(jí)優(yōu)秀作文平均句長(zhǎng)。",
"avgWordLen": 4.8,
"avgWordLenAdvice": "平均詞長(zhǎng)代表了文章單詞的平均長(zhǎng)度。\n文章平均詞長(zhǎng)為4.8,達(dá)到四級(jí)優(yōu)秀作文平均詞長(zhǎng)。",
"charNum": 1013,
"conjAdvice": {
"fillers": [
6,
[
"并列",
"因果",
"順序"
]
],
"original": "文章行文連貫,銜接手段運(yùn)用自如,段落間邏輯緊密層次分明,實(shí)為佳作!\n文中共使用了%s種邏輯連接詞,使用較多的有表示%s關(guān)系的邏輯連接詞。合理運(yùn)用邏輯連接詞可增強(qiáng)文章的連貫性與邏輯性,建議適當(dāng)積累一些邏輯連接詞。",
"placeholder": "%s"
},
"conjTypeInfos": [
{
"count": 4,
"name": "并列",
"percent": 0.29
},
{
"count": 4,
"name": "因果",
"percent": 0.29
},
{
"count": 2,
"name": "順序",
"percent": 0.14
},
{
"count": 2,
"name": "讓步",
"percent": 0.14
},
{
"count": 1,
"name": "遞進(jìn)",
"percent": 0.07
},
{
"count": 1,
"name": "其他",
"percent": 0.07
}
],
"conjWordNum": 7,
"essayAdvice": "作文整體水平有待提高",
"fullScore": 100,
"grammarErrorAdvice": {
"advice": "建議復(fù)習(xí)相關(guān)語(yǔ)法知識(shí)。",
"errors": [
{
"count": 12,
"name": "詞匯拼寫(xiě)錯(cuò)誤",
"percent": 0.33
},
{
"count": 7,
"name": "詞匯使用錯(cuò)誤",
"percent": 0.2
},
{
"count": 4,
"name": "固定搭配介詞錯(cuò)誤",
"percent": 0.11
},
{
"count": 3,
"name": "名詞單復(fù)數(shù)錯(cuò)誤",
"percent": 0.09
},
{
"count": 2,
"name": "限定詞缺失",
"percent": 0.06
},
{
"count": 7,
"name": "其他",
"percent": 0.21
}
],
"evaluation": "整體語(yǔ)法錯(cuò)誤較多,高頻語(yǔ)法錯(cuò)誤有",
"highFreqErrors": [
"詞匯拼寫(xiě)錯(cuò)誤",
"詞匯使用錯(cuò)誤"
]
},
"grammarErrorNum": 23,
"grammarErrorSentRatio": 0.8,
"highFreqErrors": [
{
"count": 12,
"name": "詞匯拼寫(xiě)錯(cuò)誤"
},
{
"count": 7,
"name": "詞匯使用錯(cuò)誤"
}
],
"lexicalDistribution": {
"advice": "您的文章與<span>優(yōu)秀四級(jí)</span>作文平均詞匯分布相比:使用的詞匯水平有限,詞匯分布合理,滿(mǎn)足考試的需求,建議繼續(xù)通過(guò)寫(xiě)作練習(xí)詞匯和表達(dá)哦!",
"primaryWordNum": 0,
"primaryWordNumPercent": 0.000,
"juniorWordNum": 0,
"juniorWordNumPercent": 0.000,
"seniorWordNum": 0,
"seniorWordNumPercent": 0.000,
"cet4WordNum": 0,
"cet4WordNumPercent": 0.000,
"cet6WordNum": 0,
"cet6WordNumPercent": 0.000,
"toeflAndIeltsWordNum": 0,
"toeflAndIeltsWordNumPercent": 0.000
},
"majorScore": {
"grammarScore": 0.0,
"grammarAdvice": "",
"topicScore": 0.0,
"topicAdvice": "",
"wordScore": 0.0,
"wordAdvice": "",
"structureScore": 0.0,
"structureAdvice": "",
"emphasis": 0
},
"notTrueGrammarErrorNum": 15,
"paraNum": 1,
"rawLength": 1024,
"readGrade": 5,
"readability": 71,
"readabilityEvaluation": "文章適合具有專(zhuān)家英語(yǔ)水平的人群閱讀",
"scoreBorders": {
"stLevel": "4",
"name": "四級(jí)",
"maxAvgWordsLen": 0.0,
"minAvgWordsLen": 0.0,
"maxAvgSentsLen": 0.0,
"minAvgSentsLen": 0.0,
"maxStdSentsLen": 0.0,
"minStdSentsLen": 0.0,
"maxPrimary": 0.0,
"maxJunior": 0.0,
"maxSenior": 0.0,
"maxCET4": 0.0,
"maxCET6": 0.0,
"maxToeflAndIelts": 0.0
},
"sentComplexInfo": {
"complexSentNum": 6,
"complexSentPercent": 0.5,
"sentenceStructureAdvice": "簡(jiǎn)單句與復(fù)雜句均能綜合使用,句子結(jié)構(gòu)較為合理。",
"simpleSentNum": 6,
"simpleSentPercent": 0.5
},
"sentNum": 12,
"stdSentLen": 7.9,
"stdSentLenAdvice": "句長(zhǎng)豐富度會(huì)影響文章結(jié)構(gòu)分。\n文章句長(zhǎng)豐富度為7.9,達(dá)到四級(jí)優(yōu)秀作文句長(zhǎng)豐富度,文章讀起來(lái)比較生動(dòng)。",
"totalScore": 57,
"wordNum": 178
},
}
錯(cuò)誤代碼列表
錯(cuò)誤碼 |
含義 |
101 |
缺少必填的參數(shù),首先確保必填參數(shù)齊全,然后,確認(rèn)參數(shù)書(shū)寫(xiě)是否正確。 |
102 |
不支持的語(yǔ)言類(lèi)型 |
103 |
翻譯文本過(guò)長(zhǎng) |
104 |
不支持的API類(lèi)型 |
105 |
不支持的簽名類(lèi)型 |
106 |
不支持的響應(yīng)類(lèi)型 |
107 |
不支持的傳輸加密類(lèi)型 |
108 |
應(yīng)用ID無(wú)效,注冊(cè)賬號(hào),登錄后臺(tái)創(chuàng)建應(yīng)用,可獲得應(yīng)用ID和應(yīng)用密鑰等信息 |
109 |
batchLog格式不正確 |
110 |
無(wú)相關(guān)服務(wù)的有效應(yīng)用,。注:某些服務(wù)的結(jié)果發(fā)音需要tts服務(wù),需要在控制臺(tái)創(chuàng)建語(yǔ)音合成實(shí)例綁定應(yīng)用后方能使用。 |
111 |
開(kāi)發(fā)者賬號(hào)無(wú)效 |
112 |
請(qǐng)求服務(wù)無(wú)效 |
113 |
q不能為空 |
114 |
不支持的圖片傳輸方式 |
201 |
解密失敗,可能為DES,BASE64,URLDecode的錯(cuò)誤 |
202 |
簽名檢驗(yàn)失敗,如果確認(rèn)應(yīng)用ID和應(yīng)用密鑰的正確性,仍返回202,一般是編碼問(wèn)題。請(qǐng)確保翻譯文本 q 為UTF-8編碼. |
203 |
訪(fǎng)問(wèn)IP地址不在可訪(fǎng)問(wèn)IP列表 |
205 |
請(qǐng)求的接口與應(yīng)用的平臺(tái)類(lèi)型不一致,確保接入方式(Android SDK、IOS SDK、API)與創(chuàng)建的應(yīng)用平臺(tái)類(lèi)型一致。如有疑問(wèn)請(qǐng)參考入門(mén)指南 |
206 |
因?yàn)闀r(shí)間戳無(wú)效導(dǎo)致簽名校驗(yàn)失敗 |
207 |
重放請(qǐng)求 |
301 |
辭典查詢(xún)失敗 |
302 |
翻譯查詢(xún)失敗 |
303 |
服務(wù)端的其它異常 |
304 |
會(huì)話(huà)閑置太久超時(shí) |
401 |
賬戶(hù)已經(jīng)欠費(fèi)停 |
402 |
offlinesdk不可用 |
411 |
訪(fǎng)問(wèn)頻率受限,請(qǐng)稍后訪(fǎng)問(wèn) |
412 |
長(zhǎng)請(qǐng)求過(guò)于頻繁,請(qǐng)稍后訪(fǎng)問(wèn) |
29001 |
inputType 類(lèi)型不對(duì) |
29002 |
needTypo 類(lèi)型不對(duì) |
29003 |
Q 超過(guò)限制長(zhǎng)度 |
29004 |
grade 類(lèi)型不對(duì) |
29005 |
文件為空 |
29006 |
圖片過(guò)大 |
29007 |
作文批改的文本內(nèi)容為空 |
29009 |
ocr識(shí)別結(jié)果為空 |
29301 |
作文批改請(qǐng)求失敗 |
常用語(yǔ)言 Demo
Java 示例
英文圖像批改 Java demo
Python 示例
英文圖像批改 python3 demo
C# 示例
英文圖像批改 c# demo
PHP 示例
英文圖像批改 php demo
go 示例
英文圖像批改 go demo