Freigeben über


Arbeiten mit Azure OpenAI-Inhaltsfilterung in einer .NET-App

In diesem Artikel wird gezeigt, wie Sie die Inhaltsfilterung in einer .NET-App behandeln. Der Azure OpenAI-Dienst enthält ein Inhaltsfiltersystem, das zusammen mit Kernmodellen funktioniert. Sie führt sowohl die Eingabeaufforderung als auch die Vervollständigung über ein Satz von Klassifikationsmodellen aus, um bestimmte Kategorien potenziell schädlicher Inhalte sowohl in Eingabeaufforderungen als auch in Ausgabevervollständigungen zu erkennen und Maßnahmen zu ergreifen. Variationen in API-Konfigurationen und Anwendungsentwurf können sich auf Vervollständigungen und somit auf das Filterverhalten auswirken.

Eine tiefergehende Untersuchung der Konzepte und Bedenken der Inhaltsfilterung finden Sie in der Dokumentation zur Inhaltsfilterung .

Voraussetzungen

Konfigurieren und Testen des Inhaltsfilters

Um den Beispielcode in diesem Artikel zu verwenden, müssen Sie ihrem OpenAI-Modell einen Inhaltsfilter erstellen und zuweisen.

  1. Erstellen und Zuweisen eines Inhaltsfilters zu Ihrem bereitgestellten Modell.

  2. Fügen Sie Ihrem Projekt das NuGet-Paket Azure.AI.OpenAI hinzu.

    dotnet add package Azure.AI.OpenAI
    

    Oder in .NET 10+:

    dotnet package add Azure.AI.OpenAI
    
  3. Erstellen Sie einen einfachen Chatabschlussfluss in Ihrer .NET-App mithilfe der AzureOpenAiClient. Ersetzen Sie die Werte von YOUR_MODEL_ENDPOINT und YOUR_MODEL_DEPLOYMENT_NAME durch Ihre eigenen.

    using Azure.AI.OpenAI;
    using Azure.Identity;
    using Microsoft.Extensions.AI;
    
    IChatClient client =
        new AzureOpenAIClient(
            new Uri("YOUR_MODEL_ENDPOINT"),
            new DefaultAzureCredential()).GetChatClient("YOUR_MODEL_DEPLOYMENT_NAME").AsIChatClient();
    
    try
    {
        ChatResponse completion = await client.GetResponseAsync("YOUR_PROMPT");
    
        Console.WriteLine(completion.Messages.Single());
    }
    catch (Exception e)
    {
        Console.WriteLine(e.Message);
    }
    
  4. Ersetzen Sie den YOUR_PROMPT Platzhalter durch Ihre eigene Nachricht, und führen Sie die App aus, um mit Inhaltsfilterergebnissen zu experimentieren. Wenn Sie eine Eingabeaufforderung eingeben, die die KI als unsicher betrachtet, gibt Azure OpenAI einen 400 Bad Request Code zurück. Die App druckt eine Meldung in der Konsole ähnlich der folgenden:

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