Sentence Transformers: all-MiniLM-L12-v2
Sentence Transformers all-MiniLM-L12-v2 koder sætninger og korte afsnit til 384-dimensionale vektorer til søgning, lighed og klyngedannelse. Referenceopskriften bruger gennemsnitspooling og normalisering med standardafkortning ved 256 orddele.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
all-MiniLM-L12-v2 er en Sentence Transformers-encoder til sætninger og korte afsnit. Den producerer én tæt vektor med 384 dimensioner pr. tekst til semantisk søgning, informationsgenfinding, klyngedannelse og sætningslighed. Modellen bruger MiniLM-L12-H384-uncased-grundmodellen og blev finjusteret med kontrastiv læring på en samling på en milliard sætningspar.
Kod den enhed, du vil genfinde
Brug en sætning eller et kort afsnit, der udtrykker én nyttig idé. Ved en samling af produktbeskrivelser skal du bevare den funktion og betingelse, som adskiller varen: »The adapter connects a wired headset to a USB-C port« er mere informativt end »Audio accessory«. Gem postidentifikatoren og den oprindelige beskrivelse ved siden af vektoren.
En søgeforespørgsel kan derefter sammenlignes med de kodede beskrivelser. Undersøg de returnerede kandidater for præcise krav såsom stiktype eller enhedskompatibilitet, før et endeligt valg præsenteres. Vektoren repræsenterer tekstens betydning; den omgivende søgeapplikation genfinder de tilsvarende poster.
Gennemsnitspooling og normaliserede vektorer
Det offentliggjorte kodningseksempel beregner gennemsnittet af tokenrepræsentationer med attention-masken, så paddingpositioner ikke bidrager til gennemsnittet. Derefter anvendes L2-normalisering. Trinnene indgår i referenceopskriften til at udlede sætningsvektoren og er ikke en instruktion om at tage en vilkårlig token fra den underliggende transformer.
Hold konfigurationen af model, pooling og normalisering ens mellem indekserede tekster og nye forespørgsler. De resulterende repræsentationer på 384 komponenter kan sammenlignes med cosinuslighed. Gem konfigurationen sammen med samlingen; en anden 384-dimensional encoder bliver ikke kompatibel, blot fordi dens vektorer har samme længde.
Standardinputlængde og træningsomfang
Producenten angiver standardafkortning ud over 256 orddele. Det er en tokenizergrænse, ikke et antal almindelige ord eller tegn. Ved en længere post skal du vælge sammenhængende korte afsnit og bevare den overskrift eller identificerende detalje, der er nødvendig for at fortolke hvert afsnit.
Modellens træningsprocedure brugte sekvenser på op til 128 tokens. Denne træningsindstilling er adskilt fra den offentliggjorte standard på 256 orddele ved kodning. En passage, som passer i standarden, kan stadig afvige væsentligt fra det korte sætningsmateriale, der blev brugt under træning, så vurder lange eller specialiserede beskrivelser med repræsentative eksempler.
Arbejdsgange til lighed og klyngedannelse
Ved et sæt supportbeskeder kan embeddings levere numeriske input til et grupperingstrin. Gennemgå flere beskeder fra hver foreslået gruppe og dem nær gruppens grænse, før en læsbar etiket tildeles. Ved gennemgang af dubletindhold skal du genfinde lignende poster og sammenligne den faktiske ordlyd; to passager kan behandle samme emne, men give forskellige instruktioner.
Denne præcise L12-v2-udgave er en engelsksproget profil til sætningsembeddings. Den adskiller sig fra all-MiniLM-L6-v2 og paraphrase-MiniLM-checkpoints. Fælles familienavne overfører ikke deres sekvenskonfiguration eller poolingopskrift. Brug dens kompakte tætte vektorer sammen med kildeposter og opgavespecifik evaluering frem for at behandle en lighedsværdi som et verificeret svar eller en endelig redaktionel beslutning.
Ailoot Ultra · Embeddings POST /v1/embeddings sentence-transformers/all-minilm-l12-v2
sentence-transformers/all-minilm-l12-v2
sentence-transformers/all-minilm-l12-v2Start
Sentence Transformers all-MiniLM-L12-v2 koder sætninger og korte afsnit til 384-dimensionale vektorer til søgning, lighed og klyngedannelse. Referenceopskriften bruger gennemsnitspooling og normalisering med standardafkortning ved 256 orddele.
- Accepterede input
- Tekst · token_ids
- Resultater
- embedding
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Embeddings POST /v1/embeddings
- Inputtyper
text,token_ids- Outputtyper
embedding- Outputformat
- json
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser sentence-transformers/all-minilm-l12-v2 | Standard— |
Feltinput | Typestring|string[]|integer[]|integer[][] | KravPåkrævet | Værdier og grænser Minimumsantal elementer: 1 Betingelser: Ikke-tom batch med ensartede elementer. Token-ID’er er ikke-negative heltal. Inputbudget: Maksimum: 512 · Tekstenhed: UTF8-bytes · Tokenenhed: elementer i et tokenarray | Standard— |
Feltencoding_format | Typestring | KravValgfrit | Værdier og grænser float | Standardfloat |
Feltdimensions | Typeinteger | KravIkke understøttet | Værdier og grænser Minimum: 1 | Standard— |
Feltuser | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Kilden tillader dette JSON-metadatafelt; den præcise betydning hos den bagvedliggende udbyder afhænger af modellen. | Standard— |
Feltsession_id | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Kilden tillader dette JSON-metadatafelt; den præcise betydning hos den bagvedliggende udbyder afhænger af modellen. | Standard— |
Felttrace | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Kilden tillader dette JSON-metadatafelt; den præcise betydning hos den bagvedliggende udbyder afhænger af modellen. | Standard— |
Feltprovider | Typeobject | KravValgfrit | Værdier og grænser Betingelser: provider.options afvist | Standard— |
Kombinationer af inputmaterialer
text_to_embedding
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktmodel, input |
Parameterinput_shapes | Kontraktstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Kontraktfloat |
Parameterdimensions_override | Kontraktfalse |
Parametermax_input_budget_units | Kontrakt512 |
Parametermultimodal_objects | Kontraktfalse |
Parametermaterial_types | Kontrakttext, token_ids |
Livscyklus: synchronous_json
Gem hver vektors indeks og dimension.
Et multimodalt modelnavn giver ikke adgang til at bruge billedobjekter på denne præcise sti.
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
| Konfiguration | Takstplan | Beløb |
|---|---|---|
| KonfigurationGrundtakster for tokens | TakstplanGrundtakst | Beløb Input · Inputtokens $0.00001 / 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 · Embeddings
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "sentence-transformers/all-minilm-l12-v2", "input": ["First document", "Second document"]}')
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/embeddings \
-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("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
from openai import OpenAI
import os
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='sentence-transformers/all-minilm-l12-v2',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Hent og gem resultater
Ailoot Ultra · Embeddings
json
Behold alle færdige resultater
Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.
Gem hver vektor med dens indeks. Antallet af vektorer skal svare til antallet af input; dimensionerne skal være ensartede.
Hvis det oprindelige svar skal kontrolleres
Der indføres intet endpoint til embedding-job.
Svarfelter
| Felt | Type |
|---|---|
Feltobject | Typestring |
Feltmodel | Typestring |
Feltdata[].index | Typeinteger |
Feltdata[].embedding | Typefinite float[] |
Feltusage | Typeobject |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldige obligatoriske felter, materialerepræsentation eller parameterværdi | Næste trinRet de angivne felter før en ny oprettelsesanmodning. |
Aliaser
Modelaliaser
Ailoot Ultra sentence-transformers/all-minilm-l12-v2
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
FAQ · Sentence Transformers: all-MiniLM-L12-v2
- Hvilke input og resultater er tilgængelige?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:text,token_ids→embedding- Hvilke felter bruger anmodningen?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:model,input,encoding_format,provider- Hvilke grænser gælder?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:input.budget.maximum:512(UTF8-bytes);input.min_items:1