Een clienttoepassing maken waarmee tekst wordt geanalyseerd

Voltooid

Tip

Zie het tabblad Tekst en afbeeldingen voor meer informatie.

Een clienttoepassing is een programma dat u schrijft die verbinding maakt met een service of model en de mogelijkheden ervan gebruikt. Uw code verzendt aanvragen naar de service en ontvangt automatisch resultaten, zodat grote hoeveelheden tekst kunnen worden verwerkt of AI-analyse in een werkstroom kan worden geïntegreerd.

Als u verbinding wilt maken met een AI-service, gebruikt uw toepassing een API (Application Programming Interface). Een API is een set regels waarmee wordt gedefinieerd hoe twee onderdelen van software communiceren. Een clientbibliotheek is een set kant-en-klare code die ontwikkelaars in hun toepassing kunnen gebruiken om eenvoudig met een service of API te communiceren. U kunt basismateriaal over toepassingen bekijken en eindpunten gebruiken in: Get gestart met AI in Azure.

AI-modellen voor algemeen gebruik gebruiken voor tekstanalyse

Begin met een Microsoft Foundry-resource en maak een Foundry-project binnen uw resource. In de nieuwe Foundry-portal kunt u door de modelcatalogus bladeren en een model voor algemeen gebruik implementeren.

U kunt een clienttoepassing bouwen die communiceert met Microsoft Foundry-modellen met behulp van de Azure OpenAI-API. Met de OpenAI-API kan uw code communiceren met een geïmplementeerd model door aanvragen naar een eindpunt te verzenden, samen met een API-sleutel om te bewijzen dat u gemachtigd bent.

De Responses-API is de moderne, geïntegreerde API binnen Azure OpenAI voor interactie met taalmodellen. Het is ontworpen voor het afhandelen van volledige AI-interacties, niet alleen voor het genereren van tekst.

U kunt de antwoorden-API gebruiken om prompts in natuurlijke taal naar een geïmplementeerd taalmodel te verzenden. Het is handig wanneer u flexibele, gespreksstijlanalyse nodig hebt waarvoor geen vaste gestructureerde uitvoer nodig is.

De OpenAI Python-bibliotheek gebruiken

De OpenAI Python-bibliotheek is een officiële Python software development kit (SDK) waarmee ontwikkelaars Python toepassingen kunnen bouwen die communiceren met OpenAI-modellen en -services via code in plaats van onbewerkte HTTP-aanvragen.

Als u de OpenAI-Python-bibliotheek wilt gebruiken, moet u in een code-editor werken. Toepassingscode wordt geschreven in code-editors, zoals Visual Studio Code. De terminal van een code-editor is een ingebouwd opdrachtregelvenster in de editor waar u opdrachten kunt uitvoeren zonder uw ontwikkelomgeving te verlaten.

1. Installeer de benodigde pakketten

De OpenAI Python-bibliotheek kan worden geïnstalleerd in de Visual Studio Code terminal met behulp van:

pip install openai

2. Een configuratiebestand maken

Vervolgens kunt u een configuratiebestand (type .env) maken om uw omgevingsvariabelen op te slaan, zoals uw eindpunt, sleutel en modelimplementatienaam.

Houd rekening met de volgende variabelen:

AZURE_OPENAI_ENDPOINT=https://<your-resource>.openai.azure.com/openai/v1/
MODEL_DEPLOYMENT_NAME=gpt-4.1-mini
API_KEY=<your-foundry-key>

U ziet hoe de eindpuntvariabele de naam van uw Foundry-resource bevat en openai.azure.com/openai/v1. Uw API-sleutel is uw Foundry-projectsleutel.

De naam van de modelimplementatie is de naam die u het model geeft wanneer u het implementeert. Wanneer u bijvoorbeeld het model gpt-4.1 implementeert, kunt u het gpt-demo-model noemen. De implementatienaam is gpt-demo-model. Als u de modelnaam echter niet aanpast, komt de implementatienaam overeen met de modelnaam, zoals in het bovenstaande codefragment.

3. Maak een bestand met uw toepassingslogica

Bekijk het volgende voorbeeld van toepassingscode:

import os
from dotenv import load_dotenv
from openai import OpenAI

# Load environment variables from .env file
load_dotenv()
endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
api_key = os.getenv("API_KEY")
deployment_name = os.getenv("MODEL_DEPLOYMENT_NAME")

# Create the client object
client = OpenAI(
    base_url=endpoint,
    api_key=api_key
)

# Make a request using the client
message = client.responses.create(
    model=deployment_name,
    input="",
)

# Print the results
print(f"Sentiment: {message.output[0]}")

Opmerking

Omgevingsvariabelen laden: in dit voorbeeld dotenv leest (load_dotenv()) uw .env bestand en laadt u deze waarden in de omgeving van uw app. Het os pakket haalt vervolgens elke waarde op naam op met os.getenv(), zoals os.getenv("AZURE_OPENAI_ENDPOINT").

Elke sleutel in .env moet exact overeenkomen met de naam in uw code. Als uw bestand bijvoorbeeld gebruikmaakt van API_KEY, moet uw code ook API_KEY aanvragen. Houd variabelenamen consistent om ontbrekende waarden tijdens runtime te voorkomen.

We gebruiken ons Foundry-resource-eindpunt en -sleutel om een geverifieerd clientobject te maken. De OpenAI klasse wordt gedefinieerd door de SDK en fungeert als blauwdruk voor het maken van verbinding met de OpenAI-API. Een geverifieerd clientobject in Python is een servicespecifiek object dat veilig geautoriseerde API-aanroepen kan maken zonder dat uw code tokens of geheimen handmatig beheert.

Opmerking

In Python is een klasse een blauwdruk die een soort ding definieert: welke gegevens deze bevat en welke acties deze kunnen uitvoeren. Een object is een specifiek exemplaar dat is gemaakt op basis van die blauwdruk. Een klasse kan bijvoorbeeld Car definiëren dat elke auto een kleur heeft en kan drive() of stop(). Wanneer u een specifieke auto maakt, bijvoorbeeld een rode auto, is dat een object.

Zodra u een clientobject hebt gemaakt dat is geconfigureerd met uw eindpunt en sleutel, kunt u methoden aanroepen om met het model te communiceren. U kunt bijvoorbeeld de responsesmethode gebruiken om een prompt naar een specifieke modelimplementatie te verzenden.

We kunnen de resultaten van de analyse weergeven door de toepassingscode uit te voeren in de terminal met de opdracht python <file_name>.py.

De OpenAI-API is eenvoudig te gebruiken, maar de resultaten kunnen variëren tussen aanroepen omdat het model probabilistisch tekst genereert. In de praktijk betekent dit dat twee aanroepen met dezelfde prompt iets andere tekst of opmaak kunnen retourneren. Wanneer uw app consistente, gestructureerde waarden nodig heeft, zoals een taalcode, betrouwbaarheidsscore of bewerkte tekst, is de Azure Language SDK een betere keuze.

De Azure Language SDK gebruiken

De Azure Language SDK is een clientbibliotheek voor Azure Language in Foundry Tools. De SDK maakt het voor ontwikkelaars gemakkelijk om NLP-functies, zoals taaldetectie en het rediëren van persoonsgegevens, toe te voegen aan hun toepassingen.

Laten we eens kijken hoe u de Azure Language Python SDK kunt gebruiken om een toepassing te bouwen waarmee tekst wordt geanalyseerd. Als u de Azure Language Python SDK wilt gebruiken, moet u een Foundry-resource hebben. Vervolgens moet u een compatibele versie van Python en de Azure Language Python SDK installeren.

De Python SDK kan worden geïnstalleerd in de Visual Studio Code terminal met behulp van:

pip install azure-ai-textanalytics

Bekijk het volgende voorbeeld van het configuratiebestand:

AZURE_LANGUAGE_ENDPOINT=https://<your-resource>.cognitiveservices.azure.com/
API_KEY=<your-foundry-key>

Bekijk het volgende voorbeeld van toepassingscode:

# Import packages
import os
from dotenv import load_dotenv
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient

# Load environment variables from .env file
load_dotenv()
endpoint = os.getenv("AZURE_LANGUAGE_ENDPOINT")
key = os.getenv("API_KEY")

# Create the client
client = TextAnalyticsClient(endpoint=endpoint, credential=AzureKeyCredential(key))

# Make a request using the client for language detection
text = "¡Hola! Me llamo Josefina y vivo en Madrid, España."
result = client.detect_language([text])[0]

We gebruiken de methods van de client om Azure Language-functies aan te roepen, zoals detect_language en recognize_pii_entities.

Taaldetectie: De detect_language() methode gebruikt een lijst met teksttekenreeksen en retourneert de gedetecteerde taal, de ISO 639-1-code en een betrouwbaarheidsscore tussen 0 en 1.

text = "¡Hola! Me llamo Josefina y vivo en Madrid, España."
result = client.detect_language([text])[0]

# Print the results
print(f"Language      : {result.primary_language.name}")
print(f"ISO code      : {result.primary_language.iso6391_name}")
print(f"Confidence    : {result.primary_language.confidence_score:.2f}")

PII-detectie: de recognize_pii_entities() methode identificeert persoonlijke gegevens in tekst en retourneert zowel de redactede versie van de tekst als een lijst met de entiteiten die zijn gevonden, inclusief de categorie en betrouwbaarheidsscore van elke entiteit.

text = "Maria Garcia called from 020 7946 0958 and asked to send documents to 42 Market Road, London, UK, SW1A 1AA."

result = client.recognize_pii_entities([text])[0]

# Print the results
print("Redacted text:", result.redacted_text)
print("\nEntities found:")
for entity in result.entities:
    print(f"  {entity.text} | category={entity.category} | confidence={entity.confidence_score}")

Met de OpenAI-API en de Azure Language SDK kunt u code schrijven voor AI-toepassingen die natuurlijke taal verwerken en inzicht genereren op basis van uw tekst.

Laten we nu eens kijken hoe u Azure taalmogelijkheden in AI-agents kunt opnemen.