bge-reranker-v2-m3
De meertalige cross-encoder van BAAI rangschikt kandidaatpassages volgens hun relevantie voor een zoekvraag. Hij leest elke combinatie van zoekvraag en passage samen en geeft een relevantiescore terug, waarmee een zoekselectie wordt verfijnd zonder een antwoord te genereren of documentembeddings te maken.
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.
BGE Reranker v2 M3 is een meertalig relevantiemodel dat op BGE-M3 is gebouwd. Het ontvangt een zoekvraag samen met een kandidaatpassage en geeft een score terug voor hun onderlinge relatie. BAAI positioneert deze editie als een efficiënte meertalige reranker, onder meer voor Chinese en Engelse retrieval, waarbij een zoekapplicatie een bestaande kandidatenlijst moet verfijnen.
Relevantie van een combinatie van zoekvraag en passage
Een cross-encoder verwerkt beide teksten gezamenlijk, waardoor hun inhoud op elkaar kan inwerken voordat de relevantiescore wordt geproduceerd. Dit verschilt van een embeddingmodel, dat teksten onafhankelijk codeert voor herbruikbare vectorvergelijking. De uitvoer van de reranker is een scalaire score voor een bepaalde combinatie, in plaats van een documentvector of een geschreven antwoord.
Gebruik het model nadat een eerste zoekopdracht aannemelijke passages heeft geselecteerd. Combineer de vraag met elke kandidaat en orden de kandidaten volgens de resulterende scores. Zo wordt de meer gedetailleerde vergelijking op een beheersbare selectie gericht, in plaats van een cross-encoder elke passage in een grote verzameling te laten bekijken.
De v2 M3-editie
De maker noemt BGE-M3 als basismodel en vermeldt meertalige ondersteuning als een van de belangrijkste kenmerken. Binnen zijn v2-rerankerfamilie is M3 de efficiënte meertalige optie; de op Gemma gebaseerde varianten en varianten met laagselectie zijn afzonderlijke modellen met andere implementatiekeuzes. De naam M3 betekent hier niet dat de reranker de dense, sparse en multi-vector-embeddings van het oorspronkelijke embeddingmodel teruggeeft.
Dit onderscheid is van belang bij het kiezen van het resultaat dat je applicatie nodig heeft. Kies een embeddingmodel om een documentverzameling te representeren en te doorzoeken. Kies deze reranker wanneer je al kandidaattekst hebt en moet bepalen welke passage het relevantst is voor de huidige zoekvraag.
Kandidaten voorbereiden die zinvol gerangschikt kunnen worden
Geef de werkelijke vraag en de volledige kandidaattekst mee die nodig is om die te interpreteren. Behoud koppen of nabije definities wanneer ze de betekenis van een passage bepalen. In het gepubliceerde Transformers-voorbeeld worden de zoekvraag en passage samen getokeniseerd met afkapping en max_length=512. Dat is een voorbeeldinstelling en geen limiet voor het hele model. Houd de vraag en het vereiste bewijs binnen het gekozen budget voor de combinatie, en controleer wat door afkapping wordt verwijderd. Een resultaat dat hetzelfde product als een zoekvraag noemt, kan toch irrelevant zijn als het over de verkeerde bewerking of voorwaarde gaat; bereid voorbeelden voor die die gevallen onderscheiden wanneer je de retrievalkwaliteit evalueert.
Bewaar voor een documentassistent de kandidaatidentificatoren bij hun tekst, bereken scores voor de combinaties van vraag en passage en geef de geselecteerde oorspronkelijke passages door aan de antwoordstap. Het antwoordmodel ontvangt dan het bewijs in plaats van een relevantiescore zonder bron. Dit is een illustratieve retrievalworkflow; de reranker zelf doorzoekt geen externe verzameling en schrijft het antwoord niet.
Scores lezen en normaliseren
De fabrikant geeft ruwe relevantiescores terug, waarbij een hogere waarde op een betere overeenkomst wijst. De gedocumenteerde optionele normalisatie past een sigmoïdfunctie toe om de score tussen 0 en 1 te plaatsen. Een genormaliseerde score heeft een handig bereik, maar die omzetting alleen maakt er geen gekalibreerde kans van dat de kandidaat correct is.
Kies drempels voor rangschikking of filtering op basis van representatieve combinaties van zoekvraag en passage uit je werklast. Neem zowel passages op die dezelfde trefwoorden bevatten maar een andere vraag beantwoorden als relevante passages met een andere formulering. Zo is de gekozen drempel betekenisvol voor de doorzochte verzameling.
Definieer voor een Ailoot API-project wat de uiteindelijke context moet bevatten en hoeveel kandidaten efficiënt onderzocht kunnen worden. Het bruikbare resultaat is een beter geordende verzameling bewijs voor de volgende applicatiestap. Houd de relevantie-uitvoer van deze editie gescheiden van documentembeddings, gegenereerde tekst en de besturing voor laagselectie die voor andere rerankers is gedocumenteerd.
Ailoot Ultra · Opnieuw rangschikken POST /v1/rerank bge-reranker-v2-m3
bge-reranker-v2-m3Aan de slag
De meertalige cross-encoder van BAAI rangschikt kandidaatpassages volgens hun relevantie voor een zoekvraag. Hij leest elke combinatie van zoekvraag en passage samen en geeft een relevantiescore terug, waarmee een zoekselectie wordt verfijnd zonder een antwoord te genereren of documentembeddings te maken.
- Toegestane invoer
- Tekst
- Resultaten
- Resultaten op relevantie
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · Opnieuw rangschikken POST /v1/rerank
- Invoer
text- Uitvoer
rerank
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldmodel | Typestring | VereisteVereist | Waarden en limieten bge-reranker-v2-m3 | Standaard— |
Veldquery | Typestring | VereisteOptioneel | Waarden en limieten | Standaard— |
Velddocuments | Typearray | VereisteVereist | Waarden en limieten | Standaard— |
Methodeparameters en levenscyclus
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, documents |
Parametermaterial_types | Contracttext |
Parametermaterial_conditions | ContractStel je werkelijke zoekvraag en een niet-lege array met oorspronkelijke tekstdocumenten in. Resultaatindexen verwijzen naar die oorspronkelijke array. |
Levenscyclus: synchronous_result_then_owned_library
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarieven
Tariefverwijzingen voegen geen verzoekopties toe. Ondersteunde parameters staan bij de geselecteerde methode.
- Snelle modus
- Niet opgegeven Wanneer de snelle modus geselecteerd is
- Flex-modus
- Niet opgegeven Wanneer de flex-modus geselecteerd is
- Maximale redeneerinspanning
- Niet opgegeven Wanneer voor maximale redeneerinspanning de default-aanpassing wordt gebruikt
Ailoot-tarieven
Prijzen per configuratie
Koppel elke kostenpost aan de getoonde voorwaarden. Gebruik één tarief voor elke groep alternatieve configuraties.
| Configuratie | Tariefstaffel | Rekeneenheid | Kosten |
|---|---|---|---|
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Rekeneenheid— | Kosten Invoer · Invoertokens — / 1K tokens Uitvoer · Uitvoertokens — / 1K tokens Invoer · Cache lezen — / 1K tokens Invoer · Cache schrijven — / 1K tokens Invoer · Cache schrijven, 1 uur — / 1K tokens |
| Configuratietoken (totaal) | Tariefstaffel— | Rekeneenheid/ 1K tokens | Kosten Invoer · token (totaal) $0.00004 / 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 · Opnieuw rangschikken
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_QUERY:?Set the actual documented input value}"
export AILOOT_QUERY
: "${AILOOT_DOCUMENTS_JSON:?Set the actual documented input value}"
export AILOOT_DOCUMENTS_JSON
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
request={'model': 'bge-reranker-v2-m3', 'query': '${ACTUAL_QUERY}', 'documents': '${ACTUAL_DOCUMENTS}'}
request['query']=os.environ['AILOOT_QUERY']
request['documents']=json.loads(os.environ['AILOOT_DOCUMENTS_JSON'])
Path('request.json').write_text(json.dumps(request,ensure_ascii=False),encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/rerank \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o response.bin
# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.
Resultaten ophalen en opslaan
Ailoot Ultra · Opnieuw rangschikken
Volledig oorspronkelijk natief JSON-resultaat met het ingestelde antwoordmodel, de oorspronkelijke documentindexen, relevantiescores, documenttekenreeksen en het natieve tokenverbruik. Bewaar elk werkelijk resultaat- en verbruiksveld.
GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Alle voltooide resultaten bewaren
Bewaar elk volledig teruggegeven antwoord, bestand en inhoudsonderdeel.
Bewaar de volledige respons en headers, iedere daadwerkelijke uitvoer, de oorspronkelijk teruggegeven identificatoren en alle verbruiksvelden. Herstel de oorspronkelijke bewerking zonder de aanmaakaanvraag opnieuw in te dienen.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de werkelijke X-Client-Request-ID en het volledige antwoord. Raadpleeg de oorspronkelijke assets die je toebehoren en hun exacte ondertekende inhouds-URL's; dien een aanmaakaanvraag met onzekere uitkomst nooit opnieuw in.
Antwoordvelden
| Veld | Type | Betekenis |
|---|---|---|
Veldmodel | Typestring | BetekenisExact antwoordmodel dat de ingestelde Source-verwerker vereist. |
Veldresults[].index | Typeinteger | BetekenisUnieke index van het oorspronkelijke invoerdocument. |
Veldresults[].relevance_score | Typenumber | BetekenisEindige relevantiescore. |
Veldresults[].document | Typestring | BetekenisOorspronkelijk tekstdocument dat deze ingestelde antwoordverwerker vereist. |
Veldusage.total_tokens | Typeinteger | BetekenisEindig, niet-negatief natief aantal tokens dat het huidige geaccepteerde tarief vereist. |
Fouten en vervolgstappen
| Antwoord | Voorwaarde | Volgende stap |
|---|---|---|
Antwoord400 · invalid_request_error | VoorwaardeDe JSON-inhoud of de expliciete canonieke model-ID is ongeldig. | Volgende stapBewaar het antwoord en corrigeer het aangegeven aanvraagveld. |
Antwoord401 · authentication_error | VoorwaardeDe Ailoot API-sleutel is ongeldig. | Volgende stapGebruik je geautoriseerde Ailoot API-sleutel. |
Antwoord403 · permission_error | VoorwaardeDe groep van de sleutel heeft geen toegang tot deze methode. | Volgende stapBewaar de teruggestuurde foutdetails. |
Antwoord404 · not_found_error | VoorwaardeDe geselecteerde methode heeft geen toegelaten route. | Volgende stapBewaar de teruggestuurde foutdetails. |
Antwoord422 · price_unavailable | VoorwaardeVoor het geaccepteerde tarief kan de vereiste invoerhoeveelheid of grenswaarde niet worden bepaald. | Volgende stapBewaar het antwoord; gebruik de invoerweergave die het geaccepteerde tarief vereist. |
Antwoord503 · | VoorwaardeDe vereiste opslag, route, methodeprijs of reservering is niet beschikbaar. | Volgende stapBewaar het volledige oorspronkelijke antwoord. Een onzekere reservering geeft geen toestemming om opnieuw in te dienen. |
Antwoord502 · billing_requires_check | VoorwaardeHet oorspronkelijke resultaat, het verbruik of de afrekening moet worden gecontroleerd. | Volgende stapBewaar de werkelijke aanvraag-ID en het oorspronkelijke antwoord. Raadpleeg de bestaande registratie die je toebehoort; dien de aanmaakaanvraag niet opnieuw in. |
Aliasnamen
Modelaliasnamen
Ailoot Ultra bge-reranker-v2-m3
Aliasnamen voor methodepaden
Gebruik de hierboven getoonde methodepaden.
Gerelateerde aanroeper-ID’s
FAQ · bge-reranker-v2-m3
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/rerank·bge-reranker-v2-m3:text→rerank- Welke velden gebruikt het verzoek?
POST /v1/rerank·bge-reranker-v2-m3:model,query,documents