BAAI: bge-m3
BAAI BGE-M3 ondersteunt dense, sparse lexicale en multi-vector retrieval in meer dan 100 talen. De dichte uitvoer heeft 1024 dimensies en het venster van 8192 tokens biedt ruimte voor zinnen tot en met langere documenten, zonder verplichte query-instructie.
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-M3 is het meertalige zoekmodel van BAAI, ontworpen rond drie soorten veelzijdigheid: meerdere zoekfuncties, meerdere talen en verschillende invoerlengtes. De fabrikant documenteert ondersteuning voor meer dan honderd talen en invoer tot 8192 tokens. Het uniforme model kan dense vectoren, sparse lexicale gewichten en multivectorrepresentaties leveren, zodat een zoekontwerp meer dan één soort aanwijzing kan selecteren of combineren.
Drie representaties voor informatieopvraging
De dense modus zet een tekst om in één 1024-dimensionale vector. Hij ondersteunt vergelijking van de betekenis die een zoekvraag en een passage vertegenwoordigen. De sparse modus kent gewichten toe aan de tokens die in de tekst voorkomen voor lexicale matching. De multivectormodus vertegenwoordigt een tekst met verschillende vectoren en gebruikt interactie in ColBERT-stijl om de zoekvraag en het document op een fijner niveau te vergelijken.
Deze uitvoervormen hebben verschillende rollen in een zoekindex. Een dense vector biedt één representatie voor een passage; een sparse mapping van tokens naar gewichten behoudt lexicale signalen; meerdere vectoren bieden een andere vergelijkingsstructuur. De producentvoorbeelden tonen het retourneren van de geselecteerde representaties en het berekenen van scores voor tekstparen. Behandel de gekozen representatie en scoringsmethode als een bewust onderdeel van de zoektaak.
Meertalige tekst en invoervoorbereiding
BGE-M3 vereist niet dat de zoekinstructie van eerdere BGE-modellen wordt toegevoegd. Bereid de zoekvraag en de daadwerkelijke bronpassages direct voor. Een meertalige kennisverzameling kan elke passage in haar oorspronkelijke taal bewaren, met documentidentifier en locale. Gebruik echte gebruikersvragen uit de beoogde talenmix wanneer u de resultaten controleert.
Een praktische taak is zoeken in beleidsuitleg, producthulp of technische documentatie in verschillende talen. Behoud namen, modelnummers en termen die belangrijk zijn voor de vraag. Een lexicale representatie kan matching op die termen helpen behouden, terwijl een dense representatie semantische aanwijzingen levert. De opgehaalde passage moet de tekst en bronlocatie bevatten die een lezer kan onderzoeken.
Langere documenten en granulariteit
Het invoervenster van 8192 tokens laat het model materiaal van korte zinnen tot langere documenten representeren. Kies de granulariteit op basis van het antwoord dat de zoekfunctie moet teruggeven. Een volledige sectie kan een definitie en de uitzonderingen daarop behouden; een kleinere passage kan een specifieke instructie makkelijker vindbaar maken. Een lang venster maakt die keuzes mogelijk, maar de vector blijft gekoppeld aan het materiaal dat daadwerkelijk is gecodeerd.
Houd elke passage gekoppeld aan het bovenliggende document en de versie ervan. Bewaar bij een lang rapport de kop en de omringende uitleg van het relevante cijfer of de conclusie. Vertrouw niet alleen op de titel van een zoekresultaat wanneer de onderbouwing in de hoofdtekst staat. Bewaar bij bronwijzigingen genoeg metadata om de bijbehorende zoekrepresentaties bij te werken.
Hybride scores en gebruik in vervolgstappen
De fabrikant beveelt hybride informatieopvraging aan, gevolgd door een afzonderlijke rerankingfase. De voorbeelden berekenen dense, sparse en multivectorscores en vormen gewogen combinaties. Kies de combinatie op basis van de vragen en woordenschat van de verzameling; een gewicht uit een voorbeeld is geen universele instelling voor elk corpus.
Een bruikbaar resultaat is een kandidatenverzameling waarvan de bronpassages beschikbaar blijven, met de representatie- en rangschikkingsmethode vastgelegd. Een afzonderlijke reranker kan die verzameling verfijnen en een afzonderlijke tekstgeneratiefase kan de passage-inhoud gebruiken. De sparse- en multivectormogelijkheden van BGE-M3 zijn modi van het producentmodel; de dense embedding, lexicale uitvoer en paarscore zijn onderscheiden artefacten in plaats van uitwisselbare arrays.
Ailoot Ultra · Embeddings POST /v1/embeddings baai/bge-m3
baai/bge-m3Aan de slag
BAAI BGE-M3 ondersteunt dense, sparse lexicale en multi-vector retrieval in meer dan 100 talen. De dichte uitvoer heeft 1024 dimensies en het venster van 8192 tokens biedt ruimte voor zinnen tot en met langere documenten, zonder verplichte query-instructie.
- 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- Context
- 8.194 tokens
- Uitvoerformaat
- json
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldmodel | Typestring | VereisteVereist | Waarden en limieten baai/bge-m3 | 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: 8.194 · 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 | Contract8194 |
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
- Standaardtarief Wanneer de snelle modus is geselecteerd
- Flexmodus
- Standaardtarief Wanneer de modus flex is geselecteerd
- Maximale redeneerinspanning
- Standaardtarief 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.00004 / 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": "baai/bge-m3", "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='baai/bge-m3',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 baai/bge-m3
Aliasnamen voor methodepaden
Gebruik de hierboven getoonde methodepaden.
Gerelateerde aanroeper-ID’s
FAQ · BAAI: bge-m3
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/embeddings·baai/bge-m3:text,token_ids→embedding- Welke velden gebruikt het verzoek?
POST /v1/embeddings·baai/bge-m3:model,input,encoding_format,provider- Welke limieten gelden?
POST /v1/embeddings·baai/bge-m3:ctx:8194;input.budget.maximum:8194(UTF8-bytes);input.min_items:1