OpenAI: Text Embedding Ada 002
OpenAI-jev model za vektorske vložitve besedila, ki vrne 1536-dimenzionalni številski vektor. Te predstavitve uporabite za semantično iskanje, priporočanje sorodnih vsebin, razvrščanje v skupine, klasifikacijo ali zaznavanje neobičajnih besedilnih zapisov.
- Ailoot Ultra · Vektorske predstavitve
POST /v1/embeddingsopenai/text-embedding-ada-002 - Ailoot Ultra · Vektorske vložitve · text-embedding-ada-002
POST /v1/embeddingstext-embedding-ada-002
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-ada-002 je OpenAI-jev model za vektorske vložitve besedila, ki pisno gradivo predstavi kot številski vektor. Njegov izhod vsebuje 1536 komponent. Razvijalec v eni predstavitvi združuje podobnost besedil, iskanje dokumentov in poizvedb ter iskanje kode. Rezultat so podatki za primerjavo ali drug algoritem, ne ustvarjen odgovor na besedilo, ki ga pretvarjate v vložitev.
Za semantično iskanje pripravite smiselne odlomke dokumentov in ohranite njihove identifikatorje virov. Ponazoritveni potek pretvori vsak odlomek in uporabnikovo vprašanje v vložitev z istim modelom, primerja vektorje ter vrne ustrezne izvorne odlomke. Aplikacija določi pravilo pridobivanja, filtre in predstavitev. Naslednji korak ustvarjanja besedila lahko pridobljeno gradivo uporabi za oblikovanje odgovora, model za vložitve pa zagotovi številsko predstavitev.
Druge dokumentirane uporabe vključujejo združevanje podobnih zapisov, priporočanje sorodnih vsebin, klasifikacijo besedil in prepoznavanje odstopanj. Za priporočilo primerjajte opise predmetov, pri katerih je razmerje pomembno. Pri klasifikaciji vodnik opisuje primerjavo s predstavitvami kategorij ali uporabo vektorjev kot značilk v klasifikatorju. Pri zaznavanju anomalij je ustrezen rezultat zapis, ki se razlikuje od okoliške zbirke in je interpretiran glede na nalogo izdelka.
OpenAI za ta model navaja največji vnos 8192 žetonov. Proizvajalčev API za vložitve sprejema besedilne nize ali tokeniziran vnos, dovoljuje več vnosov v eni zahtevi in zavrača prazne nize. Poleg omejitve posameznega vnosa je skupna omejitev ene zahteve 300 000 žetonov. Daljše dokumente razdelite na uporabne odlomke, pri čemer ohranite naslove, definicije in sklic na izvirno gradivo.
Izhod je vektor vrednosti s plavajočo vejico; proizvajalec dokumentira tudi base64 kot alternativno kodiranje prenosa. OpenAI-jev parameter za krajšanje dimenzij je namenjen modelom za vložitve tretje generacije in novejšim, zato dokumentirani 1536-dimenzionalni rezultat modela Ada ohranite ločen od te nastavitve. Identiteto modela in vektor shranite z izvornim zapisom, da poznejše primerjave uporabljajo dosledno predstavitev.
Vodnik za vložitve priporoča kosinusno podobnost in navaja, da so OpenAI-jeve vložitve normalizirane na enotsko dolžino. Pri teh vektorjih lahko kosinusno podobnost izračuna skalarni produkt, evklidska razdalja pa daje enako razvrstitev. Ocena podobnosti je del aplikacijske logike pridobivanja ali klasifikacije, ne kategorična odločitev, ki bi jo model samodejno podal.
Določite, katera izvorna polja sestavljajo vhodno besedilo in kako naj bodo odlomki razdeljeni. Ponazoritveni rezultat je razvrščen nabor odlomkov dokumentov ali sorodnih zapisov, od katerih je vsak povezan z izvirnim virom in pravilom, uporabljenim za izbor. Ohranite dosledno pripravo in ocenite, ali vrnjeno gradivo odgovarja na dejansko vprašanje. Tako postane številski izhod uporaben za naslednji korak iskanja, priporočanja ali analize.
Ailoot Ultra · Vektorske predstavitve POST /v1/embeddings openai/text-embedding-ada-002
openai/text-embedding-ada-002openai/text-embedding-ada-002text-embedding-ada-002
Začetek
OpenAI-jev model za vektorske vložitve besedila, ki vrne 1536-dimenzionalni številski vektor. Te predstavitve uporabite za semantično iskanje, priporočanje sorodnih vsebin, razvrščanje v skupine, klasifikacijo ali zaznavanje neobičajnih besedilnih zapisov.
- 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-ada-002 | 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.0002 / 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-ada-002", "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-ada-002',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-ada-002, text-embedding-ada-002
Druga imena poti metod
Uporabite zgoraj navedene poti metod.
Povezani ID-ji za klic
Ailoot Ultra · Vektorske vložitve · text-embedding-ada-002 POST /v1/embeddings text-embedding-ada-002
text-embedding-ada-002openai/text-embedding-ada-002text-embedding-ada-002
Začetek
OpenAI-jev model za vektorske vložitve besedila, ki vrne 1536-dimenzionalni številski vektor. Te predstavitve uporabite za semantično iskanje, priporočanje sorodnih vsebin, razvrščanje v skupine, klasifikacijo ali zaznavanje neobičajnih besedilnih zapisov.
- Dovoljeni vhodi
- Besedilo
- Rezultati
- embedding
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · Vektorske vložitve · text-embedding-ada-002 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-ada-002 | 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.0002 / 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-ada-002
{
"model": "text-embedding-ada-002",
"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-ada-002', '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-ada-002', '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-ada-002
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-ada-002, text-embedding-ada-002
Druga imena poti metod
Uporabite zgoraj navedene poti metod.
Povezani ID-ji za klic
FAQ · OpenAI: Text Embedding Ada 002
- Kateri vhodi in rezultati so na voljo?
POST /v1/embeddings·openai/text-embedding-ada-002:text,token_ids→embeddingPOST /v1/embeddings·text-embedding-ada-002:text→embedding- Katera polja uporablja zahteva?
POST /v1/embeddings·openai/text-embedding-ada-002:model,input,encoding_format,providerPOST /v1/embeddings·text-embedding-ada-002:model,input,encoding_format,provider- Katere omejitve veljajo?
POST /v1/embeddings·openai/text-embedding-ada-002:ctx:8192;input.budget.maximum:8192(bajti UTF8);input.min_items:1POST /v1/embeddings·text-embedding-ada-002:ctx:8192;input.budget.maximum:8192(bajti UTF8);input.min_items:1