bge-reranker-v2-m3
De meertalige cross-encoder van BAAI rangschikt kandidaatpassages op relevantie voor een zoekvraag. Het model leest elk paar van zoekvraag en passage samen en geeft een relevantiescore terug, waarmee het een voorselectie van zoekresultaten verfijnt 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 voor hun onderlinge relatie terug. BAAI positioneert deze editie als een efficiënte meertalige reranker, onder meer voor informatieopvraging in het Chinees en Engels, wanneer een zoekapplicatie een bestaande lijst met kandidaten moet verfijnen.
Relevantie van een zoekvraag-passagepaar
Een cross-encoder verwerkt beide teksten gezamenlijk, zodat hun inhoud op elkaar kan inwerken voordat de relevantiescore wordt geproduceerd. Dit verschilt van een embeddingmodel, dat teksten onafhankelijk codeert voor herbruikbare vectorvergelijkingen. De uitvoer van de reranker is een scalaire score voor een specifiek paar, in plaats van een documentvector of een geschreven antwoord.
Gebruik het model nadat een eerste zoekstap plausibele passages heeft geselecteerd. Koppel de vraag aan elke kandidaat en rangschik de kandidaten op basis van de resulterende scores. Zo richt de gedetailleerdere vergelijking zich op een beheersbare voorselectie, in plaats van een cross-encoder elke passage in een grote verzameling te laten onderzoeken.
De v2 M3-editie
De ontwikkelaar noemt BGE-M3 als basismodel en meertalige ondersteuning als een van de belangrijkste kenmerken. Binnen de v2-rerankerfamilie is M3 de efficiënte meertalige optie; de varianten op basis van Gemma en 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 de keuze 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 kandidaatteksten hebt en moet bepalen welke passage het relevantst is voor de huidige zoekvraag.
Kandidaten voorbereiden voor een zinvolle rangschikking
Geef de daadwerkelijke vraag en de volledige kandidaattekst die nodig is om deze te interpreteren. Behoud koppen of nabijgelegen definities wanneer die de betekenis van een passage bepalen. In het gepubliceerde Transformers-voorbeeld worden de zoekvraag en passage samen getokeniseerd, met afkappen en max_length=512. Dat is een instelling uit het voorbeeld en geen algemene modellimiet. Houd de vraag en het benodigde bewijs binnen het gekozen budget voor het paar en controleer wat door afkappen verdwijnt. Een resultaat dat hetzelfde product noemt als een zoekvraag kan toch irrelevant zijn wanneer het over de verkeerde handeling of voorwaarde gaat; bereid bij de beoordeling van zoekkwaliteit voorbeelden voor die deze gevallen onderscheiden.
Bewaar voor een documentassistent kandidaat-ID’s bij de tekst, geef de vraag-passageparen een score en stuur de geselecteerde oorspronkelijke passages door naar de antwoordstap. Het antwoordmodel ontvangt dan het bewijsmateriaal in plaats van een relevantiescore zonder bron. Dit is een voorbeeld van een proces voor informatieopvraging; 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 een betere overeenkomst aangeeft. De gedocumenteerde optionele normalisatie past een sigmoidfunctie toe om de score tussen 0 en 1 te brengen. Een genormaliseerde score heeft een handig bereik, maar die omzetting alleen stelt geen gekalibreerde waarschijnlijkheid vast dat de kandidaat correct is.
Kies drempels voor rangschikken of filteren aan de hand van representatieve zoekvraag-passageparen uit je eigen werk. Neem passages op die dezelfde trefwoorden bevatten maar een andere vraag beantwoorden, en ook relevante passages met andere formuleringen. Zo krijgt de gekozen drempel betekenis voor de doorzochte verzameling.
Definieer voor een Ailoot API-project wat de uiteindelijke context moet bevatten en hoeveel kandidaten efficiënt kunnen worden onderzocht. Het bruikbare resultaat is een beter geordende verzameling bewijsmateriaal voor de volgende applicatiestap. Houd de relevantie-uitvoer van deze editie gescheiden van documentembeddings, gegenereerde tekst en de instellingen voor laagselectie die voor andere rerankers zijn 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 op relevantie voor een zoekvraag. Het model leest elk paar van zoekvraag en passage samen en geeft een relevantiescore terug, waarmee het een voorselectie van zoekresultaten verfijnt 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
- Invoertypen
text- Uitvoertypen
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 | ContractGeef uw eigen zoekvraag en een niet-lege array met oorspronkelijke tekstdocumenten op. De resultaatindices 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 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
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 native JSON-resultaat met het ingestelde antwoordmodel, oorspronkelijke documentindices, relevantiescores, documenttekenreeksen en native tokengebruik. Bewaar elk daadwerkelijk resultaat- en gebruiksveld.
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 het volledige antwoord en de headers, alle daadwerkelijke uitvoer, de oorspronkelijk geretourneerde identificatoren en alle gebruiksvelden. Herstel de oorspronkelijke bewerking zonder de aanmaakaanvraag opnieuw in te dienen.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de daadwerkelijke X-Client-Request-ID en het volledige antwoord. Lees de oorspronkelijke assets die u bezit en hun exacte ondertekende inhouds-URLs; dien een onzekere aanmaak nooit opnieuw in.
Antwoordvelden
| Veld | Type | Betekenis |
|---|---|---|
Veldmodel | Typestring | BetekenisExact antwoordmodel vereist door de ingestelde Source-consumer. |
Veldresults[].index | Typeinteger | BetekenisUnieke oorspronkelijke index van het invoerdocument. |
Veldresults[].relevance_score | Typenumber | BetekenisEindige relevantiescore. |
Veldresults[].document | Typestring | BetekenisOorspronkelijk tekstdocument vereist door deze ingestelde antwoordconsumer. |
Veldusage.total_tokens | Typeinteger | BetekenisEindig, niet-negatief aantal native tokens vereist door het huidige geaccepteerde tarief. |
Fouten en vervolgstappen
| Antwoord | Voorwaarde | Volgende stap |
|---|---|---|
Antwoord400 · invalid_request_error | VoorwaardeDe JSON-body of expliciete canonieke model-ID is ongeldig. | Volgende stapBewaar het antwoord en corrigeer het aangegeven verzoekveld. |
Antwoord401 · authentication_error | VoorwaardeDe Ailoot API-sleutel is ongeldig. | Volgende stapGebruik uw geautoriseerde Ailoot API-sleutel. |
Antwoord403 · permission_error | VoorwaardeDe sleutelgroep laat deze methode niet toe. | Volgende stapBewaar de geretourneerde foutdetails. |
Antwoord404 · not_found_error | VoorwaardeDe geselecteerde methode heeft geen toegelaten route. | Volgende stapBewaar de geretourneerde foutdetails. |
Antwoord422 · price_unavailable | VoorwaardeHet geaccepteerde tarief kan de vereiste invoerhoeveelheid of bovengrens niet verkrijgen. | Volgende stapBewaar het antwoord; gebruik de invoerweergave die het geaccepteerde tarief vereist. |
Antwoord503 · | VoorwaardeVereiste 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, gebruik of de afrekening moet worden gecontroleerd. | Volgende stapBewaar de daadwerkelijke verzoek-ID en het oorspronkelijke antwoord. Lees het bestaande record dat u bezit; dien de aanmaak 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