Мне интересно, есть ли способ, которым конечная точка API позволяет использовать analyzeSyntax
API ответ JSON, чтобы не включать податрибуты partOfSpeech
словарей, если они *_UNKNOWN
? При просмотре сведений о вводе документа , я не могу найти способ ограничить ответ содержание документа partOfSpeech
.
Это то, что будет обрабатываться только при очистке данных после ответа?
Пример запроса для документов API здесь в файле с именем request.json
:
{
"encodingType": "UTF8",
"document": {
"type": "PLAIN_TEXT",
"content": "Google, headquartered in Mountain View, unveiled the new Android phone at the Consumer Electronic Show. Sundar Pichai said in his keynote that users love their new Android phones."
}
}
Команда выполнена:
curl "https://language.googleapis.com/v1/documents:analyzeSyntax?key=${API_KEY}" \
-s \
-X POST \
-H "Content-Type: application/json" \
--data-binary @request.json > response.json
Образец ответа:
{
"sentences": [
{
"text": {
"content": "Google, headquartered in Mountain View, unveiled the new Android phone at the Consumer Electronic Show.",
"beginOffset": 0
}
},
{
"text": {
"content": "Sundar Pichai said in his keynote that users love their new Android phones.",
"beginOffset": 105
}
}
],
"tokens": [
{
"text": {
"content": "Google",
"beginOffset": 0
},
"partOfSpeech": {
"tag": "NOUN",
"aspect": "ASPECT_UNKNOWN",
"case": "CASE_UNKNOWN",
"form": "FORM_UNKNOWN",
"gender": "GENDER_UNKNOWN",
"mood": "MOOD_UNKNOWN",
"number": "SINGULAR",
"person": "PERSON_UNKNOWN",
"proper": "PROPER",
"reciprocity": "RECIPROCITY_UNKNOWN",
"tense": "TENSE_UNKNOWN",
"voice": "VOICE_UNKNOWN"
},
"dependencyEdge": {
"headTokenIndex": 7,
"label": "NSUBJ"
},
"lemma": "Google"
},
{
"text": {
"content": ",",
"beginOffset": 6
},
"partOfSpeech": {
"tag": "PUNCT",
"aspect": "ASPECT_UNKNOWN",
"case": "CASE_UNKNOWN",
"form": "FORM_UNKNOWN",
"gender": "GENDER_UNKNOWN",
"mood": "MOOD_UNKNOWN",
"number": "NUMBER_UNKNOWN",
"person": "PERSON_UNKNOWN",
"proper": "PROPER_UNKNOWN",
"reciprocity": "RECIPROCITY_UNKNOWN",
"tense": "TENSE_UNKNOWN",
"voice": "VOICE_UNKNOWN"
},
"dependencyEdge": {
"headTokenIndex": 0,
"label": "P"
},
"lemma": ","
},
...
...
Этот ответ JSON состоит из 819 строк, из которых 314 строк (почти 40% ответа!) представляют собой *_UNKNOWN
значений для partOfSpeech
атрибутов. Итак, совершенно бесполезно, но значительно увеличивая объем данных в ответе.
Похоже, что в документации нет параметров, которые могли бы помочь в этом. Я что-то упустил, или этот API не поддерживает аргумент для удаления этих ключей, когда они *_UNKNOWN
? Это то, с чем можно справиться только после ответа с помощью очистки данных?