Sentence Transformers: multi-qa-mpnet-base-dot-v1
Sentence Transformers multi-qa-mpnet-base-dot-v1 koder spørsmål og passasjer til 768-dimensjonale vektorer for semantisk søk. Den bruker CLS-pooling og unormaliserte embeddinger utviklet for prikkproduktskåring, med en inndatagrense på 512 orddeler.
Om modellen
Denne beskrivelsen dekker modellens funksjoner. Tilgjengelige inndata, utdata og alternativer i Ailoot er oppført nedenfor for den valgte metoden.
multi-qa-mpnet-base-dot-v1 er en Sentence Transformers-modell utviklet for å gjenfinne tekstpassasjer til et spørsmål eller en forespørsel. Treningen brukte omtrent 215 millioner spørsmål–svar-par. Hver inndatatekst blir en tett vektor med 768 dimensjoner, med CLS-pooling og prikkproduktskåring som definerer denne nøyaktige utgaven.
Forbered et spørsmål og kandidatpassasjer
Skriv forespørselen som informasjonsbehovet og forbered korpusposter som lesbare tekstpassasjer. Et spørsmål om å endre en leveringsadresse kan for eksempel sammenlignes med separate avsnitt om adresseendring, ordrekansellering og leveringssporing. Behold de relevante betingelsene i passasjen om adresseendring, inkludert om ordren allerede er sendt.
Kod forespørselen og passasjene med denne samme modellen. Det publiserte eksemplet gjør dette direkte, uten et query/document-prefiks, og sorterer passasjene etter prikkproduktskårene. Hold hver vektor knyttet til den opprinnelige passasjen og dokumentidentifikatoren, slik at det rangerte resultatet kan vise materialet som faktisk ble indeksert.
CLS-pooling og prikkproduktutgaven
Modellens referanseoppskrift tar representasjonen av første token, kjent som CLS-pooling. Den tekniske tabellen sier uttrykkelig at embeddingene ikke er normalisert, og oppgir prikkprodukt som egnet skåringsfunksjon. Bevar denne oppskriften når samlingen og forespørselssiden settes opp.
L2-normalisering av disse vektorene endrer skåringsgeometrien. Den normaliserte all-mpnet-base-v2-profilen bruker en annen oppskrift og er et separat checkpoint, til tross for felles MPNet-familie og et resultat på 768 komponenter. Hold den nøyaktige utgaven og sammenligningsfunksjonen med den lagrede samlingen fremfor å velge dem ut fra vektorlengden alene.
Lengdegrense og lengre passasjer
Den oppgitte inndatagrensen er 512 orddeler; lengre tekst avkortes. Produsenten påpeker også at treningsinndataene bare nådde 250 orddeler, og at lengre tekst kan fungere mindre godt. Den aksepterte tokenizerlengden og forbeholdet om treningslengde beskriver derfor ulike praktiske grenser.
For en stor hjelpeartikkel forbereder du korte seksjoner som besvarer bestemte spørsmål. Behold en overskrift når den identifiserer emnet, og hold en regel sammen med unntaket som trengs for å lese den korrekt. En hel side som ett input kan miste senere materiale ved avkorting, mens et for lite fragment kan miste betingelsen som gjør det nyttig.
Bruk rangeringen i gjenfinning og RAG
De tette vektorene støtter et første gjenfinningstrinn. Returner kandidatpassasjene med høyest skår og kildehenvisningene deres, og undersøk deretter om de svarer på det faktiske spørsmålet. I en RAG-arbeidsflyt gir du disse passasjene til svarskrivingstrinnet som kildemateriale; gjenfinningen skriver ikke svaret selv.
Bruk representative spørsmål med kjente relevante passasjer til å velge antall resultater og vurdere rangeringen. Ta med eksempler med lignende ordforråd, men ulik hensikt, som å endre en adresse versus å se den gjeldende adressen. Tolk skårene relativt til kandidater under samme modell og skåringsoppsett fremfor som kalibrerte sannsynligheter for korrekthet.
Det nyttige resultatet fra dette checkpointet er et embeddingrom for spørsmål og passasjer til semantisk søk. De unormaliserte vektorene, CLS-pooling, prikkproduktskåren og det publiserte forbeholdet om lange inndata er detaljene som må bevares når resultater forberedes og brukes.
Ailoot Ultra · Vektorrepresentasjoner 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-v1Start
Sentence Transformers multi-qa-mpnet-base-dot-v1 koder spørsmål og passasjer til 768-dimensjonale vektorer for semantisk søk. Den bruker CLS-pooling og unormaliserte embeddinger utviklet for prikkproduktskåring, med en inndatagrense på 512 orddeler.
- Godkjente inndata
- Tekst · token_ids
- Resultater
- embedding
Tilgjengelig i Ailoot · inndata & metoder
Ailoot Ultra · Vektorrepresentasjoner POST /v1/embeddings
- Inndatatyper
text,token_ids- Utdatatyper
embedding- Utdataformat
- json
| Felt | Type | Krav | Verdier & grenser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrevd | Verdier & grenser sentence-transformers/multi-qa-mpnet-base-dot-v1 | Standard— |
Feltinput | Typestring|string[]|integer[]|integer[][] | KravPåkrevd | Verdier & grenser Minste antall elementer: 1 Vilkår: Ikke-tom batch med ensartede elementer. Token-ID-er er ikke-negative heltall. Inndatabudsjett: Maksimum: 512 · Tekstenhet: UTF8-byte · Tokenenhet: elementer i token-arrayet | Standard— |
Feltencoding_format | Typestring | KravValgfritt | Verdier & grenser float | Standardfloat |
Feltdimensions | Typeinteger | KravStøttes ikke | Verdier & grenser Minimum: 1 | Standard— |
Feltuser | Typejson_value | KravValgfritt | Verdier & grenser Vilkår: Kilden tillater dette JSON-metadatafeltet; den nøyaktige semantikken hos den underliggende leverandøren er modellavhengig. | Standard— |
Feltsession_id | Typejson_value | KravValgfritt | Verdier & grenser Vilkår: Kilden tillater dette JSON-metadatafeltet; den nøyaktige semantikken hos den underliggende leverandøren er modellavhengig. | Standard— |
Felttrace | Typejson_value | KravValgfritt | Verdier & grenser Vilkår: Kilden tillater dette JSON-metadatafeltet; den nøyaktige semantikken hos den underliggende leverandøren er modellavhengig. | Standard— |
Feltprovider | Typeobject | KravValgfritt | Verdier & grenser Vilkår: provider.options avvises | Standard— |
Kombinasjoner av inngående materialer
text_to_embedding
Metodeparametere og livssyklus
| Parameter | Avtale |
|---|---|
Parametercontent_type | Avtaleapplication/json |
Parameterrequired | Avtalemodel, input |
Parameterinput_shapes | Avtalestring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Avtalefloat |
Parameterdimensions_override | Avtalefalse |
Parametermax_input_budget_units | Avtale512 |
Parametermultimodal_objects | Avtalefalse |
Parametermaterial_types | Avtaletext, token_ids |
Livssyklus: synchronous_json
Bevar hver vektors indeks og dimensjon.
Et multimodalt modellnavn innebærer ikke at bildeobjekter er tillatt på denne nøyaktige stien.
Priser
Tariffopplysninger legger ikke til forespørselsvalg. Støttede parametere står ved den valgte metoden.
- Hurtigmodus
- Ikke angitt Når hurtigmodus er valgt
- Flex-modus
- Ikke angitt Når flex-modus er valgt
- Maksimal resonneringsinnsats
- Ikke angitt Når justeringen «default» brukes for maksimal resonneringsinnsats
Ailoot-satser
Priser etter konfigurasjon
| Konfigurasjon | Prisplan | Kostnad |
|---|---|---|
| KonfigurasjonGrunnpriser for tokener | PrisplanGrunnsats | Kostnad Inndata · Inngående tokener $0.00001 / 1K tokener Utdata · Utgående tokener $0 / 1K tokener Inndata · Lesing fra hurtigbuffer — / 1K tokener Inndata · Skriving til hurtigbuffer — / 1K tokener Inndata · Skriving til hurtigbuffer, 1 time — / 1K tokener |
Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. Slik fungerer reservasjon og oppgjør →
Eksempelforespørsler
Ailoot Ultra · Vektorrepresentasjoner
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)
Motta og lagre resultater
Ailoot Ultra · Vektorrepresentasjoner
json
Behold alle ferdige resultater
Behold alle fullstendige returnerte svar, filer og innholdsdeler.
Bevar hver vektor sammen med indeksen. Antall vektorer må være lik antall inndata; dimensjonene må være konsistente.
Hvis det opprinnelige svaret må kontrolleres
Det innføres ikke noe endepunkt for embedding-jobber.
Svarfelter
| Felt | Type |
|---|---|
Feltobject | Typestring |
Feltmodel | Typestring |
Feltdata[].index | Typeinteger |
Feltdata[].embedding | Typefinite float[] |
Feltusage | Typeobject |
Feil og neste trinn
| Svar | Vilkår | Neste trinn |
|---|---|---|
Svar400 · invalid_request_error | VilkårUgyldige påkrevde felter, materialrepresentasjon eller parameterverdi | Neste trinnKorriger de angitte feltene før en ny opprettelsesforespørsel. |
Aliaser
Modellaliaser
Ailoot Ultra sentence-transformers/multi-qa-mpnet-base-dot-v1
Aliaser for metodestier
Bruk metodestiene som vises ovenfor.
Tilknyttede anroper-ID-er
FAQ · Sentence Transformers: multi-qa-mpnet-base-dot-v1
- Hvilke inndata og resultater er tilgjengelige?
POST /v1/embeddings·sentence-transformers/multi-qa-mpnet-base-dot-v1:text,token_ids→embedding- Hvilke felt bruker forespørselen?
POST /v1/embeddings·sentence-transformers/multi-qa-mpnet-base-dot-v1:model,input,encoding_format,provider- Hvilke grenser gjelder?
POST /v1/embeddings·sentence-transformers/multi-qa-mpnet-base-dot-v1:input.budget.maximum:512(UTF8-byte);input.min_items:1