Jamba-familiemodellen van AI21 implementeren met Azure AI Studio
Belangrijk
Items die in dit artikel zijn gemarkeerd (preview) zijn momenteel beschikbaar als openbare preview. Deze preview wordt aangeboden zonder een service level agreement en we raden deze niet aan voor productieworkloads. Misschien worden bepaalde functies niet ondersteund of zijn de mogelijkheden ervan beperkt. Zie Aanvullende gebruiksvoorwaarden voor Microsoft Azure-previews voor meer informatie.
In dit artikel leert u hoe u Azure AI Studio gebruikt om Jamba-familiemodellen van AI21 te implementeren als een serverloze API met betalen per gebruik-facturering.
De Jamba-familiemodellen zijn ai21's op productie gebaseerde Mamba-gebaseerde grote taalmodel (LLM) die gebruikmaakt van de hybride Mamba-Transformer-architectuur van AI21. Het is een instructie-afgestemde versie van het hybride SSM-transformatiemodel van AI21 (Hybrid Structured State Space Model) Jamba-model. De Jamba family modellen zijn gebouwd voor betrouwbaar commercieel gebruik met betrekking tot kwaliteit en prestaties.
Bekijk onze aankondigingen van de Jamba-familiemodellen van AI21 die nu beschikbaar zijn op Azure AI Model Catalog via de blog van AI21 en microsoft Tech Community Blog.
Belangrijk
Modellen die in preview zijn, worden gemarkeerd als voorbeeld op hun modelkaarten in de modelcatalogus.
De Jamba-familiemodellen implementeren als een serverloze API
Bepaalde modellen in de modelcatalogus kunnen worden geïmplementeerd als een serverloze API met betalen per gebruik-facturering en bieden een manier om ze te gebruiken als EEN API zonder ze te hosten in uw abonnement, terwijl de bedrijfsbeveiligings- en nalevingsorganisaties nodig blijven. Voor deze implementatieoptie is geen quotum van uw abonnement vereist.
Het grote AI21-Jamba 1.5-model dat is geïmplementeerd als een serverloze API met betalen per gebruik-facturering wordt aangeboden door AI21 via Microsoft Azure Marketplace. AI21 kan de gebruiksvoorwaarden en prijzen van dit model wijzigen of bijwerken.
Om aan de slag te gaan met Jamba 1.5 groot geïmplementeerd als een serverloze API, verkent u onze integraties met LangChain, LiteLLM, OpenAI en de Azure-API.
Vereisten
Een Azure-abonnement met een geldige betalingswijze. Gratis of proefversie van Azure-abonnementen werkt niet. Als u geen Azure-abonnement hebt, maakt u eerst een betaald Azure-account .
Een AI Studio-hub. Het serverloze API-modelimplementatieaanbod voor Jamba-familiemodellen is alleen beschikbaar met hubs die in deze regio's zijn gemaakt:
- VS - oost
- VS - oost 2
- VS - noord-centraal
- VS - zuid-centraal
- VS - west
- US - west 3
- Zweden - centraal
Zie Regio-beschikbaarheid voor modellen in serverloze API-eindpunten voor een lijst met regio's die beschikbaar zijn voor elk van de modellen die ondersteuning bieden voor serverloze API-eindpuntimplementaties.
Een Azure AI Studio-project.
Op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) wordt gebruikt om toegang te verlenen tot bewerkingen in Azure AI Studio. Als u de stappen in dit artikel wilt uitvoeren, moet aan uw gebruikersaccount de rol eigenaar of inzender voor het Azure-abonnement zijn toegewezen. U kunt ook een aangepaste rol aan uw account toewijzen met de volgende machtigingen:
In het Azure-abonnement: als u het AI Studio-project wilt abonneren op het Azure Marketplace-aanbod, één keer voor elk project, per aanbieding:
Microsoft.MarketplaceOrdering/agreements/offers/plans/read
Microsoft.MarketplaceOrdering/agreements/offers/plans/sign/action
Microsoft.MarketplaceOrdering/offerTypes/publishers/offers/plans/agreements/read
Microsoft.Marketplace/offerTypes/publishers/offers/plans/agreements/read
Microsoft.SaaS/register/action
In de resourcegroep—om de SaaS-resource te maken en te gebruiken:
Microsoft.SaaS/resources/read
Microsoft.SaaS/resources/write
In het AI Studio-project: als u eindpunten wilt implementeren (de Azure AI Developer-rol bevat deze machtigingen al):
Microsoft.MachineLearningServices/workspaces/marketplaceModelSubscriptions/*
Microsoft.MachineLearningServices/workspaces/serverlessEndpoints/*
Zie Op rollen gebaseerd toegangsbeheer in Azure AI Studio voor meer informatie over machtigingen.
Een nieuwe implementatie maken
Deze stappen demonstreren de implementatie van AI21 Jamba 1.5 Large
of AI21 Jamba 1.5 Mini
modellen. Een implementatie maken:
Meld u aan bij Azure AI Studio.
Selecteer modelcatalogus in de linkerzijbalk.
Zoek en selecteer een AI21-model zoals
AI21 Jamba 1.5 Large
ofAI21 Jamba 1.5 Mini
open deAI21 Jamba Instruct
pagina Details.Selecteer Implementeren om een serverloos API-implementatievenster voor het model te openen.
U kunt ook een implementatie starten door te beginnen met uw project in AI Studio.
Selecteer onderdelenimplementaties> in de linkerzijbalk van uw project.
Selecteer + Implementatie maken.
Zoek en selecteer een AI21-model zoals
AI21 Jamba 1.5 Large
ofAI21 Jamba 1.5 Mini
AI21 Jamba Instruct
om de pagina Details van het model te openen.Selecteer Bevestigen om een serverloos API-implementatievenster voor het model te openen.
Selecteer het project waarin u uw model wilt implementeren. Als u de AI21-Jamba-familiemodellen wilt implementeren, moet uw project zich in een van de regio's bevinden die worden vermeld in de sectie Vereisten .
Selecteer in de implementatiewizard de koppeling naar azure Marketplace-voorwaarden voor meer informatie over de gebruiksvoorwaarden.
Selecteer het tabblad Prijzen en voorwaarden voor meer informatie over prijzen voor het geselecteerde model.
Selecteer de knop Abonneren en implementeren . Als dit de eerste keer is dat u het model in het project implementeert, moet u zich abonneren op uw project voor het specifieke aanbod. Voor deze stap is vereist dat uw account beschikt over de machtigingen voor het Azure-abonnement en de machtigingen voor resourcegroepen die worden vermeld in de vereisten. Elk project heeft een eigen abonnement op de specifieke Azure Marketplace-aanbieding van het model, waarmee u uitgaven kunt beheren en bewaken. Op dit moment kunt u slechts één implementatie voor elk model in een project hebben.
Nadat u het project hebt geabonneerd voor het specifieke Azure Marketplace-aanbod, hoeven volgende implementaties van dezelfde aanbieding in hetzelfde project zich niet opnieuw te abonneren. Als dit scenario op u van toepassing is, is er een optie Voor continue implementatie om deze te selecteren.
Geef de implementatie een naam. Deze naam maakt deel uit van de URL van de implementatie-API. Deze URL moet uniek zijn in elke Azure-regio.
Selecteer Implementeren. Wacht totdat de implementatie gereed is en u wordt omgeleid naar de pagina Implementaties.
Ga terug naar de pagina Implementaties, selecteer de implementatie en noteer de doel-URL van het eindpunt en de geheime sleutel. Zie de sectie Naslaginformatie voor meer informatie over het gebruik van de API's.
U kunt de details, URL en toegangssleutels van het eindpunt altijd vinden door naar de overzichtspagina van Project te navigeren. Selecteer vervolgens in de linkerzijbalk van uw project Onderdelenimplementaties>.
Voor meer informatie over facturering voor de AI21-Jamba-familiemodellen die zijn geïmplementeerd als een serverloze API met facturering op basis van betalen per gebruik, raadpleegt u Kosten- en quotumoverwegingen voor Jamba Instruct geïmplementeerd als een serverloze API.
Jamba-familiemodellen gebruiken als een serverloze API
U kunt Jamba-familiemodellen als volgt gebruiken:
Ga op de overzichtspagina van Project naar de linkerzijbalk en selecteer Onderdelenimplementaties>.
Zoek en selecteer de implementatie die u hebt gemaakt.
Kopieer de doel-URL en de sleutelwaarde .
Maak een API-aanvraag.
Zie de naslagsectie voor meer informatie over het gebruik van de API's.
Naslaginformatie voor Jamba-familiemodellen die zijn geïmplementeerd als een serverloze API
Jamba-familiemodellen accepteren beide API's:
- De Azure AI-modeldeductie-API op de route
/chat/completions
voor chat met meerdere rollen of het beantwoorden van vragen met één beurt. Deze API wordt ondersteund omdat Jamba-familiemodellen zijn afgestemd op het voltooien van chats. - De Azure-client van AI21. Ga naar de REST-documentatie van AI21 voor meer informatie over het REST-eindpunt dat wordt aangeroepen.
Azure AI-modeldeductie-API
Het API-schema voor deductie-API voor Azure AI-modellen vindt u in de naslaginformatie voor chatvoltooiingen en er kan een OpenAPI-specificatie worden verkregen van het eindpunt zelf.
Chat met één beurt en meerdere beurten hebben dezelfde aanvraag- en antwoordindeling, behalve dat het beantwoorden van vragen (één beurt) slechts één gebruikersbericht in de aanvraag omvat, terwijl voor meerdere chats de volledige geschiedenis van het chatbericht in elke aanvraag moet worden verzonden.
In een chat met meerdere functies heeft de berichtenthread de volgende kenmerken:
- Bevat alle berichten van de gebruiker en het model, geordend van oud naar nieuw.
- Berichten wisselen tussen
user
berichten enassistant
rolberichten - Desgewenst begint de berichtthread met een systeembericht om context te bieden.
De volgende pseudocode is een voorbeeld van de berichtenstack voor de vierde oproep in een chataanvraag die een eerste systeembericht bevat.
[
{"role": "system", "message": "Some contextual information here"},
{"role": "user", "message": "User message 1"},
{"role": "assistant", "message": "System response 1"},
{"role": "user", "message": "User message 2"},
{"role": "assistant"; "message": "System response 2"},
{"role": "user", "message": "User message 3"},
{"role": "assistant", "message": "System response 3"},
{"role": "user", "message": "User message 4"}
]
Azure-client van AI21
Gebruik de methode POST
om de aanvraag naar de /v1/chat/completions
route te verzenden:
Aanvragen
POST /v1/chat/completions HTTP/1.1
Host: <DEPLOYMENT_URI>
Authorization: Bearer <TOKEN>
Content-type: application/json
Aanvraagschema
Payload is een tekenreeks met JSON-indeling die de volgende parameters bevat:
Sleutel | Type | Vereist/standaard | Toegestane waarden | Beschrijving |
---|---|---|---|---|
model |
string |
J | Moet of jamba-1.5-large jamba-1.5-mini jamba-instruct |
|
messages |
list[object] |
J | Een lijst met objecten, één per bericht, van oud naar nieuw. Het oudste bericht kan een rol system zijn. Alle latere berichten moeten wisselen tussen gebruikers- en assistentrollen. Zie de definitie van het berichtobject hieronder. |
|
max_tokens |
integer |
N 4096 |
0 – 4096 | Het maximum aantal tokens dat voor elk gegenereerd antwoordbericht is toegestaan. Normaal gesproken is de beste manier om de uitvoerlengte te beperken door een lengtelimiet op te geven in de systeemprompt (bijvoorbeeld 'beperk uw antwoorden tot drie zinnen') |
temperature |
float |
N 1 |
0.0 – 2.0 | Hoeveel variatie u in elk antwoord moet opgeven. Als u deze waarde instelt op 0, wordt elke keer hetzelfde antwoord op dezelfde vraag gegarandeerd. Het instellen van een hogere waarde moedigt meer variatie aan. Hiermee wijzigt u de distributie van waaruit tokens worden bemonsterd. We raden u aan dit te wijzigen of top_p , maar niet beide. |
top_p |
float |
N 1 |
0 <waarde<=1,0 | Beperk de pool van volgende tokens in elke stap tot het bovenste N percentiel van mogelijke tokens, waarbij 1,0 de pool van alle mogelijke tokens betekent, en 0,01 betekent de pool van alleen de meest waarschijnlijke volgende tokens. |
stop |
string OF list[string] |
N |
"" | Tekenreeks of lijst met tekenreeksen met de woorden waarin de API moet stoppen met het genereren van uitvoer. Nieuwe regels zijn toegestaan als \n. De geretourneerde tekst bevat de stopvolgorde niet. |
n |
integer |
N 1 |
1 – 16 | Hoeveel antwoorden er moeten worden gegenereerd voor elke prompt. Met azure AI Studio's Playground n=1 werken we aan een speeltuin met meerdere antwoorden. |
stream |
boolean |
N False |
True OF False |
Of streaming moet worden ingeschakeld. Indien waar, worden resultaten één token tegelijk geretourneerd. Als deze optie is ingesteld op true, n moet dit 1 zijn. Deze wordt automatisch ingesteld. |
tools |
array[tool] |
N | "" | Een lijst met tools het model kan aanroepen. Op dit moment worden alleen functies ondersteund als hulpprogramma. Gebruik dit om een lijst met functies op te geven waarvoor het model JSON-invoer kan genereren. Maximaal 128 functies worden ondersteund. |
response_format |
object |
N null |
"" | Instelling voor { "type": "json_object" } het inschakelen van de JSON-modus, wat garandeert dat het bericht dat het model genereert geldige JSON is. |
documents |
array[document] |
N | "" | Een lijst met relevante gegevens documents van het model kan de reacties ervan onder de grond vinden als de gebruiker dit expliciet in de prompt zegt. Fungeert in wezen als een extensie voor de prompt, met de mogelijkheid om metagegevens toe te voegen. elk document is een woordenlijst. |
Het messages
object heeft de volgende velden:
role
: [tekenreeks, vereist] De auteur of het doel van het bericht. Een van de volgende waarden:user
: Invoer van de gebruiker. Instructies die hier worden gegeven die conflicteren met instructies die in desystem
prompt worden gegeven, hebben voorrang op desystem
promptinstructies.assistant
: Een antwoord dat door het model wordt gegenereerd.system
: Eerste instructies om algemene richtlijnen te geven over de toon en stem van het gegenereerde bericht. Een eerste systeembericht is optioneel, maar wordt aanbevolen om richtlijnen te bieden voor de toon van de chat. Bijvoorbeeld: "Je bent een handige chatbot met een achtergrond in aardwetenschappen en een charmant Frans accent."
content
: [tekenreeks, vereist] De inhoud van het bericht.
Het tool
object heeft de volgende velden:
type
(vereist; str) - Het type gereedschap. Op dit moment wordt alleen 'functie' ondersteund.function
(vereist; object) - De functiedetails.name
(vereist; str) - De naam van de functie die moet worden aangeroepen.description
(optioneel; str) - Een beschrijving van wat de functie doet.parameters
(optioneel; object): de parameters die de functie accepteert, zoals beschreven als een JSON-schemaobject.
Het document
object heeft de volgende velden:
id
(optioneel; str) - unieke id. wordt gekoppeld aan bronvermeldingen. maximaal 128 tekens.content
(vereist; str) - de inhoud van het documentmetadata
(optioneel; matrix van Metagegevens)key
(vereist; str) - type metagegevens, zoals 'auteur', 'datum', 'URL', enzovoort. Het model moet dingen zijn die het model begrijpt.value
(vereist; str) - waarde van de metagegevens
Aanvraagvoorbeeld
Voorbeeld van één beurt Jamba 1.5 groot en Jamba 1.5 mini
{
"model":"jamba-1.5-large", <jamba-1.5-large|jamba-1.5-mini>
"messages":[
{
"role":"user",
"content":"I need help with your product. Can you please assist?"
}
],
"temperature":1,
"top_p":1,
"n":1,
"stop":"\n",
"stream":false
}
Voorbeeld van één beurt Jamba 1.5 groot en Jamba 1.5 mini met documenten
{
"model":"jamba-1.5-large", <jamba-1.5-large|jamba-1.5-mini>
"messages":[
{
"role":"system",
"content":'''<documents>
# Documents
You can use the following documents for reference:
## Document ID: 0
Text: Harry Potter is a series of seven fantasy novels written by British author J. K. Rowling.
## Document ID: 1
Text: The Great Gatsby is a novel by American writer F. Scott Fitzgerald.
</documents>'''},
{
"role":"user",
"content":"Who wrote Harry Potter?"
}
],
"temperature":0.4,
"top_p":1,
"n":1,
"stop":"\n",
"stream":false
}
Chatvoorbeeld (vierde aanvraag met antwoord van derde gebruiker)
{
"model": "jamba-instruct",
"messages": [
{"role": "system",
"content": "You are a helpful genie just released from a bottle. You start the conversation with 'Thank you for freeing me! I grant you one wish.'"},
{"role":"user",
"content":"I want a new car"},
{"role":"assistant",
"content":"🚗 Great choice, I can definitely help you with that! Before I grant your wish, can you tell me what kind of car you're looking for?"},
{"role":"user",
"content":"A corvette"},
{"role":"assistant",
"content":"Great choice! What color and year?"},
{"role":"user",
"content":"1963 black split window Corvette"}
],
"n":3
}
Antwoordschema
Het antwoord is enigszins afhankelijk van of het resultaat al dan niet wordt gestreamd.
In een niet-gestreamd resultaat worden alle antwoorden samengebracht in één antwoord, dat ook een usage
eigenschap bevat.
In een gestreamd resultaat,
- Elk antwoord bevat één token in het
choices
veld. - De
choices
objectstructuur is anders. - Alleen het laatste antwoord bevat een
usage
object. - Het volledige antwoord wordt verpakt in een
data
object. - Het uiteindelijke antwoordobject is
data: [DONE]
.
De nettolading van het antwoord is een woordenlijst met de volgende velden.
Sleutel | Type | Description |
---|---|---|
id |
string |
Een unieke id voor de aanvraag. |
model |
string |
De naam van het gebruikte model. |
choices |
list[object ] |
De door het model gegenereerde antwoordtekst. Voor een niet-streaming-antwoord is het een lijst met n items. Voor een streaming-antwoord is het één object met één token. Zie de objectbeschrijving hieronder. |
usage |
object |
Gebruiksstatistieken voor de voltooiingsaanvraag. Kijk hieronder voor de details. |
Het choices
antwoordobject bevat het door het model gegenereerde antwoord. Het object heeft de volgende velden:
Sleutel | Type | Description |
---|---|---|
index |
integer |
Op nul gebaseerde index van het bericht in de lijst met berichten. Komt mogelijk niet overeen met de positie in de lijst. Voor gestreamde berichten is dit altijd nul. |
message OF delta |
object |
Het gegenereerde bericht (of token in een streaming-antwoord). Hetzelfde objecttype zoals beschreven in de aanvraag met twee wijzigingen: - In een niet-streaming-antwoord wordt dit object aangeroepen message . - In een streaming-antwoord wordt het aangeroepen delta en bevat message het een of beide, maar role nooit beide. |
finish_reason |
string |
De reden waarom het model geen tokens meer genereert: - stop : Het model heeft een natuurlijk stoppunt bereikt of een opgegeven stopreeks. - length : Het maximum aantal tokens is bereikt. - content_filter : Het gegenereerde antwoord heeft een verantwoord AI-beleid geschonden. - null : alleen streaming. In een streaming-antwoord zijn alle antwoorden behalve de laatste.null |
Het message
antwoordobject bevat het door het model gegenereerde antwoord. Het object heeft de volgende velden:
Sleutel | Type | Description |
---|---|---|
role |
string |
De rol van de auteur van dit bericht. |
content |
string or null |
De inhoud van het bericht. |
tool_calls |
array or null |
De hulpprogramma-aanroepen die door het model worden gegenereerd. |
Het tool_calls
antwoordobject bevat het door het model gegenereerde antwoord. Het object heeft de volgende velden:
Sleutel | Type | Description |
---|---|---|
id |
string |
De id van de aanroep van het hulpprogramma. |
type |
string |
Het type hulpprogramma. Momenteel wordt alleen function ondersteund. |
function |
object |
De functie die het model heeft aangeroepen. |
Het function
antwoordobject bevat het door het model gegenereerde antwoord. Het object heeft de volgende velden:
Sleutel | Type | Description |
---|---|---|
name |
string |
De naam van de functie die moet worden aangeroepen. |
arguments |
string |
De argumenten waarmee de functie moet worden aangeroepen, zoals gegenereerd door het model in JSON-indeling. |
Het usage
antwoordobject bevat de volgende velden.
Sleutel | Type | Weergegeven als |
---|---|---|
prompt_tokens |
integer |
Aantal tokens in de prompt. Het aantal prompttoken bevat extra tokens die door het systeem zijn toegevoegd om de promptlijst op te maken in één tekenreeks, zoals vereist voor het model. Het aantal extra tokens is doorgaans evenredig met het aantal berichten in de thread en moet relatief klein zijn. |
completion_tokens |
integer |
Het aantal tokens dat is gegenereerd tijdens de voltooiing. |
total_tokens |
integer |
Totaal aantal tokens. |
Voorbeeld van niet-streaming-antwoord
{
"id":"cmpl-524c73beb8714d878e18c3b5abd09f2a",
"choices":[
{
"index":0,
"message":{
"role":"assistant",
"content":"The human nose can detect over 1 trillion different scents, making it one of the most sensitive smell organs in the animal kingdom."
},
"finishReason":"stop"
}
],
"created": 1717487036,
"usage":{
"promptTokens":116,
"completionTokens":30,
"totalTokens":146
}
}
Voorbeeld van streaming-antwoord
data: {"id": "cmpl-8e8b2f6556f94714b0cd5cfe3eeb45fc", "choices": [{"index": 0, "delta": {"role": "assistant"}, "created": 1717487336, "finish_reason": null}]}
data: {"id": "cmpl-8e8b2f6556f94714b0cd5cfe3eeb45fc", "choices": [{"index": 0, "delta": {"content": ""}, "created": 1717487336, "finish_reason": null}]}
data: {"id": "cmpl-8e8b2f6556f94714b0cd5cfe3eeb45fc", "choices": [{"index": 0, "delta": {"content": " The"}, "created": 1717487336, "finish_reason": null}]}
data: {"id": "cmpl-8e8b2f6556f94714b0cd5cfe3eeb45fc", "choices": [{"index": 0, "delta": {"content": " first e"}, "created": 1717487336, "finish_reason": null}]}
data: {"id": "cmpl-8e8b2f6556f94714b0cd5cfe3eeb45fc", "choices": [{"index": 0, "delta": {"content": "mpe"}, "created": 1717487336, "finish_reason": null}]}
... 115 responses omitted for sanity ...
data: {"id": "cmpl-8e8b2f6556f94714b0cd5cfe3eeb45fc", "choices": [{"index": 0, "delta": {"content": "me"}, "created": 1717487336, "finish_reason": null}]}
data: {"id": "cmpl-8e8b2f6556f94714b0cd5cfe3eeb45fc", "choices": [{"index": 0, "delta": {"content": "."}, "created": 1717487336,"finish_reason": "stop"}], "usage": {"prompt_tokens": 107, "completion_tokens": 121, "total_tokens": 228}}
data: [DONE]
Kosten en quota
Kosten- en quotumoverwegingen voor Jamba-familiemodellen die zijn geïmplementeerd als een serverloze API
De Jamba-familiemodellen worden geïmplementeerd als een serverloze API en worden aangeboden door AI21 via Azure Marketplace en geïntegreerd met Azure AI Studio voor gebruik. U krijgt prijzen voor Azure Marketplace bij het implementeren of verfijnen van modellen.
Telkens wanneer een werkruimte zich abonneert op een bepaald modelaanbod vanuit Azure Marketplace, wordt er een nieuwe resource gemaakt om de kosten te traceren die zijn gekoppeld aan het verbruik. Dezelfde resource wordt gebruikt om de kosten te traceren die zijn gekoppeld aan deductie en verfijning; er zijn echter meerdere meters beschikbaar om elk scenario onafhankelijk te traceren.
Zie Monitoring van kosten voor modellen die worden aangeboden via Azure Marketplace voor meer informatie over het traceren van kosten.
Het quotum wordt beheerd per implementatie. Elke implementatie heeft een frequentielimiet van 200.000 tokens per minuut en 1000 API-aanvragen per minuut. Momenteel beperken we echter tot één implementatie per model per project. Neem contact op met de ondersteuning voor Microsoft Azure als de huidige frequentielimieten niet voldoende zijn voor uw scenario's.
Inhoud filteren
Modellen die zijn geïmplementeerd als een serverloze API, worden beveiligd door azure AI-inhoudsveiligheid. Als de veiligheid van Azure AI-inhoud is ingeschakeld, passeren zowel de prompt als de voltooiing een ensemble van classificatiemodellen die zijn gericht op het detecteren en voorkomen van de uitvoer van schadelijke inhoud. Het systeem voor inhoudsfiltering (preview) detecteert en onderneemt actie op specifieke categorieën van mogelijk schadelijke inhoud in invoerprompts en uitvoervoltooiingen. Meer informatie over Azure AI Content Safety.