public async Task EvaluatePrompt()

in src/AIHub/Controllers/ContentSafetyController.cs [57:102]


    public async Task<IActionResult> EvaluatePrompt()
    {
        if (string.IsNullOrEmpty(HttpContext.Request.Form["text"]))
        {
            ViewBag.Message = "You must enter a prompt to evaluate";
            return View("JailbreakDetection", model);
        }
        model.Prompt = HttpContext.Request.Form["text"];
        model.Approve = true;

        try
        {
            var request = new HttpRequestMessage(HttpMethod.Post, endpoint + jailbreakEndpoint);
            request.Headers.Add("Ocp-Apim-Subscription-Key", subscriptionKey);

            var content = new
            {
                text = model.Prompt
            };
            var json = System.Text.Json.JsonSerializer.Serialize(content);
            // Crear un HttpContent con el JSON y el tipo de contenido
            HttpContent content_body = new StringContent(json, Encoding.UTF8, "application/json");

            request.Content = content_body;
            var response = await httpClient.SendAsync(request);
            //response.EnsureSuccessStatusCode();
            String response_final = await response.Content.ReadAsStringAsync();
            if (response_final.Contains("true"))
            {
                ViewBag.Message = "JAILBREAKING ATTEMPT ** DETECTED **";
            }
            else
            {
                ViewBag.Message = "JAILBREAKING ATTEMPT ** NOT DETECTED **";

            }
        }
        catch (RequestFailedException ex)
        {
            _logger.LogError(ex, "An error occurred while evaluating the content." + ex.Message);
            ViewBag.Message = "An error occurred while evaluating the content. Please try again later.";
            return View("JailbreakDetection", model);
        }

        return View("JailbreakDetection", model);
    }