Я хочу подключить своего бот-чата Azure QnA к когнитивной системе уровня перевода. Я использую эту страницу в качестве ссылки: https://docs.microsoft.com/en-us/azure/cognitive-services/translator/quickstart-csharp-translate
Я делаю это в C # и в онлайн-редакторе кода Microsoft Azure .
К сожалению, я не могу подключиться к слою перевода (по крайней мере, так).
Когда я попытался отладить его, я вижу, что он останавливается на этой конкретной части:
var response = await client.SendAsync(request);
var responseBody = await response.Content.ReadAsStringAsync();
Я проверил ошибки тайм-аута сети, и их много (20). Все они говорят: «При отправке этого сообщения вашему боту произошла ошибка: код состояния HTTP GatewayTimeout».
Я могу "build.cmd" нормально, без каких-либо ошибок, и когда я пытаюсь сделать Debug.WriteLine или Console.WriteLine, ничего не распечатывается (я даже пробовал в VS и эмуляторе)
Единственное, что я делаю по-другому, по сравнению с приведенной выше ссылкой, это то, что я определил "хост" и "ключ" вне приватного метода:
private static async Task<string> TranslateQuestionToEnglish (...)
Итак, я беру любое слово и хочу перевести его на английский.
Когда я вынимаю эти две строки кода и тестирую метод со статическими значениями, он, очевидно, работает (все вместе с QnA и всем остальным).
Позже я вызываю этот метод в «Task MessageReceivedAsync».
Я создал когнитивную службу перевода, и единственное, что я там взял, это первый ключ от «Ключей» и использовал его здесь, в этом методе. Это единственное, что мне нужно от созданного познавательного служения ??
Еще одна вещь, в которой я не уверен, и если эта проблема создает проблемы, это то, что когда я обращаюсь ко всем ресурсам, я вижу, что мои qnatestbot (бот веб-приложения) и translationator_test (когнитивные сервисы) имеют тип " global "location", в то время как мой qnatestbot (служба приложений) относится к типу "west europe". Может ли то, что они в разных регионах создают проблемы? Должен ли я поместить их всех в Западной Европе (так как я в Германии)?
Хотя теперь, когда я смотрю на конечную точку translationator_test (когнитивные сервисы), я вижу, что это ... api.congitivemicrosft.com/.../v1.0.
Но когда я создавал ресурс, он автоматически создавался таким образом, без указания его с моей стороны? Как я могу это изменить?
Я надеюсь, что кто-то успешно сталкивался с такой проблемой и может мне помочь. Заранее спасибо