modeller

ScaleDown: Extract

Markdown · JSON

ScaleDown: Extract

Extract finder kalderbeskrevne entiteter i tekst, billeder og dokumentfiler. Definér felterne på almindeligt engelsk, og bevar derefter matchende tekstspænd, konfidensscorer, tegnpositioner og omgivende kontekst. Indbygget OCR understøtter scanninger og PDF'er med en offentliggjort kontekst på 1.000.000 tokens til dokumentforløb.

Om modellen

Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.

Extract er ScaleDowns beskrivelsesstyrede model til entitetsudtræk. Frem for at vælge fra ét fast sæt entitetstyper beskriver kalderen de oplysninger, der skal findes, på almindeligt engelsk. Modellen returnerer matchende tekstspænd med konfidens, tegnpositioner og omgivende kontekst, hvilket gør resultatet lettere at forbinde med kildematerialet.

Beskriv de felter, du har brug for

Navngiv hver ønsket entitet ud fra et konkret forretningsformål. Et fakturaforløb kan søge efter dokumentidentifikatorer, datoer og beløb, som de står skrevet. Et kontraktforløb kan søge efter navngivne parter, frister eller specificerede forpligtelser. Et e-mailforløb kan søge efter kontaktoplysninger eller en ønsket handling.

Beskriv et felts betydning frem for at stole på kortnavnet alene. Skeln mellem en udstedelsesdato og en betalingsfrist eller mellem en persons navn og en organisations navn. Når flere felter har lignende ordlyd, skal du give hvert felt en definition, der hjælper med at holde de returnerede matches separate.

Bevar matchet og dets belæg

Et nyttigt udtræksresultat bevarer kildetekstspændet sammen med dets positioner og omgivende tekst. Værdierne lader applikationen identificere, hvor et match kom fra, og lader en person undersøge belæggene uden at søge hele dokumentet igen. Bevar konfidensværdien sammen med matchet frem for at behandle alle returnerede tekstspænd som lige sikre.

Hvis et forløb kræver en normaliseret dato, et konverteret beløb eller en anden afledt værdi, skal du bevare den oprindelige tekst sammen med den senere transformation. Entitetsudtræk identificerer, hvad dokumentet siger; applikationen beslutter, hvilke normaliseringer og valideringsregler den anvender på de returnerede belæg.

Scanninger, dokumenter og lange input

Modellens offentliggjorte inputomfang omfatter tekst, billeder og filer såsom PDF'er med indbygget OCR til scannede dokumenter. Brug læsbart kildemateriale, og bevar dokument- og sideidentiteter, hvor de er vigtige for gennemgang. En dårlig scanning kan gøre et felt tvetydigt, så undersøg den returnerede kontekst, før en kritisk værdi accepteres.

Det offentliggjorte kontekstvindue er 1.000.000 tokens. Til et stort dokument eller en samling skal du holde de ønskede entitetsdefinitioner konsekvente og knytte hvert resultat til det materiale, det kom fra. Det samme definitionssæt kan hjælpe en applikation med at sammenligne udtrukne felter på tværs af kontrakter, fakturaer, beskeder eller transskriptioner.

Tekstoutput og efterfølgende validering

Den offentliggjorte outputmodalitet er tekst. Brug det omgivende udtræksforløb til at validere det maskinlæsbare postlayout, der kræves. Bevar den matchende tekst og kildekonteksten, før resultatet gemmes eller transformeres.

Et nyttigt slutprodukt indeholder det ønskede entitetsnavn, den matchende kildetekst, den relevante position eller kontekst og konfidensen til gennemgang. Hold uafklarede eller konkurrerende matches synlige frem for at opfinde et manglende felt. Det giver en belægsbaseret udtrækspost til efterfølgende kontroller og transformationer.

Funktioner

  • Entitetstyper beskrevet på almindeligt engelsk.
  • Matchende tekstspænd med konfidens, tegnpositioner og omgivende kontekst.
  • Indbygget OCR til scannede billeder og PDF’er.
  • Tekst-, billed- og filinput med offentliggjort kontekst på 1.000.000 tokens.
  • Tekstresultater egnede til belægsunderstøttet feltudtræk.

Brugsscenarier

  • Udtræk af fakturafelter — Fakturaer og definitioner af de identifikatorer, datoer eller beløb, der skal findes. Resultat: Matchende kildefelter med belæggene bevaret.
  • Forberedelse af kontraktgennemgang — Kontrakter og præcise definitioner af parter, datoer eller forpligtelser. Resultat: Udtrukne tekstspænd til senere juridisk eller operationel gennemgang.
  • Modtagelse af e-mail — Beskeder og de entiteter, forløbet kræver. Resultat: Kontakt- eller anmodningsposter knyttet til belæg.
  • Udtræk fra scannede dokumenter — Læsbare scanninger/PDF’er og stabile entitetsdefinitioner. Resultat: Matches med kildekontekst og konfidens til validering.

Begrænsninger

  • Kontekst — Offentliggjort kontekstvindue: 1.000.000 tokens.
  • Resultatbelæg — Bevar tekstspænd, positioner og omgivende kontekst, før senere normaliseringer anvendes.
  • Outputkontrakt — Det offentliggjorte output er tekst; skemahåndhævet JSON og funktionskald er ikke angivet til denne model.
  • Feltdefinitioner — Entitetsvalg styres af de angivne beskrivelser frem for én fast taksonomi.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions scaledown/extract

scaledown/extract

ScaleDown /scaledown/extract

Start

Extract finder kalderbeskrevne entiteter i tekst, billeder og dokumentfiler. Definér felterne på almindeligt engelsk, og bevar derefter matchende tekstspænd, konfidensscorer, tegnpositioner og omgivende kontekst. Indbygget OCR understøtter scanninger og PDF'er med en offentliggjort kontekst på 1.000.000 tokens til dokumentforløb.

Accepterede input
Tekst
Resultater
Tekst

Tilgængelig i Ailoot · input og metoder

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
Inputtyper
text
Outputtyper
text
Outputformat
json eller SSE
FeltTypeKravVærdier og grænserStandard
FeltmodelTypestringKravPåkrævetVærdier og grænser
scaledown/extract
Standard—
FeltmessagesTypemessage[]KravPåkrævetVærdier og grænser
Minimumsantal elementer: 1
Standard—
Feltmessages[].roleTypestringKravPåkrævetVærdier og grænser
Afhænger af modellen
Standard—
Feltmessages[].contentTypestringKravValgfritVærdier og grænser
Gælder når: Tekstsamtale
Standard—
FeltstreamTypebooleanKravValgfritVærdier og grænserStandardfalse
Kombinationer af inputmaterialer

Tekst · UTF8-tekst

messages[].content

Metodeparametre og livscyklus
ParameterKontrakt
Parametercontent_typeKontraktapplication/json
ParameterrequiredKontraktmodel, messages
Parametermaterial_typesKontrakttext
ParametermessagesKontraktbeskedarray med strukturen role/content
Parameterfile_materialKontraktfaktisk UTF-8-dokument indsat som bogstavelig tekst; intet fil-ID udledes
Parameteroptional_controlsKontraktstream
Parametercontrol_scopeKontraktTekstsamtale; stream er en boolesk værdi og er som standard false.
Parameteroutput_modalitiesKontrakttext
Parameterhosted_operationsKontraktfalse
Parametermultimodal_input_bindingKontraktnull

Metodealiaser: /chat/completions

Livscyklus: synchronous_or_streamed

Send det præcise model-ID med messages.

Kontekstlængde er ikke et outputloft.

En tekstfil kan levere bogstavelig tekst; billed-, lyd- og filobjektinput kræver en præcis binding.

Priser

Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.

Hurtig tilstand
Ikke angivet Når hurtig tilstand er valgt
flex-tilstand
Ikke angivet Når flex-tilstanden er valgt
Maksimal ræsonneringsindsats
Ikke angivet Når default-justeringen anvendes ved maksimal ræsonneringsindsats

Ailoot-takster

Priser efter konfiguration

Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.

KonfigurationTakstplanKonteksttokens, mere endKonteksttokens, op til og medBeløb
KonfigurationGrundtakster for tokensTakstplanGrundtakstKonteksttokens, mere end—Konteksttokens, op til og medIngen øvre grænseBeløb
Input · Inputtokens $0.0001 / 1K tokens
Output · Outputtokens $0 / 1K tokens
Input · Cachelæsning — / 1K tokens
Input · Cacheskrivning — / 1K tokens
Input · Cacheskrivning, 1 time — / 1K tokens
KonfigurationAnmodningslængde · niveau 1Takstplan—Konteksttokens, mere end0Konteksttokens, op til og medIngen øvre grænseBeløb
Input · Inputtokens $0.0001 / 1K tokens
Output · Outputtokens $0 / 1K tokens
Input · Cachelæsning — / 1K tokens
Input · Cacheskrivning — / 1K tokens
Input · Cacheskrivning, 1 time — / 1K tokens

Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →

Eksempelanmodninger

Ailoot Ultra · OpenAI Chat

curlPython SDK
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"scaledown/extract","messages":[{"role":"user","content":"hello"}],"stream":false}')

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="scaledown/extract", messages=[{"role":"user","content":"hello"}], stream=False)
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"))

Hent og gem resultater

Ailoot Ultra · OpenAI Chat

json eller SSE

Behold alle færdige resultater

Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.

Bevar hvert valg og dets indhold, værktøjskald og ræsonnement. Saml i SSE deltaer efter valg-/værktøjsindeks, og bevar den endelige afslutningsårsag og forbrugsoplysningerne.

Hvis det oprindelige svar skal kontrolleres

Bevar anmodnings-/svar-ID’er og headere. Der leveres ingen generel URL til at hente tekstjob.

Svarfelter
FeltType
Feltchoices[].indexTypeinteger
Feltchoices[].message.contentTypestring|null
Feltchoices[].message.tool_callsTypetool_call[]
Feltchoices[].message.reasoning_contentTypestring
Feltchoices[].message.reasoning_detailsTypeobject|array
Feltchoices[].finish_reasonTypestring|null
FeltusageTypeobject
Fejl og næste trin
SvarBetingelseNæste trin
Svar400 · invalid_request_errorBetingelseUgyldige obligatoriske felter, materialerepræsentation eller parameterværdiNæste trinRet de angivne felter før en ny oprettelsesanmodning.

Aliaser

Modelaliaser

Ailoot Ultra scaledown/extract

Aliaser for metodestier

/chat/completions

Relaterede kalder-ID’er

scaledown/extract

Ailoot Ultra · Anthropic Messages POST /v1/messages scaledown/extract

scaledown/extract

ScaleDown /scaledown/extract

Start

Extract finder kalderbeskrevne entiteter i tekst, billeder og dokumentfiler. Definér felterne på almindeligt engelsk, og bevar derefter matchende tekstspænd, konfidensscorer, tegnpositioner og omgivende kontekst. Indbygget OCR understøtter scanninger og PDF'er med en offentliggjort kontekst på 1.000.000 tokens til dokumentforløb.

Accepterede input
Tekst
Resultater
json · sse

Tilgængelig i Ailoot · input og metoder

Ailoot Ultra · Anthropic Messages POST /v1/messages
Inputtyper
text
Outputtyper
json, sse
Outputformat
JSON eller SSE
FeltTypeKravVærdier og grænserStandard
FeltmodelTypestringKravPåkrævetVærdier og grænser
scaledown/extract
Standard—
FeltmessagesTypemessage[]KravPåkrævetVærdier og grænserStandard—
Feltmessages[].roleTypestringKravPåkrævetVærdier og grænser
user, assistant
Standard—
Feltmessages[].contentTypestringKravPåkrævetVærdier og grænserStandard—
Feltmax_tokensTypeintegerKravPåkrævetVærdier og grænserStandard—
FeltstreamTypebooleanKravValgfritVærdier og grænserStandardfalse
Kombinationer af inputmaterialer

Tekst · UTF-8-tekst

messages[].content som streng

Metodeparametre og livscyklus
ParameterKontrakt
Parametercontent_typeKontraktapplication/json
ParameterrequiredKontraktmodel, messages, max_tokens
Parameteroptional_controlsKontraktstream
Parametermaterial_typesKontrakttext
Parametertext_file_materialKontraktLæs det faktiske UTF-8-dokument, og indsæt teksten i det angivne input eller beskedens indholdsstreng.

Livscyklus: synchronous_or_streamed

Priser

Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.

Hurtig tilstand
Ikke angivet Når hurtig tilstand er valgt
flex-tilstand
Ikke angivet Når flex-tilstanden er valgt
Maksimal ræsonneringsindsats
Ikke angivet Når default-justeringen anvendes ved maksimal ræsonneringsindsats

Ailoot-takster

Priser efter konfiguration

Knyt hver omkostning til de viste betingelser. Brug én takst for hver gruppe af alternative konfigurationer.

KonfigurationTakstplanKonteksttokens, mere endKonteksttokens, op til og medBeløb
KonfigurationGrundtakster for tokensTakstplanGrundtakstKonteksttokens, mere end—Konteksttokens, op til og medIngen øvre grænseBeløb
Input · Inputtokens $0.0001 / 1K tokens
Output · Outputtokens $0 / 1K tokens
Input · Cachelæsning — / 1K tokens
Input · Cacheskrivning — / 1K tokens
Input · Cacheskrivning, 1 time — / 1K tokens
KonfigurationAnmodningslængde · niveau 1Takstplan—Konteksttokens, mere end0Konteksttokens, op til og medIngen øvre grænseBeløb
Input · Inputtokens $0.0001 / 1K tokens
Output · Outputtokens $0 / 1K tokens
Input · Cachelæsning — / 1K tokens
Input · Cacheskrivning — / 1K tokens
Input · Cacheskrivning, 1 time — / 1K tokens

Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →

Eksempelanmodninger

Ailoot Ultra · Anthropic Messages

Komplet minimalt requestbody i JSONcurl · brug dit UTF-8-dokumentPython · gem hele resultatet
{
  "model": "scaledown/extract",
  "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': 'scaledown/extract', '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': 'scaledown/extract', '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))

Hent og gem resultater

Ailoot Ultra · Anthropic Messages

JSON eller SSE

Behold alle færdige resultater

Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.

Bevar alle indholdsblokke, ræsonnementssignaturer og faktiske værktøjsbrugs-ID’er. Saml alle SSE-blokdeltaer; den første tekstblok er ikke hele outputtet.

Hvis det oprindelige svar skal kontrolleres

Bevar anmodnings-/svar-ID’er og headere. Der leveres ingen generel URL til at hente tekstjob.

Svarfelter
FeltType
FeltidTypestring
FeltmodelTypestring
Feltcontent[]Typetext|thinking|tool_use|other content block
Feltstop_reasonTypestring|null
FeltusageTypeobject
Fejl og næste trin
SvarBetingelseNæste trin
Svar400 · invalid_request_errorBetingelseUgyldige obligatoriske felter, materialerepræsentation eller parameterværdiNæste trinRet de angivne felter før en ny oprettelsesanmodning.

Aliaser

Modelaliaser

Ailoot Ultra scaledown/extract

Aliaser for metodestier

/chat/completions

Relaterede kalder-ID’er

scaledown/extract

FAQ · ScaleDown: Extract
Hvilke input og resultater er tilgængelige?

POST /v1/chat/completions · scaledown/extract: text → text

POST /v1/messages · scaledown/extract: text → json, sse

Hvilke felter bruger anmodningen?

POST /v1/chat/completions · scaledown/extract: model, messages, stream

POST /v1/messages · scaledown/extract: model, messages, max_tokens, stream

Hvilke grænser gælder?

POST /v1/chat/completions · scaledown/extract: messages.min_items: 1

Flere oplysninger

Tilslut Ailoot til Claude Code, OpenCode, Hermes eller din egen applikation.

Virksomheden og dens projektportefølje

Virksomheden og dens projektportefølje: millioner af kunder; månedligt salg for milliarder.

Køb tokens med rabat.

Abonnementsrabat til regelmæssigt arbejde. Rabatkoder giver op til 50% på tokenkøb.

Abonnement
Vælg et abonnement med rabat til dine regelmæssige anmodninger.
Rabatkode på op til 50%
Indtast koden ved købet. Prisen genberegnes efter den aktuelle kampagne.
Udgifter i historikken
Model, tokens og beløb gemmes for hver anmodning.

Vælg abonnement · Se modelpriser

Tilslut API’et til produktet, du sælger.

SaaS, apps og bots efter Ailoots tilbudsvilkår og licensaftale. Anmod om en forhandlerlicens til videresalg.

Kommerciel applikation
Byg generering af tekst, billeder, video og lyd ind i tjenestens betalte funktioner.
Licens til forhandlere
Send projektbeskrivelse og adgangsmodel. Bed om skriftlige vilkår for anvendelse og videresalg.
Dokumenter på websitet
Tilbudsvilkår, licensaftale og politik for behandling af data kan læses før tilslutning.

Anmod om forhandlerlicens · Tilbudsvilkår og licensaftale