Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Kom igång med grundläggande textmoderering med Content Safety Studio, REST API eller klientbibliotek. Azure AI Content Safety-tjänsten ger dig AI-algoritmer för att flagga stötande innehåll. Prova genom att följa dessa steg.
Mer information om textmoderering finns på konceptsidan Skadekategorier. För API-indatabegränsningar, se avsnittet Indatakrav i översikten.
Varning
Exempeldata och kod kan innehålla stötande innehåll. Användarens diskretion rekommenderas.
Förutsättningar
- Ett Azure-konto. Om du inte har en kan du skapa en kostnadsfritt.
- En Azure AI-resurs.
Inställningar
Följ de här stegen för att använda sidan Testa innehållssäkerhet:
- Gå till Azure AI Foundry och gå till projektet/hubben. Välj sedan fliken Skyddsräcken + kontroller i det vänstra navigeringsfältet och välj fliken Prova .
- På sidan Prova kan du experimentera med olika skyddsmekanismer och kontrollfunktioner, till exempel text- och bildinnehåll, med hjälp av justerbara tröskelvärden för att filtrera efter olämpligt eller skadligt innehåll.
Analysera text
- Välj panelen Måttligt textinnehåll.
- Lägg till text i indatafältet eller välj exempeltext från panelerna på sidan.
- Välj Kör test. Tjänsten returnerar alla kategorier som har identifierats, med allvarlighetsgraden för var och en: 0-Säker, 2-Låg, 4-Medel, 6-Hög. Den returnerar också ett binärt godkänt/avvisat resultat baserat på de filter som du konfigurerar. Använd matrisen på fliken Konfigurera filter för att ange tillåtna/förbjudna allvarlighetsnivåer för varje kategori. Sedan kan du köra texten igen för att se hur filtret fungerar.
Visa och exportera kod
Du kan använda funktionen Visa kod på sidorna Analysera textinnehåll eller Analysera bildinnehåll för att visa och kopiera exempelkoden, som innehåller konfiguration för allvarlighetsgradsfiltrering, blocklistor och modereringsfunktioner. Du kan sedan distribuera koden på din sida.
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- När du har din Azure-prenumeration skapar du en Content Safety-resurs i Azure Portal för att hämta din nyckel och slutpunkt. Ange ett unikt namn för resursen, välj din prenumeration och välj en resursgrupp, region som stöds (se Regiontillgänglighet) och prisnivå som stöds. Välj sedan Skapa.
- Det tar några minuter att distribuera resursen. När den är klar väljer du Gå till resurs. I den vänstra rutan under Resurshantering väljer du Prenumerationsnyckel och Slutpunkt. Slutpunkten och någon av nycklarna används för att anropa API:er.
- cURL installerat
Analysera textinnehåll
I följande avsnitt går vi igenom en exempelbegäran med cURL. Klistra in kommandot nedan i en textredigerare och gör följande ändringar.
- Ersätt
<endpoint>med slutpunkts-URL:en som är associerad med resursen. - Ersätt
<your_subscription_key>med en av nycklarna som medföljer resursen. - Du kan också ersätta fältet
"text"i brödtexten med din egen text som du vill analysera.
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"
}'
Fälten nedan måste inkluderas i URL:en:
| Namn | Obligatoriskt | Beskrivning | Typ |
|---|---|---|---|
| API-version | Obligatoriskt | Det här är DEN API-version som ska kontrolleras. Den aktuella versionen är: api-version=2024-09-01. Exempel: <endpoint>/contentsafety/text:analyze?api-version=2024-09-01 |
Sträng |
Parametrarna i begärandetexten definieras i den här tabellen:
| Namn | Obligatoriskt | Beskrivning | Typ |
|---|---|---|---|
| text | Obligatoriskt | Det här är den råa text som ska kontrolleras. Andra tecken som inte är ascii-tecken kan inkluderas. | Sträng |
| Kategorier | Valfritt | Detta antas vara en matris med kategorinamn. Se guiden Skadekategorier för en lista över tillgängliga kategorinamn. Om inga kategorier anges används alla fyra kategorierna. Vi använder flera kategorier för att få poäng i en enda begäran. | Sträng |
| blocklistNames | Valfritt | Namn på textblockeringslista. Stöder endast följande tecken: 0-9 A-Z a-z - . _ ~. Du kan bifoga flera listnamn här. |
Matris |
| haltOnBlocklistHit | Valfritt | När värdet är inställt truepå utförs inte ytterligare analyser av skadligt innehåll i de fall då blocklistor träffas. När värdet falseär inställt på utförs alla analyser av skadligt innehåll, oavsett om blocklistor nås eller inte. |
Booleskt |
| outputType | Valfritt |
"FourSeverityLevels" eller "EightSeverityLevels". Utdata allvarlighetsgrad i fyra eller åtta nivåer, kan värdet vara 0,2,4,6 eller 0,1,2,3,4,5,6,7. |
Sträng |
Se följande exempel på begärandetext:
{
"text": "I hate you",
"categories": ["Hate", "Sexual", "SelfHarm", "Violence"],
"blocklistNames": ["array"],
"haltOnBlocklistHit": false,
"outputType": "FourSeverityLevels"
}
Öppna ett kommandotolksfönster, klistra in det redigerade cURL-kommandot och kör det.
Utgång
Du bör se textmodereringsresultatet som visas som JSON-data i konsolens utdata. Till exempel:
{
"blocklistsMatch": [
{
"blocklistName": "string",
"blocklistItemId": "string",
"blocklistItemText": "string"
}
],
"categoriesAnalysis": [
{
"category": "Hate",
"severity": 2
},
{
"category": "SelfHarm",
"severity": 0
},
{
"category": "Sexual",
"severity": 0
},
{
"category": "Violence",
"severity": 0
}
]
}
JSON-fälten i utdata definieras här:
| Namn | Beskrivning | Typ |
|---|---|---|
| kategorianalys | Varje utdataklass som API:et förutsäger. Klassificering kan vara flera etiketter. När ett textexempel till exempel körs genom textmodereringsmodellen kan det klassificeras som både sexuellt innehåll och våld. Skadekategorier | Sträng |
| Allvarlighetsgrad | Ju högre allvarlighetsgrad indatainnehållet är, desto större är det här värdet. | Heltal |
Referensdokumentation NuGet-exempel (Library Source Code |
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- Visual Studio IDE med arbetsbelastningen .NET Desktop-utveckling aktiverad. Eller om du inte planerar att använda Visual Studio IDE behöver du den aktuella versionen av .NET Core.
- När du har din Azure-prenumeration skapar du en Content Safety-resurs i Azure Portal för att hämta din nyckel och slutpunkt. Ange ett unikt namn för resursen, välj din prenumeration och välj en resursgrupp, region som stöds (se Regiontillgänglighet) och prisnivå som stöds. Välj sedan Skapa.
- Det tar några minuter att distribuera resursen. När den är klar väljer du Gå till resurs. I den vänstra rutan under Resurshantering väljer du Prenumerationsnyckel och Slutpunkt. Slutpunkten och någon av nycklarna används för att anropa API:er.
Konfigurera program
Skapa ett nytt C#-program.
Öppna Visual Studio och under Kom igång välj Skapa ett nytt projekt. Ange mallfiltren till C#/Alla plattformar/konsol. Välj Konsolapp (kommandoradsprogram som kan köras på .NET i Windows, Linux och macOS) och välj Nästa. Uppdatera projektnamnet till ContentSafetyQuickstart och välj Nästa. Välj .NET 6.0 eller senare och välj Skapa för att skapa projektet.
Installera klient-SDK
När du har skapat ett nytt projekt installerar du klient-SDK genom att högerklicka på projektlösningen i Solution Explorer och välja Hantera NuGet-paket. I pakethanteraren som öppnas väljer du Bläddra och söker Azure.AI.ContentSafetyefter . Välj Installera.
Skapa miljövariabler
I det här exemplet skriver du dina autentiseringsuppgifter till miljövariabler på den lokala dator som kör programmet.
Om du vill ange miljövariabeln för din nyckel och slutpunkt öppnar du ett konsolfönster och följer anvisningarna för operativsystemet och utvecklingsmiljön.
- Om du vill ange
CONTENT_SAFETY_KEYmiljövariabeln ersätter duYOUR_CONTENT_SAFETY_KEYmed en av nycklarna för resursen. - Om du vill ange
CONTENT_SAFETY_ENDPOINTmiljövariabeln ersätter duYOUR_CONTENT_SAFETY_ENDPOINTmed slutpunkten för resursen.
Viktigt!
Använd API-nycklar med försiktighet. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt. Om du använder en API-nyckel lagrar du den på ett säkert sätt i Azure Key Vault. Mer information om hur du använder API-nycklar på ett säkert sätt i dina appar finns i API-nycklar med Azure Key Vault.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
När du har lagt till miljövariablerna kan du behöva starta om alla program som körs som läser miljövariablerna, inklusive konsolfönstret.
Analysera textinnehåll
Öppna filen Program.cs som skapades tidigare från projektkatalogen. Klistra in följande kod:
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();
}
}
}
Ersätt "Your input text" med det textinnehåll som du vill använda.
Skapa och kör programmet genom att välja Starta felsökning från felsökningsmenyn överst i IDE-fönstret (eller tryck på F5).
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- När du har din Azure-prenumeration skapar du en Content Safety-resurs i Azure Portal för att hämta din nyckel och slutpunkt. Ange ett unikt namn för resursen, välj din prenumeration och välj en resursgrupp, region som stöds (se Regiontillgänglighet) och prisnivå som stöds. Välj sedan Skapa.
- Det tar några minuter att distribuera resursen. När den är klar väljer du Gå till resurs. I den vänstra rutan under Resurshantering väljer du Prenumerationsnyckel och Slutpunkt. Slutpunkten och någon av nycklarna används för att anropa API:er.
-
Python 3.x
- Python-installationen bör innehålla pip. Du kan kontrollera om du har pip installerat genom att köra
pip --versionpå kommandoraden. Hämta pip genom att installera den senaste versionen av Python.
- Python-installationen bör innehålla pip. Du kan kontrollera om du har pip installerat genom att köra
Skapa miljövariabler
I det här exemplet skriver du dina autentiseringsuppgifter till miljövariabler på den lokala dator som kör programmet.
Om du vill ange miljövariabeln för din nyckel och slutpunkt öppnar du ett konsolfönster och följer anvisningarna för operativsystemet och utvecklingsmiljön.
- Om du vill ange
CONTENT_SAFETY_KEYmiljövariabeln ersätter duYOUR_CONTENT_SAFETY_KEYmed en av nycklarna för resursen. - Om du vill ange
CONTENT_SAFETY_ENDPOINTmiljövariabeln ersätter duYOUR_CONTENT_SAFETY_ENDPOINTmed slutpunkten för resursen.
Viktigt!
Använd API-nycklar med försiktighet. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt. Om du använder en API-nyckel lagrar du den på ett säkert sätt i Azure Key Vault. Mer information om hur du använder API-nycklar på ett säkert sätt i dina appar finns i API-nycklar med Azure Key Vault.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
När du har lagt till miljövariablerna kan du behöva starta om alla program som körs som läser miljövariablerna, inklusive konsolfönstret.
Analysera textinnehåll
I följande avsnitt går vi igenom en exempelbegäran med Python SDK.
Öppna en kommandotolk, navigera till projektmappen och skapa en ny fil med namnet quickstart.py.
Kör det här kommandot för att installera Azure AI Content Safety-biblioteket:
pip install azure-ai-contentsafetyKopiera följande kod till 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()Ersätt
"Your input text"med det textinnehåll som du vill använda.Kör sedan programmet med
pythonkommandot på snabbstartsfilen.python quickstart.py
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- Den aktuella versionen av Java Development Kit (JDK)
- Build-verktyget Gradle eller en annan beroendehanterare.
- När du har din Azure-prenumeration skapar du en Content Safety-resurs i Azure Portal för att hämta din nyckel och slutpunkt. Ange ett unikt namn för resursen, välj din prenumeration och välj en resursgrupp, region som stöds (se Regiontillgänglighet) och prisnivå som stöds. Välj sedan Skapa.
- Det tar några minuter att distribuera resursen. När den är klar väljer du Gå till resurs. I den vänstra rutan under Resurshantering väljer du Prenumerationsnyckel och Slutpunkt. Slutpunkten och någon av nycklarna används för att anropa API:er.
Konfigurera program
Skapa ett nytt Gradle-projekt.
Skapa en ny katalog för din app i ett konsolfönster (till exempel cmd, PowerShell eller bash) och navigera till den.
mkdir myapp && cd myapp
Kör kommandot från arbetskatalogen gradle init . Det här kommandot skapar viktiga byggfiler för Gradle, inklusive build.gradle.kts, som används vid körning för att skapa och konfigurera ditt program.
gradle init --type basic
Välj en DSL när du uppmanas till det och välj Kotlin.
Från arbetskatalogen kör du följande kommando för att skapa en projektkällmapp:
mkdir -p src/main/java
Gå till den nya mappen och skapa en fil med namnet ContentSafetyQuickstart.java.
Installera klient-SDK
Den här snabbstarten använder Gradle-beroendehanteraren. Du hittar klientbiblioteket och information för andra beroendehanterare på Den centrala Maven-lagringsplatsen.
Leta upp build.gradle.kts och öppna det med önskad IDE eller textredigerare . Kopiera sedan i följande byggkonfiguration. Den här konfigurationen definierar projektet som ett Java-program vars startpunkt är klassen ContentSafetyQuickstart. Den importerar Azure AI Vision-biblioteket.
plugins {
java
application
}
application {
mainClass.set("ContentSafetyQuickstart")
}
repositories {
mavenCentral()
}
dependencies {
implementation(group = "com.azure", name = "azure-ai-contentsafety", version = "1.0.0")
}
Skapa miljövariabler
I det här exemplet skriver du dina autentiseringsuppgifter till miljövariabler på den lokala dator som kör programmet.
Om du vill ange miljövariabeln för din nyckel och slutpunkt öppnar du ett konsolfönster och följer anvisningarna för operativsystemet och utvecklingsmiljön.
- Om du vill ange
CONTENT_SAFETY_KEYmiljövariabeln ersätter duYOUR_CONTENT_SAFETY_KEYmed en av nycklarna för resursen. - Om du vill ange
CONTENT_SAFETY_ENDPOINTmiljövariabeln ersätter duYOUR_CONTENT_SAFETY_ENDPOINTmed slutpunkten för resursen.
Viktigt!
Använd API-nycklar med försiktighet. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt. Om du använder en API-nyckel lagrar du den på ett säkert sätt i Azure Key Vault. Mer information om hur du använder API-nycklar på ett säkert sätt i dina appar finns i API-nycklar med Azure Key Vault.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
När du har lagt till miljövariablerna kan du behöva starta om alla program som körs som läser miljövariablerna, inklusive konsolfönstret.
Analysera textinnehåll
Öppna ContentSafetyQuickstart.java i önskad redigerare eller IDE och klistra in följande kod. Ersätt <your text sample> med det textinnehåll som du vill använda.
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());
}
}
}
Gå tillbaka till projektrotmappen och skapa appen med:
gradle build
Kör den sedan med gradle run kommandot :
gradle run
Utgång
Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- Den aktuella versionen av Node.js
- När du har din Azure-prenumeration skapar du en Content Safety-resurs i Azure Portal för att hämta din nyckel och slutpunkt. Ange ett unikt namn för resursen, välj din prenumeration och välj en resursgrupp, region som stöds (se Regiontillgänglighet) och prisnivå som stöds. Välj sedan Skapa.
- Det tar några minuter att distribuera resursen. När den är klar väljer du Gå till resurs. I den vänstra rutan under Resurshantering väljer du Prenumerationsnyckel och Slutpunkt. Slutpunkten och någon av nycklarna används för att anropa API:er.
Konfigurera program
Skapa ett nytt Node.js-program. Skapa en ny katalog för din app i ett konsolfönster (till exempel cmd, PowerShell eller bash) och navigera till den.
mkdir myapp && cd myapp
Kör kommandot npm init för att skapa ett nodprogram med en package.json-fil.
npm init
Installera klient-SDK
@azure-rest/ai-content-safety Installera npm-paketet:
npm install @azure-rest/ai-content-safety
Installera även modulen dotenv för att använda miljövariabler:
npm install dotenv
Programmets package.json-fil kommer att uppdateras med beroenden.
Skapa miljövariabler
I det här exemplet skriver du dina autentiseringsuppgifter till miljövariabler på den lokala dator som kör programmet.
Om du vill ange miljövariabeln för din nyckel och slutpunkt öppnar du ett konsolfönster och följer anvisningarna för operativsystemet och utvecklingsmiljön.
- Om du vill ange
CONTENT_SAFETY_KEYmiljövariabeln ersätter duYOUR_CONTENT_SAFETY_KEYmed en av nycklarna för resursen. - Om du vill ange
CONTENT_SAFETY_ENDPOINTmiljövariabeln ersätter duYOUR_CONTENT_SAFETY_ENDPOINTmed slutpunkten för resursen.
Viktigt!
Använd API-nycklar med försiktighet. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt. Om du använder en API-nyckel lagrar du den på ett säkert sätt i Azure Key Vault. Mer information om hur du använder API-nycklar på ett säkert sätt i dina appar finns i API-nycklar med Azure Key Vault.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
När du har lagt till miljövariablerna kan du behöva starta om alla program som körs som läser miljövariablerna, inklusive konsolfönstret.
Analysera textinnehåll
Skapa en ny fil i katalogen index.js. Öppna den i önskad redigerare eller IDE och klistra in följande kod. Ersätt <your text sample> med det textinnehåll som du vill använda.
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);
});
Kör programmet med kommandot node på din snabbstartsfil.
node index.js
Utgång
Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0
Förutsättningar
- En Azure-prenumeration – Skapa en kostnadsfritt
- Node.js LTS
- TypeScript
- Visual Studio Code
- När du har din Azure-prenumeration skapar du en Content Safety-resurs i Azure Portal för att hämta din nyckel och slutpunkt. Ange ett unikt namn för resursen, välj din prenumeration och välj en resursgrupp, region som stöds (se Regiontillgänglighet) och prisnivå som stöds. Välj sedan Skapa.
- Det tar några minuter att distribuera resursen. När den är klar väljer du Gå till resurs. I den vänstra rutan under Resurshantering väljer du Prenumerationsnyckel och Slutpunkt. Slutpunkten och någon av nycklarna används för att anropa API:er.
Konfigurera program
Skapa ett nytt TypeScript-program. Skapa en ny katalog för din app i ett konsolfönster (till exempel cmd, PowerShell eller bash) och navigera till den.
mkdir content-safety-typescript && cd content-safety-typescript code .Initiera ett nytt Node.js projekt med TypeScript:
npm init -y npm pkg set type=moduleInstallera de paket som krävs:
npm install @azure-rest/ai-content-safety @azure/core-authInstallera utvecklingsberoenden:
npm install typescript @types/node --save-devSkapa en
tsconfig.jsonfil i projektkatalogen:{ "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" ] }Uppdatera
package.jsonför att inkludera ett skript för att skapa TypeScript-filer:"scripts": { "build": "tsc", "start": "node dist/index.js" }Skapa en
srckatalog för TypeScript-koden.
Skapa miljövariabler
I det här exemplet skriver du dina autentiseringsuppgifter till miljövariabler på den lokala dator som kör programmet.
Om du vill ange miljövariabeln för din nyckel och slutpunkt öppnar du ett konsolfönster och följer anvisningarna för operativsystemet och utvecklingsmiljön.
- Om du vill ange
CONTENT_SAFETY_KEYmiljövariabeln ersätter duYOUR_CONTENT_SAFETY_KEYmed en av nycklarna för resursen. - Om du vill ange
CONTENT_SAFETY_ENDPOINTmiljövariabeln ersätter duYOUR_CONTENT_SAFETY_ENDPOINTmed slutpunkten för resursen.
Viktigt!
Använd API-nycklar med försiktighet. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt. Om du använder en API-nyckel lagrar du den på ett säkert sätt i Azure Key Vault. Mer information om hur du använder API-nycklar på ett säkert sätt i dina appar finns i API-nycklar med Azure Key Vault.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx CONTENT_SAFETY_KEY 'YOUR_CONTENT_SAFETY_KEY'
setx CONTENT_SAFETY_ENDPOINT 'YOUR_CONTENT_SAFETY_ENDPOINT'
När du har lagt till miljövariablerna kan du behöva starta om alla program som körs som läser miljövariablerna, inklusive konsolfönstret.
Analysera textinnehåll
Skapa en fil i katalogen src med namnet index.ts. Öppna den i önskad redigerare eller IDE och klistra in följande kod. Ersätt <your text sample> med det textinnehåll som du vill analysera.
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);
}
Skapa och köra programmet
- Skapa TypeScript-koden:
npm run build
- Kör programmet:
npm start
Utgång
Text analysis results:
Hate severity: 0
SelfHarm severity: 0
Sexual severity: 0
Violence severity: 0
Rensa resurser
Om du vill rensa och ta bort en Azure AI-tjänstprenumeration kan du ta bort resursen eller resursgruppen. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.
Relaterat innehåll
- Skadekategorier
- Konfigurera filter för varje kategori och testa datauppsättningar med hjälp av Content Safety Studio, exportera koden och distribuera.