Ler em inglês

Partilhar via


Trabalhar com a filtragem de conteúdo do Azure OpenAI em um aplicativo .NET

Este artigo demonstra como lidar com preocupações de filtragem de conteúdo em um aplicativo .NET. O Serviço OpenAI do Azure inclui um sistema de filtragem de conteúdo que funciona em conjunto com os modelos principais. Este sistema funciona ao processar tanto o prompt como o preenchimento através de um conjunto de modelos de classificação que têm como objetivo detetar e prevenir a produção de conteúdo nocivo. O sistema de filtragem de conteúdo deteta e age em categorias específicas de conteúdo potencialmente nocivo em prompts de entrada e finalizações de saída. Variações nas configurações de API e no design do aplicativo podem afetar as finalizações e, portanto, o comportamento de filtragem.

A documentação do Content Filtering fornece uma exploração mais profunda dos conceitos e preocupações de filtragem de conteúdo. Este artigo fornece exemplos de como trabalhar com recursos de filtragem de conteúdo programaticamente em um aplicativo .NET.

Pré-requisitos

Configurar e testar o filtro de conteúdo

Para usar o código de exemplo neste artigo, você precisa criar e atribuir um filtro de conteúdo ao seu modelo OpenAI.

  1. Crie e atribua um filtro de conteúdo ao seu modelo provisionado.

  2. Adicione o pacote NuGet Azure.AI.OpenAI no seu projeto.

    .NET CLI
    dotnet add package Azure.AI.OpenAI
    
  3. Crie um fluxo de conclusão de chat simples em seu aplicativo .NET usando o AzureOpenAiClient. Substitua os valores YOUR_MODEL_ENDPOINT e YOUR_MODEL_DEPLOYMENT_NAME pelos seus.

    C#
    using Azure.AI.OpenAI;
    using Azure.Identity;
    using Microsoft.Extensions.AI;
    
    IChatClient client =
        new AzureOpenAIClient(
            new Uri("YOUR_MODEL_ENDPOINT"),
            new DefaultAzureCredential()).AsChatClient("YOUR_MODEL_DEPLOYMENT_NAME");
    
    try
    {
        ChatResponse completion = await client.GetResponseAsync("YOUR_PROMPT");
    
        Console.WriteLine(completion.Message);
    }
    catch (Exception e)
    {
        Console.WriteLine(e.Message);
    }
    
  4. Substitua o espaço reservado YOUR_PROMPT por sua própria mensagem e execute o aplicativo para experimentar os resultados da filtragem de conteúdo. Se você inserir um prompt que a IA considera inseguro, o Azure OpenAI retornará um código de 400 Bad Request. O aplicativo imprime uma mensagem no console semelhante à seguinte:

Output
The response was filtered due to the prompt triggering Azure OpenAI's content management policy...