Azure AI Model Inference REST API reference

De Azure AI-modelinferentie is een API die een gemeenschappelijke set mogelijkheden voor fundamentele modellen blootstelt en die door ontwikkelaars kan worden gebruikt om voorspellingen van een diverse set modellen op een uniforme en consistente manier te verwerken. Ontwikkelaars kunnen communiceren met verschillende modellen die in het Azure AI Foundry-portaal zijn geïmplementeerd zonder de onderliggende code die ze gebruiken te veranderen.

Voordelen

Fundamentele modellen, zoals taalmodellen, hebben de afgelopen jaren inderdaad opmerkelijke vooruitgang geboekt. Deze ontwikkelingen hebben verschillende vakgebieden gerevolutioneerd, waaronder natuurlijke taalverwerking en computervisie, en ze hebben toepassingen mogelijk gemaakt zoals chatbots, virtuele assistenten en taalvertaaldiensten.

Hoewel fundamentele modellen uitblinken in specifieke domeinen, missen ze een uniforme set mogelijkheden. Sommige modellen zijn beter in specifieke taken en zelfs binnen dezelfde taak kunnen sommige modellen het probleem op de ene manier benaderen terwijl andere op een andere manier het probleem benaderen. Ontwikkelaars kunnen profiteren van deze diversiteit door het juiste model voor de juiste taak te gebruiken , waardoor ze het mogelijk maken om:

  • Verbeter de prestaties in een specifieke downstream-taak.
  • Gebruik efficiëntere modellen voor eenvoudigere taken.
  • Gebruik kleinere modellen die sneller kunnen draaien bij specifieke taken.
  • Stel meerdere modellen samen om intelligente ervaringen te ontwikkelen.

Een uniforme manier om fundamentele modellen te gebruiken stelt ontwikkelaars in staat al die voordelen te realiseren zonder portabiliteit op te offeren of de onderliggende code te wijzigen.

Ondersteuning voor inferentie SDK

Het Azure AI Inference-pakket stelt je in staat om alle modellen die de Azure AI model inference API ondersteunen te gebruiken en eenvoudig tussen deze modellen te wisselen. Het Azure AI Inference-pakket maakt deel uit van de Azure AI Foundry SDK.

Language Documentation Package Examples
C# Referentie azure-ai-inferentie (NuGet) C#-voorbeelden
Java Referentie azure-ai-inferentie (Maven) Java-voorbeelden
JavaScript Referentie @azure/ai-inferentie (npm) JavaScript-voorbeelden
Python Referentie azure-ai-inferentie (PyPi) Python-voorbeelden

Capabilities

De volgende sectie beschrijft enkele van de mogelijkheden die de API biedt:

Modalities

De API geeft aan hoe ontwikkelaars voorspellingen kunnen consumeren voor de volgende modaliteiten:

  • Krijg info: Geeft de informatie terug over het model dat onder het endpoint is uitgerold.
  • Tekstembeddings: Maakt een embeddingvector aan die de invoertekst vertegenwoordigt.
  • Chatvoltooiingen: Maakt een modelantwoord voor het gegeven chatgesprek.
  • Afbeeldings-embeddings: Maakt een embeddingvector aan die de invoertekst en afbeelding vertegenwoordigt.

Extensibility

De Azure AI Model Inference API specificeert een set modaliteiten en parameters waarop modellen zich kunnen abonneren. Sommige modellen kunnen echter nog meer mogelijkheden hebben dan die welke de API aangeeft. In die gevallen stelt de API de ontwikkelaar in staat om ze als extra parameters in de payload door te geven.

Door een header extra-parameters: pass-throughin te stellen, zal de API proberen elke onbekende parameter direct aan het onderliggende model door te geven. Als het model die parameter aankan, wordt het verzoek voltooid.

Het volgende voorbeeld toont een verzoek dat de parameter safe_prompt doorgeeft die door Mistral-Large wordt ondersteund, maar die niet is gespecificeerd in de Azure AI Model Inference API.

Verzoek

POST /chat/completions?api-version=2025-04-01
Authorization: Bearer <bearer-token>
Content-Type: application/json
extra-parameters: pass-through
{
    "messages": [
    {
        "role": "system",
        "content": "You are a helpful assistant"
    },
    {
        "role": "user",
        "content": "Explain Riemann's conjecture in 1 paragraph"
    }
    ],
    "temperature": 0,
    "top_p": 1,
    "response_format": { "type": "text" },
    "safe_prompt": true
}

Note

De standaardwaarde voor extra-parameters is error die een foutmelding geeft als er een extra parameter in de payload wordt aangegeven. Alternatief kun je instellen extra-parameters: drop dat elke onbekende parameter in het verzoek wordt weggelaten. Gebruik deze mogelijkheid als je toevallig verzoeken met extra parameters stuurt waarvan je weet dat het model ze niet ondersteunt, maar je wilt dat het verzoek toch wordt afgerond. Een typisch voorbeeld hiervan is het aangeven seed van parameter.

Modellen met uiteenlopende mogelijkheden

De Azure AI Model Inference API geeft een algemene set capabilities aan, maar elk model kan beslissen of ze deze wel of niet willen implementeren. Een specifieke foutmelding wordt teruggegeven in die gevallen waarin het model een specifieke parameter niet kan ondersteunen.

Het volgende voorbeeld toont het antwoord op een verzoek om chatvoltooiing, waarbij de parameter reponse_format wordt aangegeven en om een antwoord wordt gevraagd in JSON formaat. In het voorbeeld, omdat het model zo'n mogelijkheid niet ondersteunt, wordt een foutmelding 422 aan de gebruiker teruggegeven.

Verzoek

POST /chat/completions?api-version=2025-04-01
Authorization: Bearer <bearer-token>
Content-Type: application/json
{
    "messages": [
    {
        "role": "system",
        "content": "You are a helpful assistant"
    },
    {
        "role": "user",
        "content": "Explain Riemann's conjecture in 1 paragraph"
    }
    ],
    "temperature": 0,
    "top_p": 1,
    "response_format": { "type": "json_object" },
}

Reactie

{
    "status": 422,
    "code": "parameter_not_supported",
    "detail": {
        "loc": [ "body", "response_format" ],
        "input": "json_object"
    },
    "message": "One of the parameters contain invalid values."
}

Tip

Je kunt het eigendom details.loc inspecteren om de locatie van de betreffende parameter te begrijpen en details.input om de waarde te zien die in het verzoek is doorgegeven.

Inhoudsveiligheid

De Azure AI-model inferentie-API ondersteunt Azure AI Content Veiligheid. Bij gebruik van implementaties met Azure AI Content Veiligheid aan, passeren inputs en outputs een ensemble van classificatiemodellen die gericht zijn op het detecteren en voorkomen van schadelijke content. Het contentfiltersysteem (preview) detecteert en onderneemt actie op specifieke categorieën van potentieel schadelijke inhoud in zowel invoerprompts als uitvoerafrondingen.

Het volgende voorbeeld toont de reactie op een verzoek om chatvoltooiing dat contentveiligheid heeft geactiveerd.

Verzoek

POST /chat/completions?api-version=2025-04-01
Authorization: Bearer <bearer-token>
Content-Type: application/json
{
    "messages": [
    {
        "role": "system",
        "content": "You are a helpful assistant"
    },
    {
        "role": "user",
        "content": "Chopping tomatoes and cutting them into cubes or wedges are great ways to practice your knife skills."
    }
    ],
    "temperature": 0,
    "top_p": 1,
}

Reactie

{
    "status": 400,
    "code": "content_filter",
    "message": "The response was filtered",
    "param": "messages",
    "type": null
}

Aan de slag

Azure AI model inference API is beschikbaar op Azure AI Services resources. Je kunt ermee beginnen op dezelfde manier als met elk ander Azure product, waarbij je je resource creëert en configureert voor Azure AI-modelinferentie of instantie van de dienst, in je Azure Subscription. Je kunt zoveel resources maken als nodig is en ze onafhankelijk configureren als je meerdere teams hebt met verschillende eisen.

Zodra je een Azure AI Services-resource hebt gemaakt, moet je eerst een model deployen voordat je API-aanroepen kunt maken. Standaard zijn er geen modellen op beschikbaar, dus je kunt bepalen met welke je begint. Bekijk de tutorial Maak je eerste modelimplementatie in Azure AI-modelinferentie.