Partilhar via


Guia de início rápido: analisar conteúdo de texto

Comece a aplicar a moderação de texto básica com o Content Safety Studio, a API REST ou as bibliotecas de cliente. O serviço Azure AI Content Safety fornece algoritmos de IA para sinalizar conteúdo censurável. Para experimentar, siga estes passos.

Para obter mais informações sobre moderação de texto, consulte a página de conceito das categorias prejudiciais. Para limites de entrada da API, consulte a seção Requisitos de entrada da Visão geral.

Atenção

Os dados e o código de exemplo podem conter conteúdo ofensivo. Aconselha-se a discrição do utilizador.

Pré-requisitos

Configuração

Siga estas etapas para usar a página de Segurança de Conteúdo experimente:

  1. Vá para Azure AI Foundry e navegue até seu projeto/hub. Em seguida, selecione a guia Guardrails + controls no painel de navegação esquerdo e selecione a guia Experimente .
  2. Na página Experimente , você pode experimentar vários recursos de controles e guarda-corpos, como conteúdo de texto e imagem, usando limites ajustáveis para filtrar conteúdo impróprio ou prejudicial.

Captura de ecrã da página de experimentação de Guardrails & controlos.

Analisar texto

  1. Selecione o painel Moderado conteúdo de texto.
  2. Adicione texto ao campo de entrada ou selecione texto de exemplo nos painéis da página.
  3. Selecione Executar teste. O serviço retorna todas as categorias que foram detetadas, com o nível de gravidade para cada uma: 0-Seguro, 2-Baixo, 4-Médio, 6-Alto. Ele também retorna um resultado binário Aceito/Rejeitado , com base nos filtros que você configurar. Use a matriz na guia Configurar filtros para definir seus níveis de severidade permitidos/proibidos para cada categoria. Em seguida, você pode executar o texto novamente para ver como o filtro funciona.

Ver e exportar código

Você pode usar a funcionalidade Ver Código nas páginas Analisar conteúdo de texto ou Analisar conteúdo de imagem para visualizar e copiar o código de exemplo, que inclui configuração para filtragem por nível de gravidade, listas de bloqueio e funções de moderação. Em seguida, pode implantar o código no seu ambiente.

Captura de ecrã do botão Ver código.

Pré-requisitos

  • Uma assinatura do Azure - Crie uma gratuitamente
  • Depois de ter a sua assinatura do Azure, crie um recurso de Segurança de Conteúdo no portal do Azure para obter a sua chave e ponto de extremidade. Introduza um nome exclusivo para o seu recurso, selecione a sua subscrição e selecione um grupo de recursos, uma região suportada (consulte Disponibilidade da região) e um escalão de preços suportado. Depois, selecione Criar.
    • O recurso leva alguns minutos para ser implantado. Depois que terminar, selecione ir para recurso. No painel esquerdo, em Gestão de Recursos, selecione Chave de Assinatura e Ponto de Extremidade. O ponto de extremidade e uma das duas chaves são usados para chamar APIs.
  • cURL instalado

Analisar conteúdo de texto

A seção a seguir percorre uma solicitação de exemplo com cURL. Cole o comando abaixo em um editor de texto e faça as seguintes alterações.

  1. Substitua <endpoint> pela URL de ponto de extremidade associada ao seu recurso.
  2. Substitua <your_subscription_key> por uma das chaves que acompanham o recurso.
  3. Opcionalmente, substitua o "text" campo no corpo pelo seu próprio texto que você gostaria de analisar.

    Gorjeta

    Tamanho e granularidade do texto

    Consulte Requisitos de entrada para limitações de comprimento máximo de texto.

curl --location --request POST '<endpoint>/contentsafety/text:analyze?api-version=2024-09-01' \
--header 'Ocp-Apim-Subscription-Key: <your_subscription_key>' \
--header 'Content-Type: application/json' \
--data-raw '{
  "text": "I hate you",
  "categories": ["Hate", "Sexual", "SelfHarm", "Violence"],
  "blocklistNames": ["string"],
  "haltOnBlocklistHit": true,
  "outputType": "FourSeverityLevels"
}'

Os campos abaixo devem ser incluídos no url:

Nome Obrigatório Descrição Tipo
Versão da API Obrigatório Esta é a versão da API a ser verificada. A versão atual é: api-version=2024-09-01. Exemplo: <endpoint>/contentsafety/text:analyze?api-version=2024-09-01 cadeia de caracteres

Os parâmetros no corpo da solicitação são definidos nesta tabela:

Nome Obrigatório Descrição Tipo
texto Obrigatório Este é o texto bruto a ser verificado. Outros caracteres não-ascii podem ser incluídos. cadeia de caracteres
Categorias Opcional Supõe-se que esta seja uma matriz de nomes de categoria. Consulte o Guia de categorias de danos para obter uma lista de nomes de categorias disponíveis. Se nenhuma categoria for especificada, todas as quatro categorias serão usadas. Usamos várias categorias para obter pontuações em uma única solicitação. cadeia de caracteres
listaDeBloqueiosNomes Opcional Nome da lista de bloqueio de texto. Suporta apenas os seguintes caracteres: 0-9 A-Z a-z - . _ ~. Você pode anexar vários nomes de lista aqui. Matriz
haltOnBlocklistHit Opcional Quando definido como true, análises adicionais de conteúdo prejudicial não serão realizadas nos casos em que as listas de bloqueio forem atingidas. Quando definido como false, todas as análises de conteúdo nocivo serão realizadas, independentemente de as listas de bloqueio serem ou não atingidas. booleano
tipoDeSaída Opcional "FourSeverityLevels" ou "EightSeverityLevels". Níveis de severidade de saída em quatro ou oito níveis, o valor pode ser 0,2,4,6 ou 0,1,2,3,4,5,6,7. cadeia de caracteres

Veja o seguinte corpo de solicitação de exemplo:

{
  "text": "I hate you",
  "categories": ["Hate", "Sexual", "SelfHarm", "Violence"],
  "blocklistNames": ["array"],
  "haltOnBlocklistHit": false,
  "outputType": "FourSeverityLevels"
}

Abra uma janela de prompt de comando, cole o comando cURL editado e execute-o.

Saída

Você deve ver os resultados da moderação de texto exibidos como dados JSON na saída do console. Por exemplo:

{
  "blocklistsMatch": [
    {
      "blocklistName": "string",
      "blocklistItemId": "string",
      "blocklistItemText": "string"
    }
  ],
  "categoriesAnalysis": [
    {
      "category": "Hate",
      "severity": 2
    },
    {
      "category": "SelfHarm",
      "severity": 0
    },
    {
      "category": "Sexual",
      "severity": 0
    },
    {
      "category": "Violence",
      "severity": 0
    }
  ]
}

Os campos JSON na saída são definidos aqui:

Nome Descrição Tipo
análise de categorias Cada classe de saída que a API prevê. A classificação pode ser multi-etiquetada. Por exemplo, quando uma amostra de texto é executada através do modelo de moderação de texto, ela pode ser classificada como conteúdo sexual e violência. Categorias de danos cadeia de caracteres
Gravidade Quanto maior a severidade do conteúdo de entrada, maior é esse valor. Número inteiro

Documentação de Referência | Código-fonte da Biblioteca | Pacote (NuGet) | Amostras

Pré-requisitos

  • Uma assinatura do Azure - Crie uma gratuitamente
  • A IDE do Visual Studio com a carga de trabalho para desenvolvimento na área de trabalho .NET habilitada. Ou, se você não planeja usar o IDE do Visual Studio, precisará da versão atual do .NET Core.
  • Depois de ter a sua assinatura do Azure, crie um recurso de Segurança de Conteúdo no portal do Azure para obter a sua chave e ponto de extremidade. Introduza um nome exclusivo para o seu recurso, selecione a sua subscrição e selecione um grupo de recursos, uma região suportada (consulte Disponibilidade da região) e um escalão de preços suportado. Depois, selecione Criar.
    • O recurso leva alguns minutos para ser implantado. Depois que terminar, selecione ir para recurso. No painel esquerdo, em Gestão de Recursos, selecione Chave de Assinatura e Ponto de Extremidade. O ponto de extremidade e uma das duas chaves são usados para chamar APIs.

Configurar a aplicação

Crie um novo aplicativo C#.

Abra o Visual Studio e, em Introdução, selecione Criar um novo projeto. Ajuste os filtros do modelo para C#/Todas as plataformas/Consola. Selecione Console App (aplicativo de linha de comando que pode ser executado no .NET no Windows, Linux e macOS) e escolha Next. Atualize o nome do projeto para ContentSafetyQuickstart e escolha Next. Selecione .NET 6.0 ou superior e escolha Criar para criar o projeto.

Instalar o SDK do cliente

Depois de criar um novo projeto, instale o SDK do cliente clicando com o botão direito do mouse na solução do projeto no Gerenciador de Soluções e selecionando Gerenciar Pacotes NuGet. No gerenciador de pacotes que é aberto, selecione Procurar e procure Azure.AI.ContentSafety. Selecione Instalar.

Criar variáveis de ambiente

Neste exemplo, você gravará suas credenciais em variáveis de ambiente na máquina local que executa o aplicativo.

Para definir a variável de ambiente para sua chave e ponto de extremidade, abra uma janela do console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.

  • Para definir a CONTENT_SAFETY_KEY variável de ambiente, substitua YOUR_CONTENT_SAFETY_KEY por uma das chaves do seu recurso.
  • Para definir a variável de CONTENT_SAFETY_ENDPOINT ambiente, substitua YOUR_CONTENT_SAFETY_ENDPOINT pelo ponto de extremidade do seu recurso.

Importante

Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se você usar uma chave de API, armazene-a com segurança no Cofre de Chaves do Azure. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.

Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.

setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas em execução que lerão as variáveis de ambiente, incluindo a janela do console.

Analisar conteúdo de texto

No diretório do projeto, abra o arquivo de Program.cs que foi criado anteriormente. Cole no seguinte código:

using System;
using Azure.AI.ContentSafety;

namespace Azure.AI.ContentSafety.Dotnet.Sample
{
  class ContentSafetySampleAnalyzeText
  {
    public static void AnalyzeText()
    {
      // retrieve the endpoint and key from the environment variables created earlier
      string endpoint = Environment.GetEnvironmentVariable("CONTENT_SAFETY_ENDPOINT");
      string key = Environment.GetEnvironmentVariable("CONTENT_SAFETY_KEY");

      ContentSafetyClient client = new ContentSafetyClient(new Uri(endpoint), new AzureKeyCredential(key));

      string text = "Your input text";

      var request = new AnalyzeTextOptions(text);

      Response<AnalyzeTextResult> response;
      try
      {
          response = client.AnalyzeText(request);
      }
      catch (RequestFailedException ex)
      {
          Console.WriteLine("Analyze text failed.\nStatus code: {0}, Error code: {1}, Error message: {2}", ex.Status, ex.ErrorCode, ex.Message);
          throw;
      }

      Console.WriteLine("\nAnalyze text succeeded:");
      Console.WriteLine("Hate severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.Hate)?.Severity ?? 0);
      Console.WriteLine("SelfHarm severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.SelfHarm)?.Severity ?? 0);
      Console.WriteLine("Sexual severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.Sexual)?.Severity ?? 0);
      Console.WriteLine("Violence severity: {0}", response.Value.CategoriesAnalysis.FirstOrDefault(a => a.Category == TextCategory.Violence)?.Severity ?? 0);

    }
    static void Main()
    {
        AnalyzeText();
    }
  }
}

Substitua "Your input text" pelo conteúdo de texto que você gostaria de usar.

Gorjeta

Tamanho e granularidade do texto

Consulte Requisitos de entrada para limitações de comprimento máximo de texto.

Crie e execute o aplicativo selecionando Iniciar depuração no menu Depurar na parte superior da janela do IDE (ou pressione F5).

Documentação de referência | Código-fonte da biblioteca | Pacote (PyPI) | Amostras |

Pré-requisitos

  • Uma assinatura do Azure - Crie uma gratuitamente
  • Depois de ter a sua assinatura do Azure, crie um recurso de Segurança de Conteúdo no portal do Azure para obter a sua chave e ponto de extremidade. Introduza um nome exclusivo para o seu recurso, selecione a sua subscrição e selecione um grupo de recursos, uma região suportada (consulte Disponibilidade da região) e um escalão de preços suportado. Depois, selecione Criar.
    • O recurso leva alguns minutos para ser implantado. Depois que terminar, selecione ir para recurso. No painel esquerdo, em Gestão de Recursos, selecione Chave de Assinatura e Ponto de Extremidade. O ponto de extremidade e uma das duas chaves são usados para chamar APIs.
  • Python 3.x
    • Sua instalação do Python deve incluir pip. Você pode verificar se você tem pip instalado executando pip --version na linha de comando. Obtenha o pip ao instalar a versão mais recente do Python.

Criar variáveis de ambiente

Neste exemplo, você gravará suas credenciais em variáveis de ambiente na máquina local que executa o aplicativo.

Para definir a variável de ambiente para sua chave e ponto de extremidade, abra uma janela do console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.

  • Para definir a CONTENT_SAFETY_KEY variável de ambiente, substitua YOUR_CONTENT_SAFETY_KEY por uma das chaves do seu recurso.
  • Para definir a variável de CONTENT_SAFETY_ENDPOINT ambiente, substitua YOUR_CONTENT_SAFETY_ENDPOINT pelo ponto de extremidade do seu recurso.

Importante

Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se você usar uma chave de API, armazene-a com segurança no Cofre de Chaves do Azure. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.

Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.

setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas em execução que lerão as variáveis de ambiente, incluindo a janela do console.

Analisar conteúdo de texto

A seção a seguir percorre uma solicitação de exemplo com o SDK do Python.

  1. Abra um prompt de comando, navegue até a pasta do projeto e crie um novo arquivo chamado quickstart.py.

  2. Execute este comando para instalar a biblioteca de Segurança de Conteúdo do Azure AI:

    pip install azure-ai-contentsafety
    
  3. Copie o seguinte código para quickstart.py:

    import os
    from azure.ai.contentsafety import ContentSafetyClient
    from azure.core.credentials import AzureKeyCredential
    from azure.core.exceptions import HttpResponseError
    from azure.ai.contentsafety.models import AnalyzeTextOptions, TextCategory
    
    def analyze_text():
        # analyze text
        key = os.environ["CONTENT_SAFETY_KEY"]
        endpoint = os.environ["CONTENT_SAFETY_ENDPOINT"]
    
        # Create an Azure AI Content Safety client
        client = ContentSafetyClient(endpoint, AzureKeyCredential(key))
    
        # Contruct request
        request = AnalyzeTextOptions(text="Your input text")
    
        # Analyze text
        try:
            response = client.analyze_text(request)
        except HttpResponseError as e:
            print("Analyze text failed.")
            if e.error:
                print(f"Error code: {e.error.code}")
                print(f"Error message: {e.error.message}")
                raise
            print(e)
            raise
    
        hate_result = next(item for item in response.categories_analysis if item.category == TextCategory.HATE)
        self_harm_result = next(item for item in response.categories_analysis if item.category == TextCategory.SELF_HARM)
        sexual_result = next(item for item in response.categories_analysis if item.category == TextCategory.SEXUAL)
        violence_result = next(item for item in response.categories_analysis if item.category == TextCategory.VIOLENCE)
    
        if hate_result:
            print(f"Hate severity: {hate_result.severity}")
        if self_harm_result:
            print(f"SelfHarm severity: {self_harm_result.severity}")
        if sexual_result:
            print(f"Sexual severity: {sexual_result.severity}")
        if violence_result:
            print(f"Violence severity: {violence_result.severity}")
    
    if __name__ == "__main__":
        analyze_text()
    
  4. Substitua "Your input text" pelo conteúdo de texto que você gostaria de usar.

    Gorjeta

    Tamanho e granularidade do texto

    Consulte Requisitos de entrada para limitações de comprimento máximo de texto.

  5. Em seguida, execute o aplicativo com o python comando em seu arquivo de início rápido.

    python quickstart.py
    

Documentação de referência | Código fonte da biblioteca | Artefacto (Maven) | Exemplos

Pré-requisitos

  • Uma assinatura do Azure - Crie uma gratuitamente
  • A versão atual do Java Development Kit (JDK)
  • A ferramenta de compilação Gradle ou outro gerenciador de dependência.
  • Depois de ter a sua assinatura do Azure, crie um recurso de Segurança de Conteúdo no portal do Azure para obter a sua chave e ponto de extremidade. Introduza um nome exclusivo para o seu recurso, selecione a sua subscrição e selecione um grupo de recursos, uma região suportada (consulte Disponibilidade da região) e um escalão de preços suportado. Depois, selecione Criar.
    • O recurso leva alguns minutos para ser implantado. Depois que terminar, selecione ir para recurso. No painel esquerdo, em Gestão de Recursos, selecione Chave de Assinatura e Ponto de Extremidade. O ponto de extremidade e uma das duas chaves são usados para chamar APIs.

Configurar a aplicação

Crie um novo projeto Gradle.

Numa janela de consola (como cmd, PowerShell ou Bash), crie um novo diretório para a sua aplicação e navegue para a mesma.

mkdir myapp && cd myapp

Execute o comando gradle init do seu diretório de trabalho. Este comando criará arquivos de compilação essenciais para o Gradle, incluindo build.gradle.kts, que é usado em tempo de execução para criar e configurar seu aplicativo.

gradle init --type basic

Quando solicitado a escolher uma DSL, selecione Kotlin.

No diretório de trabalho, execute o seguinte comando para criar uma pasta de origem do projeto:

mkdir -p src/main/java

Navegue até a nova pasta e crie um arquivo chamado ContentSafetyQuickstart.java.

Instalar o SDK do cliente

Este guia de início rápido usa o gerenciador de dependência do Gradle. Você pode encontrar a biblioteca do cliente e informações para outros gerenciadores de dependência no Maven Central Repository.

Localize build.gradle.kts e abra-o com o seu IDE ou editor de texto preferido. Em seguida, copie a seguinte configuração de compilação. Esta configuração define o projeto como uma aplicação Java cujo ponto de entrada é a classe ContentSafetyQuickstart. Ele importa a biblioteca do Azure AI Vision.

plugins {
    java
    application
}
application { 
    mainClass.set("ContentSafetyQuickstart")
}
repositories {
    mavenCentral()
}
dependencies {
    implementation(group = "com.azure", name = "azure-ai-contentsafety", version = "1.0.0")
}

Criar variáveis de ambiente

Neste exemplo, você gravará suas credenciais em variáveis de ambiente na máquina local que executa o aplicativo.

Para definir a variável de ambiente para sua chave e ponto de extremidade, abra uma janela do console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.

  • Para definir a CONTENT_SAFETY_KEY variável de ambiente, substitua YOUR_CONTENT_SAFETY_KEY por uma das chaves do seu recurso.
  • Para definir a variável de CONTENT_SAFETY_ENDPOINT ambiente, substitua YOUR_CONTENT_SAFETY_ENDPOINT pelo ponto de extremidade do seu recurso.

Importante

Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se você usar uma chave de API, armazene-a com segurança no Cofre de Chaves do Azure. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.

Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.

setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas em execução que lerão as variáveis de ambiente, incluindo a janela do console.

Analisar conteúdo de texto

Abra ContentSafetyQuickstart.java em seu editor ou IDE preferido e cole no código a seguir. Substitua <your text sample> pelo conteúdo de texto que você gostaria de usar.

Gorjeta

Tamanho e granularidade do texto

Consulte Requisitos de entrada para limitações de comprimento máximo de texto.

import com.azure.ai.contentsafety.ContentSafetyClient;
import com.azure.ai.contentsafety.ContentSafetyClientBuilder;
import com.azure.ai.contentsafety.models.AnalyzeTextOptions;
import com.azure.ai.contentsafety.models.AnalyzeTextResult;
import com.azure.ai.contentsafety.models.TextCategoriesAnalysis;
import com.azure.core.credential.KeyCredential;
import com.azure.core.util.Configuration;


public class ContentSafetyQuickstart {
    public static void main(String[] args) {

        // get endpoint and key from environment variables
        String endpoint = System.getenv("CONTENT_SAFETY_ENDPOINT");
        String key = System.getenv("CONTENT_SAFETY_KEY");
        
        ContentSafetyClient contentSafetyClient = new ContentSafetyClientBuilder()
            .credential(new KeyCredential(key))
            .endpoint(endpoint).buildClient();

        AnalyzeTextResult response = contentSafetyClient.analyzeText(new AnalyzeTextOptions("<your text sample>"));

        for (TextCategoriesAnalysis result : response.getCategoriesAnalysis()) {
            System.out.println(result.getCategory() + " severity: " + result.getSeverity());
        }
    }
}

Navegue de volta para a pasta raiz do projeto e crie o aplicativo com:

gradle build

Em seguida, execute-o com o gradle run comando:

gradle run

Saída

Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0

Documentação de referência | Código-fonte da biblioteca | Pacote (npm) | Exemplos |

Pré-requisitos

  • Uma assinatura do Azure - Crie uma gratuitamente
  • A versão atual do Node.js
  • Depois de ter a sua assinatura do Azure, crie um recurso de Segurança de Conteúdo no portal do Azure para obter a sua chave e ponto de extremidade. Introduza um nome exclusivo para o seu recurso, selecione a sua subscrição e selecione um grupo de recursos, uma região suportada (consulte Disponibilidade da região) e um escalão de preços suportado. Depois, selecione Criar.
    • O recurso leva alguns minutos para ser implantado. Depois que terminar, selecione ir para recurso. No painel esquerdo, em Gestão de Recursos, selecione Chave de Assinatura e Ponto de Extremidade. O ponto de extremidade e uma das duas chaves são usados para chamar APIs.

Configurar a aplicação

Crie um novo aplicativo Node.js. Numa janela de consola (como cmd, PowerShell ou Bash), crie um novo diretório para a sua aplicação e navegue para a mesma.

mkdir myapp && cd myapp

Execute o comando npm init para criar uma aplicação Node.js com um ficheiro package.json.

npm init

Instalar o SDK do cliente

Instale o @azure-rest/ai-content-safety pacote npm:

npm install @azure-rest/ai-content-safety

Instale também o dotenv para usar variáveis de ambiente.

npm install dotenv

O ficheiro package.json da sua aplicação será atualizado com as dependências.

Criar variáveis de ambiente

Neste exemplo, você gravará suas credenciais em variáveis de ambiente na máquina local que executa o aplicativo.

Para definir a variável de ambiente para sua chave e ponto de extremidade, abra uma janela do console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.

  • Para definir a CONTENT_SAFETY_KEY variável de ambiente, substitua YOUR_CONTENT_SAFETY_KEY por uma das chaves do seu recurso.
  • Para definir a variável de CONTENT_SAFETY_ENDPOINT ambiente, substitua YOUR_CONTENT_SAFETY_ENDPOINT pelo ponto de extremidade do seu recurso.

Importante

Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se você usar uma chave de API, armazene-a com segurança no Cofre de Chaves do Azure. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.

Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.

setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas em execução que lerão as variáveis de ambiente, incluindo a janela do console.

Analisar conteúdo de texto

Crie um novo arquivo em seu diretório, index.js. Abra-o no seu editor ou IDE preferido e cole no código a seguir. Substitua <your text sample> pelo conteúdo de texto que você gostaria de usar.

Gorjeta

Tamanho e granularidade do texto

Consulte Requisitos de entrada para limitações de comprimento máximo de texto.

const ContentSafetyClient = require("@azure-rest/ai-content-safety").default,
  { isUnexpected } = require("@azure-rest/ai-content-safety");
const { AzureKeyCredential } = require("@azure/core-auth");

// Load the .env file if it exists
require("dotenv").config();

async function main() {
    // get endpoint and key from environment variables
    const endpoint = process.env["CONTENT_SAFETY_ENDPOINT"];
    const key = process.env["CONTENT_SAFETY_KEY"];
    
    const credential = new AzureKeyCredential(key);
    const client = ContentSafetyClient(endpoint, credential);
    
    // replace with your own sample text string 
    const text = "<your sample text>";
    const analyzeTextOption = { text: text };
    const analyzeTextParameters = { body: analyzeTextOption };
    
    const result = await client.path("/text:analyze").post(analyzeTextParameters);
    
    if (isUnexpected(result)) {
        throw result;
    }
    
    for (let i = 0; i < result.body.categoriesAnalysis.length; i++) {
    const textCategoriesAnalysisOutput = result.body.categoriesAnalysis[i];
    console.log(
      textCategoriesAnalysisOutput.category,
      " severity: ",
      textCategoriesAnalysisOutput.severity
    );
  }
}

main().catch((err) => {
    console.error("The sample encountered an error:", err);
});

Execute a aplicação com o comando node no seu ficheiro de início rápido.

node index.js

Saída

Hate severity:  0
SelfHarm severity:  0
Sexual severity:  0
Violence severity:  0

Documentação de referência | Código-fonte da biblioteca | Pacote (npm) | Exemplos |

Pré-requisitos

  • Uma assinatura do Azure - Crie uma gratuitamente
  • Node.js LTS
  • TypeScript
  • Código do Visual Studio
  • Depois de ter a sua assinatura do Azure, crie um recurso de Segurança de Conteúdo no portal do Azure para obter a sua chave e ponto de extremidade. Introduza um nome exclusivo para o seu recurso, selecione a sua subscrição e selecione um grupo de recursos, uma região suportada (consulte Disponibilidade da região) e um escalão de preços suportado. Depois, selecione Criar.
    • O recurso leva alguns minutos para ser implantado. Depois que terminar, selecione ir para recurso. No painel esquerdo, em Gestão de Recursos, selecione Chave de Assinatura e Ponto de Extremidade. O ponto de extremidade e uma das duas chaves são usados para chamar APIs.

Configurar a aplicação

  1. Crie um novo aplicativo TypeScript. Numa janela de consola (como cmd, PowerShell ou Bash), crie um novo diretório para a sua aplicação e navegue para a mesma.

    mkdir content-safety-typescript && cd content-safety-typescript
    code .
    
  2. Inicialize um novo projeto de Node.js com TypeScript:

    npm init -y
    npm pkg set type=module
    
  3. Instale os pacotes necessários:

    npm install @azure-rest/ai-content-safety @azure/core-auth
    
  4. Instale dependências de desenvolvimento:

    npm install typescript @types/node --save-dev
    
  5. Crie um tsconfig.json arquivo no diretório do projeto:

    {
      "compilerOptions": {
        "target": "es2022",
        "module": "esnext",
        "moduleResolution": "bundler",
        "rootDir": "./src",
        "outDir": "./dist/",
        "esModuleInterop": true,
        "forceConsistentCasingInFileNames": true,
        "strict": true,
        "skipLibCheck": true,
        "declaration": true,
        "sourceMap": true,
        "resolveJsonModule": true,
        "moduleDetection": "force",
        "allowSyntheticDefaultImports": true,
        "verbatimModuleSyntax": false
      },
      "include": [
        "src/**/*.ts"
      ],
      "exclude": [
        "node_modules/**/*",
        "**/*.spec.ts"
      ]
    }
    
  6. Atualize package.json para incluir um script para criar arquivos TypeScript:

    "scripts": {
      "build": "tsc",
      "start": "node dist/index.js"
    }
    
  7. Crie um src diretório para seu código TypeScript.

Criar variáveis de ambiente

Neste exemplo, você gravará suas credenciais em variáveis de ambiente na máquina local que executa o aplicativo.

Para definir a variável de ambiente para sua chave e ponto de extremidade, abra uma janela do console e siga as instruções para seu sistema operacional e ambiente de desenvolvimento.

  • Para definir a CONTENT_SAFETY_KEY variável de ambiente, substitua YOUR_CONTENT_SAFETY_KEY por uma das chaves do seu recurso.
  • Para definir a variável de CONTENT_SAFETY_ENDPOINT ambiente, substitua YOUR_CONTENT_SAFETY_ENDPOINT pelo ponto de extremidade do seu recurso.

Importante

Use chaves de API com cuidado. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente. Se você usar uma chave de API, armazene-a com segurança no Cofre de Chaves do Azure. Para obter mais informações sobre como usar chaves de API com segurança em seus aplicativos, consulte Chaves de API com o Cofre de Chaves do Azure.

Para obter mais informações sobre segurança de serviços de IA, consulte Autenticar solicitações para serviços de IA do Azure.

setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'

Depois de adicionar as variáveis de ambiente, talvez seja necessário reiniciar todos os programas em execução que lerão as variáveis de ambiente, incluindo a janela do console.

Analisar conteúdo de texto

Crie um arquivo no src diretório chamado index.ts. Abra-o no seu editor ou IDE preferido e cole no código a seguir. Substitua <your text sample> pelo conteúdo de texto que você gostaria de analisar.

Gorjeta

Tamanho e granularidade do texto

Consulte Requisitos de entrada para limitações de comprimento máximo de texto.

import ContentSafetyClient, { 
  isUnexpected, 
  AnalyzeTextParameters,
  AnalyzeText200Response,
  AnalyzeTextDefaultResponse,
  AnalyzeTextOptions,
  TextCategoriesAnalysisOutput 
} from "@azure-rest/ai-content-safety";
import { AzureKeyCredential } from "@azure/core-auth";

// Get endpoint and key from environment variables
const endpoint = process.env.CONTENT_SAFETY_ENDPOINT;
const key = process.env.CONTENT_SAFETY_KEY;

if (!endpoint || !key) {
  throw new Error("Missing required environment variables: CONTENT_SAFETY_ENDPOINT or CONTENT_SAFETY_KEY");
}

try {
  // Create client with Azure Key Credential
  const credential = new AzureKeyCredential(key);
  const client = ContentSafetyClient(endpoint, credential);
  
  // Replace with your own sample text string
  const text = "Replace with your text sample";
  const analyzeTextOption: AnalyzeTextOptions = { text };
  const analyzeTextParameters: AnalyzeTextParameters = { body: analyzeTextOption };
  
  // Call the Content Safety API to analyze the text
  const result: AnalyzeText200Response | AnalyzeTextDefaultResponse = await client.path("/text:analyze").post(analyzeTextParameters);
  
  if (isUnexpected(result)) {
    throw result;
  }
  
  // Process and display the analysis results
  console.log("Text analysis results:");
  
  const categoriesAnalysis = result.body.categoriesAnalysis as TextCategoriesAnalysisOutput[];
  
  for (const analysis of categoriesAnalysis) {
    console.log(`${analysis.category} severity: ${analysis.severity}`);
  }
} catch (error: any) {
  console.error("The sample encountered an error:", error.message);
}

Compilar e executar o aplicativo

  1. Crie o código TypeScript:
npm run build
  1. Execute a aplicação:
npm start

Saída

Text analysis results:
Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0

Limpar recursos

Se quiser limpar e remover uma assinatura de serviços do Azure AI, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados a ele.