OpenAI: Text Embedding 3 Large
OpenAI-jev večji model za vektorske vložitve besedila tretje generacije privzeto vrne 3072-dimenzionalne vektorje, proizvajalčeva nastavitev pa omogoča krajše predstavitve. Uporabite ga za semantično pridobivanje, večjezično primerjavo ter poteke sorodnih vsebin ali klasifikacije.
- Ailoot Ultra · Vektorske predstavitve
POST /v1/embeddingsopenai/text-embedding-3-large - Ailoot Ultra · Vektorske vložitve · text-embedding-3-large
POST /v1/embeddingstext-embedding-3-large
O modelu
Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.
text-embedding-3-large je OpenAI-jev večji model za vektorske vložitve besedila tretje generacije za naloge v angleščini in drugih jezikih. Pisno gradivo preslika v številski vektor in privzeto vrne 3072 komponent. Vektor predstavlja razmerja v posredovani vsebini; postopek pridobivanja ali klasifikacije ga uporabi za izbor gradiva ali drugo odločitev.
Modeli tretje generacije so naučeni podpirati krajše predstavitve prek proizvajalčeve nastavitve dimensions. Razvijalec kot primer navaja 1024 dimenzij, kadar vektorska shramba zahteva to velikost. Krajši vektor zmanjša količino podatkov za shranjevanje in primerjavo, sprememba predstavitve pa lahko vpliva na kakovost pridobivanja. Velikost izberite glede na potrebe aplikacije in isto izbiro uporabite za korpus ter njegove poizvedbe.
Ponazoritveni potek iskanja dokumentov razdeli izvorno gradivo na smiselne odlomke, ohrani njihove identifikatorje in pridobi vektorje za vsak odlomek. Vprašanje pretvori v vložitev z istim modelom in dimenzijami ter ga nato primerja z vektorji odlomkov. Aplikacija zagotovi filtre, izbere razvrščene rezultate in prikaže sklice na njihove vire. Naslednji model za ustvarjanje besedila lahko iz pridobljenega gradiva oblikuje odgovor; rezultat modela za vložitve ostaja številski podatek.
Druge dokumentirane uporabe vključujejo iskanje kode ali besedila, združevanje podobnih zapisov, priporočanje sorodnih vsebin, klasifikacijo, zaznavanje anomalij in merjenje raznolikosti zbirke. Za priporočilo opišite predmete z izrazi, pomembnimi za njihovo razmerje. Pri klasifikaciji primerjajte s predstavitvami kategorij ali uporabite vektorje kot značilke v klasifikatorju. Določite pravilo, ki podobnost pretvori v rezultat, potreben za izdelek.
OpenAI navaja največji vnos 8192 žetonov na besedilo. API za vložitve sprejema nize ali tokenizirano besedilo, podpira več vnosov in zavrača prazne nize. Uveljavlja tudi skupno omejitev 300 000 žetonov za eno zahtevo. Dolg dokument razdelite tako, da ohranite njegove smiselne meje in kontekst, vsak vektor pa naj ostane povezan s svojim izvornim odlomkom.
Proizvajalec dokumentira vektorje float kot privzeti izhod in base64 kot alternativno kodiranje. Vodnik priporoča kosinusno podobnost in navaja, da so OpenAI-jeve vložitve normalizirane na enotsko dolžino, zato je za kosinusno podobnost mogoč skalarni produkt, evklidska razdalja pa daje enakovredno razvrstitev. Če vektor tretje generacije po ustvarjanju ročno skrajšate, razvijalec naroča, da aplikacija skrajšani vektor znova normalizira; priporočena pot je uporaba nastavitve dimensions.
Pripravite dosledno besedilno predstavitev in zabeležite model, dimenzije ter identifikator vira. Uporaben končni izdelek je razvrščen nabor odlomkov, sorodnih postavk ali združenih zapisov z izrecnim pravilom izbora. Ocenite, ali rezultat odgovarja na poizvedbo, in ohranite izvorne dokaze za naslednjo stopnjo, namesto da bi vektorsko podobnost obravnavali kot preverjanje dejanskih trditev v zapisu.
Ailoot Ultra · Vektorske predstavitve POST /v1/embeddings openai/text-embedding-3-large
openai/text-embedding-3-largeopenai/text-embedding-3-largetext-embedding-3-large
Začetek
OpenAI-jev večji model za vektorske vložitve besedila tretje generacije privzeto vrne 3072-dimenzionalne vektorje, proizvajalčeva nastavitev pa omogoča krajše predstavitve. Uporabite ga za semantično pridobivanje, večjezično primerjavo ter poteke sorodnih vsebin ali klasifikacije.
- Dovoljeni vhodi
- Besedilo · token_ids
- Rezultati
- embedding
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · Vektorske predstavitve POST /v1/embeddings
- Vhod
text,token_ids- Izhod
embedding- Kontekst
- 8192 tokens
- Izhodni format
- json
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve openai/text-embedding-3-large | Privzeto— |
Poljeinput | Vrstastring|string[]|integer[]|integer[][] | ZahtevaObvezno | Vrednosti in omejitve Najmanjše število elementov: 1 Pogoji: Neprazen paket istovrstnih vhodnih podatkov. Identifikatorji žetonov so nenegativna cela števila. Vhodni proračun: Največ: 8192 · Besedilna enota: bajti UTF8 · Enota žetonov: elementi polja žetonov | Privzeto— |
Poljeencoding_format | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve float | Privzetofloat |
Poljedimensions | Vrstainteger | ZahtevaNi podprto | Vrednosti in omejitve Najmanj: 1 | Privzeto— |
Poljeuser | Vrstajson_value | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Izvor dovoljuje to polje metapodatkov JSON; natančen pomen pri ponudniku je odvisen od modela. | Privzeto— |
Poljesession_id | Vrstajson_value | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Izvor dovoljuje to polje metapodatkov JSON; natančen pomen pri ponudniku je odvisen od modela. | Privzeto— |
Poljetrace | Vrstajson_value | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Izvor dovoljuje to polje metapodatkov JSON; natančen pomen pri ponudniku je odvisen od modela. | Privzeto— |
Poljeprovider | Vrstaobject | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: provider.options je zavrnjen | Privzeto— |
Kombinacije vhodnih gradiv
text_to_embedding
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametercontent_type | Specifikacijaapplication/json |
Parameterrequired | Specifikacijamodel, input |
Parameterinput_shapes | Specifikacijastring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Specifikacijafloat |
Parameterdimensions_override | Specifikacijafalse |
Parametermax_input_budget_units | Specifikacija8192 |
Parametermultimodal_objects | Specifikacijafalse |
Parametermaterial_types | Specifikacijatext, token_ids |
Življenjski cikel: synchronous_json
Shranite indeks in dimenzijo vsakega vektorja.
Ime multimodalnega modela ne pomeni, da so na tej točno določeni poti dovoljeni slikovni objekti.
Cenik
Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.
- Hitri način
- Standardna tarifa Ko je izbran hitri način
- Način flex
- Standardna tarifa Ko je izbran način flex
- Najvišja raven razmišljanja
- Standardna tarifa Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)
Cene Ailoot
Cene po nastavitvah
| Nastavitev | Cenovna lestvica | Strošek |
|---|---|---|
| NastavitevOsnovne cene za žetone | Cenovna lestvicaOsnovna cena | Strošek Vhod · Vhodni žetoni $0.00026 / 1K žetonov Izhod · Izhodni žetoni $0 / 1K žetonov Vhod · Branje predpomnilnika — / 1K žetonov Vhod · Zapis v predpomnilnik — / 1K žetonov Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov |
Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →
Primeri zahtev
Ailoot Ultra · Vektorske predstavitve
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "openai/text-embedding-3-large", "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='openai/text-embedding-3-large',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Prejmi in shrani rezultate
Ailoot Ultra · Vektorske predstavitve
json
Ohrani vse dokončane rezultate
Shranite vsak v celoti vrnjen odgovor, datoteko in del vsebine.
Shranite vsak vektor skupaj z njegovim indeksom. Število vektorjev mora biti enako številu vhodov; dimenzije morajo biti skladne.
Če je treba preveriti izvirni odgovor
Končna točka za opravila ustvarjanja vektorskih predstavitev se ne uvaja.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljeobject | Vrstastring |
Poljemodel | Vrstastring |
Poljedata[].index | Vrstainteger |
Poljedata[].embedding | Vrstafinite float[] |
Poljeusage | Vrstaobject |
Napake in naslednji koraki
| Odgovor | Pogoj | Naslednji korak |
|---|---|---|
Odgovor400 · invalid_request_error | PogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametra | Naslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja. |
Druga imena
Druga imena modelov
Ailoot Ultra openai/text-embedding-3-large, text-embedding-3-large
Druga imena poti metod
Uporabite zgoraj navedene poti metod.
Povezani ID-ji za klic
Ailoot Ultra · Vektorske vložitve · text-embedding-3-large POST /v1/embeddings text-embedding-3-large
text-embedding-3-largeopenai/text-embedding-3-largetext-embedding-3-large
Začetek
OpenAI-jev večji model za vektorske vložitve besedila tretje generacije privzeto vrne 3072-dimenzionalne vektorje, proizvajalčeva nastavitev pa omogoča krajše predstavitve. Uporabite ga za semantično pridobivanje, večjezično primerjavo ter poteke sorodnih vsebin ali klasifikacije.
- Dovoljeni vhodi
- Besedilo
- Rezultati
- embedding
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · Vektorske vložitve · text-embedding-3-large POST /v1/embeddings
- Vhod
text- Izhod
embedding- Kontekst
- 8192 tokens
- Izhodni format
- json
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve text-embedding-3-large | Privzeto— |
Poljeinput | Vrstastring|string[]|integer[]|integer[][] | ZahtevaObvezno | Vrednosti in omejitve Najmanjše število elementov: 1 Pogoji: Neprazen paket istovrstnih vhodnih podatkov. Identifikatorji žetonov so nenegativna cela števila. Vhodni proračun: Največ: 8192 · Besedilna enota: bajti UTF8 · Enota žetonov: elementi polja žetonov | Privzeto— |
Poljeencoding_format | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve float | Privzetofloat |
Poljedimensions | Vrstainteger | ZahtevaNi podprto | Vrednosti in omejitve Najmanj: 1 | Privzeto— |
Poljeuser | Vrstajson_value | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Neobvezni metapodatki JSON; natančna semantika nadrejenega sistema je odvisna od izbranega modela. | Privzeto— |
Poljesession_id | Vrstajson_value | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Neobvezni metapodatki JSON; natančna semantika nadrejenega sistema je odvisna od izbranega modela. | Privzeto— |
Poljetrace | Vrstajson_value | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Neobvezni metapodatki JSON; natančna semantika nadrejenega sistema je odvisna od izbranega modela. | Privzeto— |
Poljeprovider | Vrstaobject | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: provider.options je zavrnjen | Privzeto— |
Kombinacije vhodnih gradiv
text_to_embedding
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametercontent_type | Specifikacijaapplication/json |
Parameterrequired | Specifikacijamodel, input |
Parameterinput_shapes | Specifikacijastring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Specifikacijafloat |
Parameterdimensions_override | Specifikacijafalse |
Parametermax_input_budget_units | Specifikacija8192 |
Parametermultimodal_objects | Specifikacijafalse |
Parametermaterial_types | Specifikacijatext |
Parametertext_file_material | SpecifikacijaPreberite dejanski dokument UTF-8 in njegovo besedilo vstavite v navedeni vhodni niz ali niz vsebine sporočila. |
Življenjski cikel: synchronous_json
Pošljite natančni ID modela in obvezna polja.
Ohranite vsak vrnjeni element in njegove prvotne identifikatorje.
Cenik
Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.
- Hitri način
- Standardna tarifa Ko je izbran hitri način
- Način flex
- Standardna tarifa Ko je izbran način flex
- Najvišja raven razmišljanja
- Standardna tarifa Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)
Cene Ailoot
Cene po nastavitvah
| Nastavitev | Cenovna lestvica | Strošek |
|---|---|---|
| NastavitevOsnovne cene za žetone | Cenovna lestvicaOsnovna cena | Strošek Vhod · Vhodni žetoni $0.00026 / 1K žetonov Izhod · Izhodni žetoni $0 / 1K žetonov Vhod · Branje predpomnilnika — / 1K žetonov Vhod · Zapis v predpomnilnik — / 1K žetonov Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov |
Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →
Primeri zahtev
Ailoot Ultra · Vektorske vložitve · text-embedding-3-large
{
"model": "text-embedding-3-large",
"input": [
"First document",
"Second document"
],
"encoding_format": "float"
}set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'text-embedding-3-large', 'input': ['First document', 'Second document'], 'encoding_format': 'float'}
payload['input'] = [text]
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
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
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
for vector in result.get('data', []):
print('Vector', vector.get('index'), json.dumps(vector.get('embedding')))
PY_RESULT
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'text-embedding-3-large', 'input': ['First document', 'Second document'], 'encoding_format': 'float'}
payload['input'] = [text]
from urllib.request import Request, urlopen
from urllib.error import HTTPError
api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'Authorization': 'Bearer PLACEHOLDER_KEY', 'Content-Type': 'application/json'}
headers['Authorization'] = 'Bearer ' + api_key
request = Request('https://api.ailoot.ai/v1/embeddings', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
with urlopen(request, timeout=120) as response:
raw = response.read()
Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
Path('result.json').write_bytes(error.read())
Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
for vector in result.get('data', []):
print('Vector', vector.get('index'), json.dumps(vector.get('embedding')))
Prejmi in shrani rezultate
Ailoot Ultra · Vektorske vložitve · text-embedding-3-large
json
Ohrani vse dokončane rezultate
Shranite vsak v celoti vrnjen odgovor, datoteko in del vsebine.
Ohranite vsak vektor s končnimi vrednostmi in njegovim izvirnim indeksom. Ohranite vse dimenzije in celoten objekt porabe.
Če je treba preveriti izvirni odgovor
Končna točka za opravila ustvarjanja vektorskih predstavitev se ne uvaja.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljeobject | Vrstastring |
Poljemodel | Vrstastring |
Poljedata[].index | Vrstainteger |
Poljedata[].embedding | Vrstafinite float[] |
Poljeusage | Vrstaobject |
Napake in naslednji koraki
| Odgovor | Pogoj | Naslednji korak |
|---|---|---|
Odgovor400 · invalid_request_error | PogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametra | Naslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja. |
Druga imena
Druga imena modelov
Ailoot Ultra openai/text-embedding-3-large, text-embedding-3-large
Druga imena poti metod
Uporabite zgoraj navedene poti metod.
Povezani ID-ji za klic
FAQ · OpenAI: Text Embedding 3 Large
- Kateri vhodi in rezultati so na voljo?
POST /v1/embeddings·openai/text-embedding-3-large:text,token_ids→embeddingPOST /v1/embeddings·text-embedding-3-large:text→embedding- Katera polja uporablja zahteva?
POST /v1/embeddings·openai/text-embedding-3-large:model,input,encoding_format,providerPOST /v1/embeddings·text-embedding-3-large:model,input,encoding_format,provider- Katere omejitve veljajo?
POST /v1/embeddings·openai/text-embedding-3-large:ctx:8192;input.budget.maximum:8192(bajti UTF8);input.min_items:1POST /v1/embeddings·text-embedding-3-large:ctx:8192;input.budget.maximum:8192(bajti UTF8);input.min_items:1