Sentence Transformers: all-MiniLM-L12-v2
Sentence Transformers all-MiniLM-L12-v2 codeert zinnen en korte alinea's in 384-dimensionale vectoren voor zoeken, gelijkenis en clustering. Het referentierecept gebruikt mean pooling en normalisatie, met standaard afkappen bij 256 wordpieces.
Over het model
Deze beschrijving gaat over de mogelijkheden van het model. De via Ailoot beschikbare invoer, uitvoer en opties staan hieronder voor de geselecteerde methode.
all-MiniLM-L12-v2 is een encoder van Sentence Transformers voor zinnen en korte alinea's. Het produceert één 384-dimensionale dense vector per tekst voor semantisch zoeken, informatieopvraging, clustering en zinsgelijkenis. Het model gebruikt de MiniLM-L12-H384-uncased-basisarchitectuur en is gefinetuned met contrastief leren op een verzameling van een miljard zinsparen.
Codeer de eenheid die u wilt ophalen
Gebruik een zin of korte alinea die één bruikbaar idee uitdrukt. Bewaar bij een verzameling productbeschrijvingen de eigenschap en voorwaarde die het item onderscheiden: “De adapter verbindt een bedrade headset met een USB-C-poort” is informatiever dan “Audioaccessoire”. Sla de recordidentifier en oorspronkelijke beschrijving bij de vector op.
Een zoekvraag kan vervolgens met de gecodeerde beschrijvingen worden vergeleken. Onderzoek de geretourneerde kandidaten op exacte vereisten zoals connectortype of apparaatcompatibiliteit voordat u een definitieve keuze presenteert. De vector vertegenwoordigt de betekenis van de tekst; de omringende zoektoepassing haalt de bijbehorende records op.
Mean pooling en genormaliseerde vectoren
Het gepubliceerde codeervoorbeeld middelt tokenrepresentaties met het attention-masker, zodat paddingposities niet aan het gemiddelde bijdragen. Vervolgens past het L2-normalisatie toe. Die stappen maken deel uit van het referentierecept om de zinsvector te verkrijgen en zijn geen instructie om een willekeurig token uit de onderliggende transformer te nemen.
Houd de model-, pooling- en normalisatieconfiguratie consistent tussen geïndexeerde teksten en nieuwe zoekvragen. De resulterende representaties met 384 componenten kunnen met cosinusgelijkenis worden vergeleken. Bewaar die configuratie bij de verzameling; een andere 384-dimensionale encoder wordt niet compatibel omdat de vectoren toevallig dezelfde lengte hebben.
Standaardinvoerlengte en trainingsbereik
De maker specificeert standaard afkappen boven 256 wordpieces. Dat is een tokenizerlimiet, geen aantal gewone woorden of tekens. Kies voor een langer record samenhangende korte secties en behoud de kop of het identificerende detail dat nodig is om elke sectie te interpreteren.
De trainingsprocedure van het model gebruikte sequenties tot 128 tokens. Die trainingsinstelling staat los van de gepubliceerde standaard van 256 wordpieces tijdens codering. Een passage die binnen de standaard past kan nog steeds sterk verschillen van het korte zinsmateriaal dat tijdens de training is gebruikt, dus beoordeel lange of gespecialiseerde beschrijvingen met representatieve voorbeelden.
Workflows voor gelijkenis en clustering
Bij een verzameling supportberichten kunnen embeddings numerieke invoer voor een groeperingsfase leveren. Beoordeel verschillende berichten uit elke voorgestelde groep en berichten bij de grens voordat u een menselijk leesbaar label toekent. Haal bij beoordeling van dubbele inhoud vergelijkbare records op en vergelijk hun daadwerkelijke bewoordingen; twee passages kunnen hetzelfde onderwerp bespreken maar verschillende instructies geven.
Deze exacte L12-v2-editie is een Engels zinsembeddingprofiel. Zij is onderscheiden van all-MiniLM-L6-v2 en de paraphrase-MiniLM-checkpoints. Gedeelde familienamen dragen hun sequentieconfiguratie of poolingrecept niet over. Gebruik de compacte dense vectoren samen met bronrecords en taakspecifieke evaluatie in plaats van een gelijkeniswaarde als geverifieerd antwoord of definitieve redactionele beslissing te behandelen.
Ailoot Ultra · Embeddings POST /v1/embeddings sentence-transformers/all-minilm-l12-v2
sentence-transformers/all-minilm-l12-v2
sentence-transformers/all-minilm-l12-v2Aan de slag
Sentence Transformers all-MiniLM-L12-v2 codeert zinnen en korte alinea's in 384-dimensionale vectoren voor zoeken, gelijkenis en clustering. Het referentierecept gebruikt mean pooling en normalisatie, met standaard afkappen bij 256 wordpieces.
- Toegestane invoer
- Tekst · token_ids
- Resultaten
- embedding
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · Embeddings POST /v1/embeddings
- Invoertypen
text,token_ids- Uitvoertypen
embedding- Uitvoerformaat
- json
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldmodel | Typestring | VereisteVereist | Waarden en limieten sentence-transformers/all-minilm-l12-v2 | Standaard— |
Veldinput | Typestring|string[]|integer[]|integer[][] | VereisteVereist | Waarden en limieten Minimumaantal items: 1 Voorwaarden: Niet-lege homogene batch. Token-ID’s zijn niet-negatieve gehele getallen. Invoerbudget: Maximum: 512 · Teksteenheid: UTF8-bytes · Tokeneenheid: elementen van de token-array | Standaard— |
Veldencoding_format | Typestring | VereisteOptioneel | Waarden en limieten float | Standaardfloat |
Velddimensions | Typeinteger | VereisteNiet ondersteund | Waarden en limieten Minimum: 1 | Standaard— |
Velduser | Typejson_value | VereisteOptioneel | Waarden en limieten Voorwaarden: De bron staat dit JSON-metadataveld toe; de exacte betekenis bij de upstreamprovider verschilt per model. | Standaard— |
Veldsession_id | Typejson_value | VereisteOptioneel | Waarden en limieten Voorwaarden: De bron staat dit JSON-metadataveld toe; de exacte betekenis bij de upstreamprovider verschilt per model. | Standaard— |
Veldtrace | Typejson_value | VereisteOptioneel | Waarden en limieten Voorwaarden: De bron staat dit JSON-metadataveld toe; de exacte betekenis bij de upstreamprovider verschilt per model. | Standaard— |
Veldprovider | Typeobject | VereisteOptioneel | Waarden en limieten Voorwaarden: provider.options geweigerd | Standaard— |
Combinaties van invoermaterialen
text_to_embedding
Methodeparameters en levenscyclus
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, input |
Parameterinput_shapes | Contractstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Contractfloat |
Parameterdimensions_override | Contractfalse |
Parametermax_input_budget_units | Contract512 |
Parametermultimodal_objects | Contractfalse |
Parametermaterial_types | Contracttext, token_ids |
Levenscyclus: synchronous_json
Bewaar elke vectorindex en dimensie.
Een multimodale modelnaam houdt niet in dat afbeeldingsobjecten op dit specifieke pad zijn toegestaan.
Tarieven
Tariefverwijzingen voegen geen verzoekopties toe. Ondersteunde parameters staan bij de geselecteerde methode.
- Snelle modus
- Niet opgegeven Wanneer de snelle modus is geselecteerd
- Flexmodus
- Niet opgegeven Wanneer de modus flex is geselecteerd
- Maximale redeneerinspanning
- Niet opgegeven Wanneer bij maximale redeneerinspanning de default-aanpassing wordt gebruikt
Ailoot-tarieven
Prijzen per configuratie
| Configuratie | Tariefstaffel | Kosten |
|---|---|---|
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Kosten Invoer · Invoertokens $0.00001 / 1K tokens Uitvoer · Uitvoertokens $0 / 1K tokens Invoer · Cache lezen — / 1K tokens Invoer · Cache schrijven — / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
Ailoot reserveert vóór een verzoek een geschat bedrag. Na het resultaat worden de uiteindelijke kosten afgerekend op basis van het gemeten verbruik. Bij streaming gebeurt de afrekening op basis van de definitieve verbruiksregistratie. Zo werken reservering en afrekening →
Voorbeeldverzoeken
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)
Resultaten ophalen en opslaan
Ailoot Ultra · Embeddings
json
Alle voltooide resultaten bewaren
Bewaar elk volledig teruggegeven antwoord, bestand en inhoudsonderdeel.
Bewaar elke vector met zijn index. Het aantal vectoren moet gelijk zijn aan het aantal invoeritems; de dimensies moeten consistent zijn.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Er wordt geen endpoint voor embeddingtaken geïntroduceerd.
Antwoordvelden
| Veld | Type |
|---|---|
Veldobject | Typestring |
Veldmodel | Typestring |
Velddata[].index | Typeinteger |
Velddata[].embedding | Typefinite float[] |
Veldusage | Typeobject |
Fouten en vervolgstappen
| Antwoord | Voorwaarde | Volgende stap |
|---|---|---|
Antwoord400 · invalid_request_error | VoorwaardeVerplichte velden, de materiaalrepresentatie of een parameterwaarde zijn ongeldig | Volgende stapCorrigeer de aangegeven velden vóór een nieuwe aanmaakaanvraag. |
Aliasnamen
Modelaliasnamen
Ailoot Ultra sentence-transformers/all-minilm-l12-v2
Aliasnamen voor methodepaden
Gebruik de hierboven getoonde methodepaden.
Gerelateerde aanroeper-ID’s
FAQ · Sentence Transformers: all-MiniLM-L12-v2
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:text,token_ids→embedding- Welke velden gebruikt het verzoek?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:model,input,encoding_format,provider- Welke limieten gelden?
POST /v1/embeddings·sentence-transformers/all-minilm-l12-v2:input.budget.maximum:512(UTF8-bytes);input.min_items:1