медленный отклик на определение намерений при использовании библиотеки curl - PullRequest
0 голосов
/ 25 октября 2019

Я реализовал свой клиентский код с использованием libcurl для базового сценария диалога. Работает как положено, но с некоторой задержкой. Я хочу знать, есть ли у какого-либо тела какой-либо опыт в отношении производительности, описанной ниже, и можете ли вы помочь?

Я показываю здесь вывод команды curl, который имеет starttransfer_time (2,4 с) и общее время (3,5)которые предназначены для получения первого байта от удаленного устройства и общего времени завершения соответственно. (Я вижу похожую синхронизацию с кодом, использующим libcurl)

здесь я отправляю закодированное в base64 аудио, захваченное в файл json, как упомянуто в документах диалогового потока.

мой вопрос, почему диалог диалога GoogleAPI занимает почти секунду, чтобы просто отправить ответ со следующим текстом и как сделать его лучше со временем. Есть ли какие-либо параметры, которые мы можем установить в curl (я пытался установить CURLOPT_BUFFERSIZE в 240k, что более чем достаточно, я думаю) или в агенте диалогового потока, чтобы быстро получить ответ?

bash-4.2$ curl -X POST -H "Content-Type: application/json; charset=utf-8"  -H "Authorization: Bearer xxx"  -d @req.json "https://dialogflow.googleapis.com/v2beta1/projects/project1/agent/sessions/e9a70529-bee2-bac4-6b08-4b22e221fc59:detectIntent" -w "\n%{time_connect}:%{time_starttransfer}:%{time_total}\n"
{
  "responseId": "9ead1d09-3276-4238-a42b-b9f12e6faa34-d5ae01f3",
  "queryResult": {
    "queryText": "hello",
    "speechRecognitionConfidence": 0.7617957,
    "action": "input.unknown",
    "parameters": {},
    "allRequiredParamsPresent": true,
    "fulfillmentText": "Can you say that again?",
    "fulfillmentMessages": [
      {
        "text": {
          "text": [
            "Can you say that again?"
          ]
        }
      }
    ],
    "intent": {
      "name": "projects/project1/agent/intents/d30bb8cc-0dd4-4d60-9511-d3ce387f2c22",
      "displayName": "Default Fallback Intent",
      "isFallback": true
    },
    "intentDetectionConfidence": 1,
    "languageCode": "en"
  }
}
0.101:2.488:3.351
...