Семантическое ядро ​​Azure OpenAI возвращает ошибку: значение не может быть нулевым, а ложные срабатывания фильтруются иC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Гость
 Семантическое ядро ​​Azure OpenAI возвращает ошибку: значение не может быть нулевым, а ложные срабатывания фильтруются и

Сообщение Гость »


Я пытаюсь создать простое приложение, использующее пошаговый планировщик/семантическое ядро/Azure openAI для возврата данных на основе списка, хранящегося в коде. Время от времени я случайно получаю эту ошибку:

{ "Ценить": { "response_value": "", "SkillRequest": { "prompt": "Какую последнюю транзакцию я совершил?", "стиль": "строка", «ограничено»: ложь }, "план": "", "ошибка": { "message": "Во время выполнения шага плана произошла ошибка: значение не может быть нулевым. (Параметр 'input')", «код»: ноль, "inner_Exception": "System.ArgumentNullException: значение не может быть нулевым. (Параметр 'input')\r\n в System.Text.RegularExpressions.ThrowHelper.ThrowArgumentNullException(ExceptionArgument arg)\r\n в System.Text.RegularExpressions.Regex .Match(строковый ввод)\r\n в Microsoft.SemanticKernel.Planning.StepwisePlanner.ParseResult(строковый ввод)\r\n в Microsoft.SemanticKernel.Planning.StepwisePlanner.c__DisplayClass2_0.d.MoveNext ()\r\n--- Конец трассировки стека из предыдущего местоположения ---\r\n в Microsoft.SemanticKernel.Planning.StepwisePlanner.ExecutePlanAsync (строковый вопрос, контекст SKContext, токен CancellationToken)\r\n в Microsoft. SemanticKernel.SkillDefinition.NativeFunction.InvokeAsync(контекст SKContext, настройки CompleteRequestSettings, CancellationToken cancelToken)", «успех»: ложь } }, «Форматеры»: [], «Типы контента»: [], «Объявленный тип»: ноль, «Код статуса»: 200 } Кажется, что с аналогичной случайностью я также получаю ответ об ошибке, указывающий на то, что срабатывает фильтр openAI:

"ошибка": { "message": "Произошла ошибка при выполнении шага плана: ответ был отфильтрован из-за запроса, запускающего политику управления контентом Azure OpenAI. Измените запрос и повторите попытку. Чтобы узнать больше о наших политиках фильтрации контента, прочтите нашу документацию: https:/ /go.microsoft.com/fwlink/?linkid=2198766\r\nСостояние: 400 (model_error)\r\nErrorCode: content_filter\r\n\r\nContent:\r\n{\"ошибка\":{\ "message\":\"Ответ был отфильтрован из-за запроса, активирующего политику управления контентом Azure OpenAI. Пожалуйста, измените приглашение и повторите попытку. Чтобы узнать больше о наших политиках фильтрации контента, прочтите нашу документацию: https://go.microsoft.com/fwlink/?linkid ... ":\"prompt\ ", \"code\":\"content_filter\", \"status\":400, \"innererror\":{\"code\":\"ResponsibleAIPolicyViolation\", \"content_filter_result\":{\" ненависть \":{\"фильтруется\":false, \"серьезность\":\"безопасно\"},\"самоповреждение\":{\"фильтруется\":false, \"серьезность\":\"безопасно \"}, \"сексуальный\":{\"фильтруется\":true, \"тяжесть\":\"средняя\"}, \"насилие\":{\"фильтруется\":false,\"тяжесть \":\"safe\"}}}}}\r\n\r\nHeaders:\r\nX-Request-ID: УДАЛЕНО\r\nms-azureml-модель-ошибка-причина: УДАЛЕНО\r\nms -azureml-model-error-statuscode: REDACTED\r\nx-ms-client-request-id: 92f258a0-2907-4a3d-88d7-29792c176aab\r\napim-request-id: REDACTED\r\nazureml-model-session : УДАЛЕНО\r\nazureml-model-group: УДАЛЕНО\r\nOpenAI-Processing-Ms: УДАЛЕНО\r\nStrict-Transport-Security: УДАЛЕНО\r\nX-Content-Type-Options: УДАЛЕНО\r\nx-ms -регион: УДАЛЕНО\r\nДата: четверг, 21 сентября 2023 г., 19:51:57 GMT\r\nContent-Length: 622\r\nContent-Type: application/json\r\n", Соответствующий код:

общедоступный запечатанный класс TransactionPlannerService: ITransactionPlannerService { частная конфигурация IConfiguration только для чтения; частные настройки OpenAISettings; частный ILogger только для чтения _logger; public TransactionPlannerService (конфигурация IConfiguration, ILoggerFactory loggerFactory) { this.configuration = конфигурация; _logger = loggerFactory.CreateLogger(); this.settings = SettingsHelper.GetSettings(конфигурация, false); } общедоступная асинхронная задача MakeStepwisePlanAsync (запрос SkillRequest, строка навыка Prompt) { Ответ SkillResponse = новый SkillResponse () { ResponseValue = «» }; пытаться { ответ.SkillRequest = запрос; вар строитель = новый KernelBuilder(); builder.WithAzureChatCompletionService(this.settings.Model, this.settings.Endpoint, this.settings.Key); Ядро IKernel = builder.Build(); вар конфигурации = новый StepwisePlannerConfig (); config.MinIterationTimeMs = 1500; config.MaxTokens = 4000; вар планировщик = новый StepwisePlanner (ядро, конфигурация); kernel.ImportSkill(новый TransactionAmountSkill(), nameof(TransactionAmountSkill)); kernel.ImportSkill(новый TransactionDateSkill(), nameof(TransactionDateSkill)); kernel.ImportSkill(new TransactionsSkill(), nameof(TransactionsSkill)); Console.WriteLine($"значение приглашения: {request.Prompt}"); план вар = планировщик.CreatePlan(request.Prompt); var result = await plan.InvokeAsync(kernel.CreateNewContext()); вар sPlan = JsonSerializer.Serialize (план, новый JsonSerializerOptions {WriteIndented = false}); if (result.Variables.TryGetValue("stepCount", out string? StepCount)) { sPlan += "Количество шагов:" + StepCount + "\n\n"; } if (result.Variables.TryGetValue("skillCount", out string?killCount)) { sPlan += "Количество навыков:" + навыкCount + "\n\n"; } Console.WriteLine("План:\n"); Console.WriteLine(sPlan); _logger.LogInformation("План:\n"); _logger.LogInformation(sPlan); ответ.План = сПлан; ответ.ЗначениеОтвета = результат.Результат; } поймать (Исключение ex) { ответ.Ошибка.Успех = ложь; ответ.Ошибка.Сообщение = ex.Сообщение; response.Error.InnerException = ex.InnerException != null ? ex.InnerException.ToString(): ""; } обратный ответ; } } } Были ли у кого-нибудь подобные проблемы?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • MatchTemplate() пропускает обнаружения и дает ложные срабатывания, что я могу сделать?
    Anonymous » » в форуме Python
    0 Ответы
    26 Просмотры
    Последнее сообщение Anonymous
  • MatchTemplate() пропускает обнаружения и дает ложные срабатывания, что я могу сделать?
    Anonymous » » в форуме Python
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Как подавить ложные срабатывания в отчетах MobSF для сборок Android?
    Anonymous » » в форуме Android
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Как исправить проверку кода Pycharm, давая ложные срабатывания с QTPY?
    Anonymous » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Как исправить проверку кода Pycharm, давая ложные срабатывания с QTPY?
    Anonymous » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»