Sentence Transformers: multi-qa-mpnet-base-dot-v1
Sentence Transformers multi-qa-mpnet-base-dot-v1 codeert vragen en passages in 768-dimensionale vectoren voor semantisch zoeken. Het gebruikt CLS-pooling en niet-genormaliseerde embeddings die voor inproductscoring zijn ontworpen, met een invoerlimiet van 512 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.
multi-qa-mpnet-base-dot-v1 is een model van Sentence Transformers dat is ontworpen om tekstpassages bij een vraag of zoekopdracht op te halen. De training gebruikte ongeveer 215 miljoen vraag-antwoordparen. Elke invoer wordt een 768-dimensionale dense vector, waarbij CLS-pooling en inproductscoring deze exacte editie definiëren.
Bereid een vraag en kandidaatpassages voor
Schrijf de zoekvraag als de informatiebehoefte en bereid corpusitems voor als leesbare tekstpassages. Een vraag over het wijzigen van een afleveradres kan bijvoorbeeld worden vergeleken met afzonderlijke alinea's over adreswijziging, orderannulering en het volgen van de levering. Bewaar de relevante voorwaarden in de passage over adreswijziging, waaronder of de bestelling al is verzonden.
Codeer de zoekvraag en passages met hetzelfde model. Het gepubliceerde voorbeeld doet dit rechtstreeks, zonder query/document-prefix, en sorteert de passages op hun inproductscores. Houd elke vector gekoppeld aan de oorspronkelijke passage en documentidentifier, zodat het gerangschikte resultaat het materiaal kan tonen dat daadwerkelijk is geïndexeerd.
CLS-pooling en de inproducteditie
Het referentierecept van het model neemt de representatie van het eerste token, bekend als CLS-pooling. De technische tabel vermeldt expliciet dat de embeddings niet zijn genormaliseerd en noemt het inproduct als geschikte scoringsfunctie. Behoud dat recept bij het instellen van de verzameling en de zoekvraagzijde.
Deze vectoren L2-normaliseren verandert hun scoringsgeometrie. Het genormaliseerde all-mpnet-base-v2-profiel gebruikt een ander recept en is een afzonderlijk checkpoint, ondanks de gedeelde MPNet-familie en uitvoer met 768 componenten. Bewaar de exacte editie en vergelijkingsfunctie bij de opgeslagen verzameling in plaats van ze uitsluitend uit de vectorlengte te kiezen.
Lengtelimiet en langere passages
De genoemde invoerlimiet is 512 wordpieces; langere tekst wordt afgekapt. De maker merkt ook op dat trainingsinvoer maar tot 250 wordpieces reikte en dat langere tekst minder goed kan werken. De geaccepteerde tokenizerlengte en het voorbehoud over trainingslengte beschrijven dus verschillende praktische grenzen.
Bereid een groot hulpartikel voor als korte secties die specifieke vragen beantwoorden. Behoud een kop wanneer die het onderwerp identificeert en bewaar een regel met de uitzondering die nodig is om hem correct te lezen. Eén invoer van een volledige pagina kan later materiaal door afkappen verliezen, terwijl een te klein fragment de voorwaarde kan verliezen die het bruikbaar maakt.
Gebruik de rangschikking bij informatieopvraging en RAG
De dense vectoren ondersteunen een eerste zoekfase. Retourneer de kandidaatpassages met de hoogste scores en hun bronverwijzingen en onderzoek vervolgens of ze de daadwerkelijke vraag behandelen. Geef die passages in een RAG-workflow als bronmateriaal aan de antwoordschrijffase; de zoekfase zelf stelt het antwoord niet op.
Gebruik representatieve vragen met bekende relevante passages om het aantal resultaten te kiezen en de rangschikking te beoordelen. Neem voorbeelden op met vergelijkbare woordenschat maar verschillende intenties, zoals een adres wijzigen tegenover het huidige adres bekijken. Interpreteer scores relatief ten opzichte van kandidaten onder hetzelfde model en dezelfde scoringsopzet, in plaats van als gekalibreerde waarschijnlijkheden van juistheid.
De bruikbare uitvoer van dit checkpoint is een embeddingruimte voor vragen en passages voor semantisch zoeken. De niet-genormaliseerde vectoren, CLS-pooling, inproductscore en het gepubliceerde voorbehoud voor lange invoer zijn de details die bij het voorbereiden en gebruiken van resultaten behouden moeten blijven.
Ailoot Ultra · Embeddings POST /v1/embeddings sentence-transformers/multi-qa-mpnet-base-dot-v1
sentence-transformers/multi-qa-mpnet-base-dot-v1
sentence-transformers/multi-qa-mpnet-base-dot-v1Aan de slag
Sentence Transformers multi-qa-mpnet-base-dot-v1 codeert vragen en passages in 768-dimensionale vectoren voor semantisch zoeken. Het gebruikt CLS-pooling en niet-genormaliseerde embeddings die voor inproductscoring zijn ontworpen, met een invoerlimiet van 512 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/multi-qa-mpnet-base-dot-v1 | 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/multi-qa-mpnet-base-dot-v1", "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/multi-qa-mpnet-base-dot-v1',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/multi-qa-mpnet-base-dot-v1
Aliasnamen voor methodepaden
Gebruik de hierboven getoonde methodepaden.
Gerelateerde aanroeper-ID’s
FAQ · Sentence Transformers: multi-qa-mpnet-base-dot-v1
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/embeddings·sentence-transformers/multi-qa-mpnet-base-dot-v1:text,token_ids→embedding- Welke velden gebruikt het verzoek?
POST /v1/embeddings·sentence-transformers/multi-qa-mpnet-base-dot-v1:model,input,encoding_format,provider- Welke limieten gelden?
POST /v1/embeddings·sentence-transformers/multi-qa-mpnet-base-dot-v1:input.budget.maximum:512(UTF8-bytes);input.min_items:1