mallit

Meta: Llama Guard 4 12B

Markdown · JSON

Meta: Llama Guard 4 12B

Llama Guard 4 12B on Metan multimodaalinen sisältöluokitin kehotteille ja tuotetuille vastauksille. Se analysoi tekstiä yhdessä yhden tai useamman kuvan kanssa ja palauttaa safe/unsafe-merkinnän sekä sovellettavat haittakategoriat käyttäen Llama 4 Scoutista karsittua tiheää arkkitehtuuria.

Tietoa mallista

Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.

Llama Guard 4 12B on Metan rakenteeltaan multimodaalinen turvallisuusluokitin, jossa on 12 miljardia parametria. Se on koulutettu yhdessä tekstillä ja useilla kuvilla, ja se tuottaa tekstimuotoisen luokituksen: safe tai unsafe sekä rikotut haittakategoriat, kun tulos on unsafe. Sen tarkoitus on arvioida kehotteen tai tuotetun vastauksen sisältöä yleisenä keskusteluavustajana toimimisen sijaan.

Kehotteen ja vastauksen luokittelu

Malli voi luokitella aineiston ennen sen lähettämistä generatiiviselle mallille, kyseisen mallin tuotettua vastauksen tai molemmissa kohdissa. Nämä ovat eri kysymyksiä. Kehotteen luokittelu arvioi käyttäjän syötteen, kun taas vastauksen luokittelu arvioi, mitä avustaja todella kirjoitti. Järjestelmä voi siis erottaa riskialttiin pyynnön vastauksesta, joka käsittelee pyynnön luokittimen taksonomian mukaan hyväksyttävästi.

Anna täsmällinen luokiteltava sisältö sekä keskusteluroolit ja olennainen konteksti. Jos kohteena on vastaus, säilytä kysymys, joka antaa vastaukselle merkityksen. Sisällytä yhdistettyyn teksti- ja kuvasyötteeseen kyseiseen kehotteeseen liittyvät kuvat sen sijaan, että luokittelisit asiaankuulumatonta tekstiä tai yhden satunnaisesti valitun kuvan. Luokittimen tulos on tietoa sovelluksen sääntö- tai tarkastusvaiheelle; se ei itsessään estä pyyntöä tai muuta tiedostoa.

Neljätoista haittakategoriaa

Valmistaja sovittaa luokittimen MLCommons-haittataksonomiaan ja lisää vain tekstiä koskevan kooditulkki-kategorian. Neljätoista merkintää kattavat väkivaltarikokset, väkivallattomat rikokset, seksuaalirikokset, lasten seksuaalisen hyväksikäytön, kunnianloukkauksen, erityisalan neuvonnan, yksityisyyden, immateriaalioikeudet, erottelemattomasti vaikuttavat aseet, vihan, itsemurhan ja itsensä vahingoittamisen, seksuaalisen sisällön, vaalit ja kooditulkin väärinkäytön.

Kategoriat käyttävät tunnisteita S1–S14. S14, Code Interpreter Abuse, koskee nimenomaan pelkän tekstin työkalukutsukäyttöä. Säilytä taksonomiatunniste safe/unsafe-tuloksen yhteydessä, jotta myöhempi sovellusvaihe voi tulkita luokituksen samojen kategoriamääritelmien mukaan. Lyhyt tulos on kategoriaratkaisu, ei täydellinen selitys, oikeudellinen ratkaisu tai takuu jokaisen mahdollisen haitan havaitsemisesta.

Havainnollistavassa muodossa unsafe-luokitusta voi seurata sovellettava kategoriatunniste. Säilytä alkuperäinen arvioitu teksti, sen lähde tai sijainti keskustelussa ja palautetut merkinnät yhdessä. Tämä yhteys antaa sovellukselle mahdollisuuden erottaa tarkastettu sisältö myöhemmin uudelleenkirjoitetusta vastauksesta tai erillisestä kehotteesta.

Arkkitehtuuri ja koulutus

Llama Guard 4:n tiheä Transformer-arkkitehtuuri yhdistää modaliteetit varhaisessa vaiheessa, ja se on karsittu esikoulutetusta Llama 4 Scout -tarkistuspisteestä. Valmistaja poistaa reititetyt asiantuntijat ja reititinkerrokset, säilyttää jaetun tiheän asiantuntijan ja jälkikouluttaa syntyneen mallin sisällön luokitteluun. Se ei tee lisäesikoulutusta tämän karsintavaiheen jälkeen. Näin syntyy eri malli kuin Scoutin mixture-of-experts-keskusteluversio.

Malli jakaa Llama 4:n tokenisoijan ja näköenkooderin ja yhdistää pelkän tekstin sekä multimodaalisen luokittelukoulutuksen. Valmistaja kuvaa monikielistä aineistoa ja usean kuvan koulutusta, jossa useimmat tällaiset näytteet sisältävät kahdesta viiteen kuvaa ja pelkän tekstin sekä multimodaalisen aineiston sekoitussuhde on noin kolme yhteen. Nämä ovat koulutuksen ominaisuuksia, eivät kovia syötteen lukumäärärajoja.

Dokumentoitu monikielinen laajuus seuraa Llama Guard 3:n tukemia kieliä, ja kortti käsittelee englannin lisäksi ranskaa, saksaa, hindiä, italiaa, portugalia, espanjaa ja thaita. Luokittelupyynnön tulee säilyttää arvioitavan kielen todellinen sanamuoto ja visuaalinen konteksti sen sijaan, että sisältö korvattaisiin asiaankuulumattomalla yhteenvedolla.

Hyödyllisen luokittelutuloksen valmistelu

Anna syötetarkastusta varten käyttäjän viesti ja siihen liittyvät kuvat ja pyydä kehotteen luokitusta valmistajan muodossa. Anna tulostarkastusta varten avustajan todellinen vastaus ja olennainen aiempi viesti. Usean kuvan esimerkissä voi säilyttää kuvia yhdistävän tekstin, jotta malli arvioi yhdistetyn pyynnön irrallisten, kontekstittomien katkelmien sijaan.

Mallikortti havainnollistaa vastaavan keskustelumallipohjan soveltamista ja vain tuotetun luokituksen dekoodaamista. Sen kymmenen tokenin generointiesimerkki havainnollistaa lyhyttä merkintätulosta; tämä luku ei ole erillinen vastauksen enimmäiskapasiteetti. Pidä pyydetty tuloste luokittimen tarkoituksen mukaisena sen sijaan, että pyytäisit siltä tavallista keskusteluvastausta.

Erityiset rajoitukset

Valmistaja toteaa, että mallin koulutusaineisto, arkijärki, kielikattavuus ja käytäntökattavuus voivat rajoittaa arvioita. Kunnianloukkausta, immateriaalioikeuksia ja vaaleja koskevat kategoriat voivat edellyttää ajantasaista faktatietoa, jota luokittimella ei välttämättä ole. Kategoriamerkinnän tulee siksi säilyttää yhteys sisältöön ja kyseisessä arvioinnissa saatavilla olleisiin tietoihin.

Kortti kertoo testauksesta pääasiassa muutaman kuvan, useimmiten kolmen kuvan, kehotteilla ja huomauttaa, että toiminta voi vaihdella huomattavasti suuremmalla kuvajoukolla. Tämä kuvaa testattua laajuutta eikä yleispätevää kolmen kuvan enimmäismäärää. Malli voi myös olla altis vastustavalle tai kehoteinjektiosisällölle, joka muuttaa sen tarkoitettua toimintaa.

Llama Guard 4:n luokitinroolin ei tule periä Scoutin kontekstimääritystä tai yleisiä avustajakykyjä vain siksi, että se on karsittu Scoutista. Luettu kortti ei anna tälle luokittimelle erillistä kovaa konteksti- tai tulostokenikapasiteettia. Säilytä arvioitu aineisto ja taksonomiamerkinnät käytännön tuotoksena ja anna sovelluksen päättää tulokseen liitettävä toimenpide.

Käytännön tehtävä

Käytännön tehtävä

Tekninen esimerkki englanniksi

Classify a benign library prompt

Classify this user prompt using Llama Guard 4's prompt-safety taxonomy: 'Summarize the public library opening hours from the notice I pasted, and list any days when it is closed.' Evaluate the quoted prompt itself, not an imagined answer. Return the documented safe or unsafe classification; include S1-S14 hazard identifiers only if applicable.

Odotettu tulos

The documented safe/unsafe label, with applicable S1-S14 identifiers only for an unsafe result.

Tarkista tulos

Check the output uses only the documented classifier labels and does not answer the library-hours question.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions meta-llama/llama-guard-4-12b

meta-llama/llama-guard-4-12b

Meta /meta-llama/llama-guard-4-12b

Aloitus

Llama Guard 4 12B on Metan multimodaalinen sisältöluokitin kehotteille ja tuotetuille vastauksille. Se analysoi tekstiä yhdessä yhden tai useamman kuvan kanssa ja palauttaa safe/unsafe-merkinnän sekä sovellettavat haittakategoriat käyttäen Llama 4 Scoutista karsittua tiheää arkkitehtuuria.

Hyväksytyt syötteet
Teksti
Tulokset
Teksti

Saatavilla Ailootissa · syötteet & menetelmät

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
Syötetyypit
text
Tulostyypit
text
Tulosteen muoto
json tai SSE
KenttäTyyppiVaatimusArvot & rajatOletus
KenttämodelTyyppistringVaatimusPakollinenArvot & rajat
meta-llama/llama-guard-4-12b
Oletus—
KenttämessagesTyyppimessage[]VaatimusPakollinenArvot & rajat
Kohteiden vähimmäismäärä: 1
Oletus—
Kenttämessages[].roleTyyppistringVaatimusPakollinenArvot & rajat
Esimerkit: system, user, assistant, tool, function
Ehdot: Nämä roolit esitetään nimenomaisesti lähdekoodin yhteensopivuustyypeissä; mallin täsmällinen roolijoukko pysyy mallikohtaisena.
Riippuu mallista
Oletus—
Kenttämessages[].contentTyyppistring|content_part[]|nullVaatimusValinnainenArvot & rajatOletus—
Kenttämessages[].tool_callsTyyppitool_call[]VaatimusValinnainenArvot & rajatOletus—
Kenttämessages[].tool_call_idTyyppistringVaatimusValinnainenArvot & rajat
Sovelletaan, kun: role=tool; käytä todella palautettua ID:tä
Oletus—
Kenttämessages[].nameTyyppistringVaatimusValinnainenArvot & rajatOletus—
Kenttämessages[].reasoning_contentTyyppistringVaatimusValinnainenArvot & rajat
Sovelletaan, kun: Palauta todella saatu päättely takaisin mallille, kun kyseinen malli käyttää sitä
Oletus—
Kenttämessages[].reasoning_detailsTyyppiobject|arrayVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
Kenttämax_tokensTyyppiintegerVaatimusValinnainenArvot & rajat
Vähimmäismäärä: 1
Riippuu mallista
Oletus—
Kenttämax_completion_tokensTyyppiintegerVaatimusValinnainenArvot & rajat
Vähimmäismäärä: 1
Riippuu mallista
Oletus—
KenttästreamTyyppibooleanVaatimusValinnainenArvot & rajatOletusfalse
Kenttästream_options.include_usageTyyppibooleanVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
KenttätemperatureTyyppinumberVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
Kenttätop_pTyyppinumberVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
KenttästopTyyppistring|string[]VaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
KenttätoolsTyyppifunction_tool[]VaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
Kenttätools[].typeTyyppistringVaatimusValinnainenArvot & rajat
function
Riippuu mallista
Oletus—
Kenttätools[].function.nameTyyppistringVaatimusPakollinenArvot & rajat
Sovelletaan, kun: funktiotyökalu annettu
Oletus—
Kenttätools[].function.descriptionTyyppistringVaatimusValinnainenArvot & rajatOletus—
Kenttätools[].function.parametersTyyppiJSON_schemaVaatimusValinnainenArvot & rajatOletus—
Kenttätool_choiceTyyppistring|objectVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
Kenttäparallel_tool_callsTyyppibooleanVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
Kenttäresponse_formatTyyppiobjectVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
Kenttäreasoning_effortTyyppistringVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
KenttäreasoningTyyppiobjectVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
Kenttäservice_tierTyyppistringVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
KenttäinstructionsTyyppistringVaatimusValinnainenArvot & rajat
Yhteensopivuuskenttä
Oletus—
KenttäfunctionsTyyppifunction[]VaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
Kenttäfunction_callTyyppistring|objectVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
Kenttäprompt_cache_optionsTyyppiobjectVaatimusValinnainenArvot & rajat
Riippuu mallista
Oletus—
KenttämodalitiesTyyppistring[]VaatimusValinnainenArvot & rajat
text
Oletus—
KenttäproviderTyyppiobjectVaatimusValinnainenArvot & rajat
Ehdot: provider.options hylätään tällä Ultran tekstireitillä
Oletus—
Kenttäcache_control.ttlTyyppistringVaatimusValinnainenArvot & rajat
Ehdot: 1h hylätään varsinaisissa kehotevälimuistin kohdissa
Oletus—
Syöteaineistojen yhdistelmät

Teksti · UTF8-teksti

messages[].content

Menetelmän parametrit ja elinkaari
ParametriSopimus
Parametricontent_typeSopimusapplication/json
ParametrirequiredSopimusmodel, messages
Parametrimaterial_typesSopimustext
ParametrimessagesSopimusviestitaulukko role/content-rakenteella
Parametrifile_materialSopimusvarsinainen UTF-8-asiakirja lisätään sellaisenaan tekstinä; tiedoston ID:tä ei päätellä
Parametrioptional_controlsSopimusstream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
Parametricontrol_scopeSopimusmallikohtainen; käyttäjän funktiotyökalut eroavat palvelun isännöimistä työkaluista
Parametrioutput_modalitiesSopimustext
Parametrihosted_operationsSopimusfalse
Parametrimultimodal_input_bindingSopimusnull

Elinkaari: synchronous_or_streamed

Lähetä mallin täsmällinen ID yhdessä messages-kentän kanssa.

Kontekstin pituus ei ole tuloksen yläraja.

Tekstitiedosto voi antaa tekstiä sellaisenaan; kuva-, ääni- ja tiedosto-objektisyötteet tarvitsevat täsmällisen sidonnan.

Hinnoittelu

Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.

Nopea tila
Vakiohinta Kun nopea tila on valittu
Flex-tila
Vakiohinta Kun flex-tila on valittu
Päättelyn enimmäisteho
Vakiohinta Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä

Ailoot-hinnat

Hinnat asetusten mukaan

Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.

AsetuksetHinnastoKontekstin tokenit, enemmän kuinKontekstin tokenit, enintään raja-arvo mukaan lukienVeloitus
AsetuksetTokenien perushinnatHinnastoPerushintaKontekstin tokenit, enemmän kuin—Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaaVeloitus
Syöte · Syötetokenit $0.00036 / 1K tokenia
Tuloste · Tulostokenit $0.00036 / 1K tokenia
Syöte · Välimuistin luku — / 1K tokenia
Syöte · Välimuistiin kirjoitus — / 1K tokenia
Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia
AsetuksetPyynnön pituusluokka 1Hinnasto—Kontekstin tokenit, enemmän kuin0Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaaVeloitus
Syöte · Syötetokenit $0.00036 / 1K tokenia
Tuloste · Tulostokenit $0.00036 / 1K tokenia
Syöte · Välimuistin luku — / 1K tokenia
Syöte · Välimuistiin kirjoitus — / 1K tokenia
Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia

Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →

Esimerkkipyynnöt

Ailoot Ultra · OpenAI Chat

curlPython SDKPython-suoratoisto
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "meta-llama/llama-guard-4-12b", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='meta-llama/llama-guard-4-12b',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
from openai import OpenAI
import os
from pathlib import Path

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

with client.chat.completions.stream(model='meta-llama/llama-guard-4-12b',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")

Vastaanota ja tallenna tulokset

Ailoot Ultra · OpenAI Chat

json tai SSE

Säilytä kaikki valmistuneet tulokset

Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.

Säilytä jokainen vastausvaihtoehto sisältöineen, työkalukutsuineen ja päättelyineen. Kokoa SSE:ssä muutokset vastausvaihtoehdon ja työkalun indeksin mukaan ja säilytä lopullinen päättymissyy sekä käyttötiedot.

Jos alkuperäinen vastaus on tarkistettava

Säilytä pyyntöjen/vastausten ID:t ja otsakkeet. Yleistä tekstityön haku-URL:ää ei anneta.

Vastauksen kentät
KenttäTyyppi
Kenttächoices[].indexTyyppiinteger
Kenttächoices[].message.contentTyyppistring|null
Kenttächoices[].message.tool_callsTyyppitool_call[]
Kenttächoices[].message.reasoning_contentTyyppistring
Kenttächoices[].message.reasoning_detailsTyyppiobject|array
Kenttächoices[].finish_reasonTyyppistring|null
KenttäusageTyyppiobject
Virheet ja seuraavat vaiheet
VastausEhtoSeuraava vaihe
Vastaus400 · invalid_request_errorEhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvoSeuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä.

Aliakset

Mallin aliakset

Ailoot Ultra meta-llama/llama-guard-4-12b

Menetelmäpolkujen aliakset

Käytä yllä näytettyjä menetelmäpolkuja.

Liittyvät kutsujan ID:t

meta-llama/llama-guard-4-12b

Ailoot Ultra · Anthropic Messages POST /v1/messages meta-llama/llama-guard-4-12b

meta-llama/llama-guard-4-12b

Meta /meta-llama/llama-guard-4-12b

Aloitus

Llama Guard 4 12B on Metan multimodaalinen sisältöluokitin kehotteille ja tuotetuille vastauksille. Se analysoi tekstiä yhdessä yhden tai useamman kuvan kanssa ja palauttaa safe/unsafe-merkinnän sekä sovellettavat haittakategoriat käyttäen Llama 4 Scoutista karsittua tiheää arkkitehtuuria.

Hyväksytyt syötteet
Teksti
Tulokset
json · sse

Saatavilla Ailootissa · syötteet & menetelmät

Ailoot Ultra · Anthropic Messages POST /v1/messages
Syötetyypit
text
Tulostyypit
json, sse
Tulosteen muoto
JSON tai SSE
KenttäTyyppiVaatimusArvot & rajatOletus
KenttämodelTyyppistringVaatimusPakollinenArvot & rajat
meta-llama/llama-guard-4-12b
Oletus—
KenttämessagesTyyppimessage[]VaatimusPakollinenArvot & rajatOletus—
Kenttämessages[].roleTyyppistringVaatimusPakollinenArvot & rajat
user, assistant
Oletus—
Kenttämessages[].contentTyyppistringVaatimusPakollinenArvot & rajatOletus—
Kenttämax_tokensTyyppiintegerVaatimusPakollinenArvot & rajatOletus—
KenttästreamTyyppibooleanVaatimusValinnainenArvot & rajatOletusfalse
Syöteaineistojen yhdistelmät

Teksti · UTF-8-teksti

messages[].content-merkkijono

Menetelmän parametrit ja elinkaari
ParametriSopimus
Parametricontent_typeSopimusapplication/json
ParametrirequiredSopimusmodel, messages, max_tokens
Parametrioptional_controlsSopimusstream
Parametrimaterial_typesSopimustext
Parametritext_file_materialSopimusLue varsinainen UTF-8-asiakirja ja sijoita sen teksti ilmoitettuun syöte- tai viestisisällön merkkijonoon.

Elinkaari: synchronous_or_streamed

Hinnoittelu

Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.

Nopea tila
Vakiohinta Kun nopea tila on valittu
Flex-tila
Vakiohinta Kun flex-tila on valittu
Päättelyn enimmäisteho
Vakiohinta Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä

Ailoot-hinnat

Hinnat asetusten mukaan

Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.

AsetuksetHinnastoKontekstin tokenit, enemmän kuinKontekstin tokenit, enintään raja-arvo mukaan lukienVeloitus
AsetuksetTokenien perushinnatHinnastoPerushintaKontekstin tokenit, enemmän kuin—Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaaVeloitus
Syöte · Syötetokenit $0.00036 / 1K tokenia
Tuloste · Tulostokenit $0.00036 / 1K tokenia
Syöte · Välimuistin luku — / 1K tokenia
Syöte · Välimuistiin kirjoitus — / 1K tokenia
Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia
AsetuksetPyynnön pituusluokka 1Hinnasto—Kontekstin tokenit, enemmän kuin0Kontekstin tokenit, enintään raja-arvo mukaan lukienEi ylärajaaVeloitus
Syöte · Syötetokenit $0.00036 / 1K tokenia
Tuloste · Tulostokenit $0.00036 / 1K tokenia
Syöte · Välimuistin luku — / 1K tokenia
Syöte · Välimuistiin kirjoitus — / 1K tokenia
Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia

Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →

Esimerkkipyynnöt

Ailoot Ultra · Anthropic Messages

Täydellinen minimaalinen JSON-runkocurl · käytä omaa UTF-8-dokumenttiasiPython · tallenna koko tulos
{
  "model": "meta-llama/llama-guard-4-12b",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'meta-llama/llama-guard-4-12b', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'meta-llama/llama-guard-4-12b', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))

Vastaanota ja tallenna tulokset

Ailoot Ultra · Anthropic Messages

JSON tai SSE

Säilytä kaikki valmistuneet tulokset

Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.

Säilytä kaikki sisältölohkot, päättelyallekirjoitukset ja todelliset työkalukäytön ID:t. Kokoa kaikki SSE-lohkomuutokset; ensimmäinen tekstilohko ei ole koko tulos.

Jos alkuperäinen vastaus on tarkistettava

Säilytä pyyntöjen/vastausten ID:t ja otsakkeet. Yleistä tekstityön haku-URL:ää ei anneta.

Vastauksen kentät
KenttäTyyppi
KenttäidTyyppistring
KenttämodelTyyppistring
Kenttäcontent[]Tyyppitext|thinking|tool_use|other content block
Kenttästop_reasonTyyppistring|null
KenttäusageTyyppiobject
Virheet ja seuraavat vaiheet
VastausEhtoSeuraava vaihe
Vastaus400 · invalid_request_errorEhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvoSeuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä.

Aliakset

Mallin aliakset

Ailoot Ultra meta-llama/llama-guard-4-12b

Menetelmäpolkujen aliakset

Käytä yllä näytettyjä menetelmäpolkuja.

Liittyvät kutsujan ID:t

meta-llama/llama-guard-4-12b

FAQ · Meta: Llama Guard 4 12B
Mitä syötteitä ja tuloksia on saatavilla?

POST /v1/chat/completions · meta-llama/llama-guard-4-12b: text → text

POST /v1/messages · meta-llama/llama-guard-4-12b: text → json, sse

Mitä kenttiä pyyntö käyttää?

POST /v1/chat/completions · meta-llama/llama-guard-4-12b: model, messages, stream, modalities, provider

POST /v1/messages · meta-llama/llama-guard-4-12b: model, messages, max_tokens, stream

Mitä rajoja sovelletaan?

POST /v1/chat/completions · meta-llama/llama-guard-4-12b: messages.min_items: 1

Lisätietoja

Yhdistä Ailoot Claude Codeen, OpenCodeen, Hermesiin tai omaan sovellukseesi.

Yritys ja sen projektisalkku

Yritys ja sen projektisalkku: miljoonia asiakkaita; kuukausittainen myynti miljardiluokassa.

Osta tokenit alennuksella.

Tilausalennus säännölliseen käyttöön. Kampanjakoodit — jopa 50% tokeniostoista.

Tilaus
Valitse alennushintainen paketti säännöllisiä pyyntöjäsi varten.
Kampanjakoodi jopa 50%
Syötä koodi oston yhteydessä. Hinta lasketaan uudelleen voimassa olevan kampanjan mukaan.
Kulut historiassa
Malli, tokenit ja summa tallennetaan jokaiselle pyynnölle.

Valitse tilaus · Katso mallihinnat

Yhdistä API tuotteeseen, jonka myyt.

SaaS, sovellukset ja botit Ailootin palveluehtojen ja lisenssisopimuksen mukaisesti. Pyydä edelleenmyyntiin jälleenmyyjälisenssi.

Kaupallinen sovellus
Lisää tekstin, kuvien, videoiden ja äänen luonti palvelusi maksullisiin ominaisuuksiin.
Jälleenmyyjälisenssi
Lähetä projektikuvaus ja pääsyn toteutustapa. Pyydä kirjalliset käyttö- ja jälleenmyyntiehdot.
Asiakirjat verkkosivustolla
Palveluehdot, lisenssisopimus ja tietojenkäsittelykäytäntö ovat saatavilla ennen yhdistämistä.

Pyydä jälleenmyyjälisenssi · Palveluehdot ja lisenssisopimus