OpenAI: Text Embedding Ada 002
OpenAI teksto įterpinių modelis, grąžinantis 1536 matmenų skaitinį vektorių. Šias reprezentacijas naudokite semantinei paieškai, susijusio turinio rekomendacijoms, grupavimui į klasterius, klasifikavimui ar neįprastų tekstinių įrašų aptikimui.
- Ailoot Ultra · Įterpiniai
POST /v1/embeddingsopenai/text-embedding-ada-002 - Ailoot Ultra · Vektorinės reprezentacijos · text-embedding-ada-002
POST /v1/embeddingstext-embedding-ada-002
Apie modelį
Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.
text-embedding-ada-002 yra OpenAI teksto įterpinių modelis rašytinei medžiagai atvaizduoti skaitiniu vektoriumi. Jo išvestis turi 1536 komponentus. Gamintojas vienoje reprezentacijoje sujungia tekstų panašumo, dokumentų paieškos pagal užklausas ir kodo paieškos užduotis. Rezultatas yra duomenys palyginimui ar kitam algoritmui, o ne sugeneruotas atsakymas į tekstą, kurio įterpinys kuriamas.
Semantinei paieškai paruoškite prasmingas dokumentų ištraukas ir išsaugokite jų šaltinių identifikatorius. Iliustracinis procesas tuo pačiu modeliu sukuria kiekvienos ištraukos ir naudotojo klausimo įterpinius, palygina vektorius ir grąžina aktualias šaltinio ištraukas. Programa nustato paieškos taisyklę, filtrus ir pateikimą. Vėlesnis teksto generavimo veiksmas gali naudoti rastą medžiagą atsakymui parengti, o įterpinių modelis pateikia skaitinį atvaizdą.
Kiti dokumentuoti naudojimo būdai apima panašių įrašų grupavimą, susijusio turinio rekomendavimą, teksto klasifikavimą ir išskirčių nustatymą. Rekomendacijai lyginkite objektų, kurių ryšys svarbus, aprašymus. Klasifikavimui vadovas aprašo palyginimą su kategorijų reprezentacijomis arba vektorių naudojimą kaip požymius klasifikatoriuje. Anomalijų aptikimui aktualus rezultatas yra įrašas, besiskiriantis nuo aplinkinės kolekcijos, interpretuojamas pagal produkto užduotį.
OpenAI šiam modeliui nurodo didžiausią 8192 žetonų įvestį. Gamintojo įterpinių API priima tekstines eilutes arba į žetonus suskaidytą įvestį, leidžia kelias įvestis vienoje užklausoje ir atmeta tuščias eilutes. Bendras limitas yra 300 000 žetonų vienai užklausai, papildomai prie atskiros įvesties ribos. Ilgesnius dokumentus skaidykite į naudingas ištraukas, išsaugodami pavadinimus, apibrėžimus ir nuorodą atgal į originalią medžiagą.
Išvestis yra slankiojo kablelio reikšmių vektorius; gamintojas taip pat dokumentuoja base64 kaip alternatyvią perdavimo koduotę. OpenAI matmenų mažinimo parametras skirtas trečiosios ir vėlesnių kartų įterpinių modeliams, todėl dokumentuotas Ada modelio 1536 matmenų rezultatas laikomas atskiru nuo šio valdiklio. Modelio tapatybę ir vektorių saugokite su šaltinio įrašu, kad vėlesni palyginimai naudotų nuoseklią reprezentaciją.
Įterpinių vadovas rekomenduoja kosinuso panašumą ir nurodo, kad OpenAI įterpiniai normalizuoti iki vienetinės normos. Tokiems vektoriams skaliarinė sandauga gali apskaičiuoti kosinuso panašumą, o Euklido atstumas pateikia tą patį rikiavimą. Panašumo balas yra programos paieškos ar klasifikavimo logikos dalis, o ne automatiškai modelio pateiktas sprendimas dėl kategorijos.
Apibrėžkite, kurie šaltinio laukai tampa įvesties tekstu ir kaip reikia skaidyti ištraukas. Iliustracinis rezultatas yra surikiuotas dokumentų ištraukų ar susijusių įrašų rinkinys, kurio kiekvienas elementas susietas su originaliu šaltiniu ir atrankai naudota taisykle. Paruošimą išlaikykite nuoseklų ir įvertinkite, ar grąžinta medžiaga atsako į tikrąjį klausimą. Taip skaitinė išvestis tampa naudinga kitam paieškos, rekomendavimo ar analizės veiksmui.
Ailoot Ultra · Įterpiniai POST /v1/embeddings openai/text-embedding-ada-002
openai/text-embedding-ada-002openai/text-embedding-ada-002text-embedding-ada-002
Pradžia
OpenAI teksto įterpinių modelis, grąžinantis 1536 matmenų skaitinį vektorių. Šias reprezentacijas naudokite semantinei paieškai, susijusio turinio rekomendacijoms, grupavimui į klasterius, klasifikavimui ar neįprastų tekstinių įrašų aptikimui.
- Leidžiamos įvestys
- Tekstas · token_ids
- Rezultatai
- embedding
Prieinama Ailoot · įvestys ir metodai
Ailoot Ultra · Įterpiniai POST /v1/embeddings
- Įvestis
text,token_ids- Išvestis
embedding- Kontekstas
- 8 192 tokens
- Išvesties formatas
- json
| Laukas | Tipas | Reikalavimas | Reikšmės ir ribos | Numatyta |
|---|---|---|---|---|
Laukasmodel | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos openai/text-embedding-ada-002 | Numatyta— |
Laukasinput | Tipasstring|string[]|integer[]|integer[][] | ReikalavimasPrivaloma | Reikšmės ir ribos Mažiausias elementų skaičius: 1 Sąlygos: Netuščias vienalyčių įvesčių paketas. Žetonų ID yra neneigiami sveikieji skaičiai. Įvesties biudžetas: Didžiausia reikšmė: 8 192 · Teksto vienetas: UTF8 baitai · Tokenų vienetas: žetonų masyvo elementai | Numatyta— |
Laukasencoding_format | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos float | Numatytafloat |
Laukasdimensions | Tipasinteger | ReikalavimasNepalaikoma | Reikšmės ir ribos Mažiausia reikšmė: 1 | Numatyta— |
Laukasuser | Tipasjson_value | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: Šaltinis leidžia šį JSON metaduomenų lauką; tiksli jo reikšmė tiekėjo sistemoje priklauso nuo modelio. | Numatyta— |
Laukassession_id | Tipasjson_value | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: Šaltinis leidžia šį JSON metaduomenų lauką; tiksli jo reikšmė tiekėjo sistemoje priklauso nuo modelio. | Numatyta— |
Laukastrace | Tipasjson_value | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: Šaltinis leidžia šį JSON metaduomenų lauką; tiksli jo reikšmė tiekėjo sistemoje priklauso nuo modelio. | Numatyta— |
Laukasprovider | Tipasobject | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: provider.options atmetamas | Numatyta— |
Įvesties medžiagos deriniai
text_to_embedding
Metodo parametrai ir gyvavimo ciklas
| Parametras | Specifikacija |
|---|---|
Parametrascontent_type | Specifikacijaapplication/json |
Parametrasrequired | Specifikacijamodel, input |
Parametrasinput_shapes | Specifikacijastring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parametrasencoding_format | Specifikacijafloat |
Parametrasdimensions_override | Specifikacijafalse |
Parametrasmax_input_budget_units | Specifikacija8192 |
Parametrasmultimodal_objects | Specifikacijafalse |
Parametrasmaterial_types | Specifikacijatext, token_ids |
Gyvavimo ciklas: synchronous_json
Išsaugokite kiekvieną vektoriaus indeksą ir matmenį.
Tai, kad modelio pavadinimas nurodo multimodalumą, nereiškia, jog šiuo konkrečiu keliu priimami vaizdų objektai.
Planai
Tarifų informacija neprideda užklausos parinkčių. Palaikomi parametrai nurodyti prie pasirinkto metodo.
- Spartusis režimas
- Standartinis įkainis Pasirinkus spartųjį režimą
- Flex režimas
- Standartinis įkainis Pasirinkus flex režimą
- Didžiausios samprotavimo pastangos
- Standartinis įkainis Kai didžiausioms samprotavimo pastangoms taikomas numatytasis koregavimas (default)
Ailoot įkainiai
Kainos pagal konfigūraciją
| Konfigūracija | Įkainių lentelė | Mokestis |
|---|---|---|
| KonfigūracijaBaziniai žetonų įkainiai | Įkainių lentelėBazinis įkainis | Mokestis Įvestis · Įvesties tokenai $0.0002 / 1K tokenų Išvestis · Išvesties tokenai $0 / 1K tokenų Įvestis · Talpyklos skaitymas — / 1K tokenų Įvestis · Rašymas į talpyklą — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val — / 1K tokenų |
Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. Kaip veikia rezervavimas ir atsiskaitymas →
Užklausų pavyzdžiai
Ailoot Ultra · Įterpiniai
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)
Gauti ir išsaugoti rezultatus
Ailoot Ultra · Įterpiniai
json
Išsaugoti visus baigtus rezultatus
Išsaugokite kiekvieną visą grąžintą atsakymą, failą ir turinio dalį.
Išsaugokite kiekvieną vektorių su jo indeksu. Vektorių skaičius turi sutapti su įvesčių skaičiumi; jų matmenų skaičius turi būti vienodas.
Jei reikia patikrinti pradinį atsakymą
Vektorių generavimo užduotims atskiras API galinis taškas neįvedamas.
Atsakymo laukai
| Laukas | Tipas |
|---|---|
Laukasobject | Tipasstring |
Laukasmodel | Tipasstring |
Laukasdata[].index | Tipasinteger |
Laukasdata[].embedding | Tipasfinite float[] |
Laukasusage | Tipasobject |
Klaidos ir tolesni veiksmai
| Atsakymas | Sąlyga | Kitas žingsnis |
|---|---|---|
Atsakymas400 · invalid_request_error | SąlygaNetinkami privalomi laukai, medžiagos pateikimo forma arba parametro reikšmė | Kitas žingsnisPrieš naują kūrimo užklausą pataisykite nurodytus laukus. |
Pseudonimai
Modelių pseudonimai
Ailoot Ultra openai/text-embedding-ada-002, text-embedding-ada-002
Metodų kelių pseudonimai
Naudokite aukščiau nurodytus metodų kelius.
Susiję ID iškvietimui
Ailoot Ultra · Vektorinės reprezentacijos · text-embedding-ada-002 POST /v1/embeddings text-embedding-ada-002
text-embedding-ada-002openai/text-embedding-ada-002text-embedding-ada-002
Pradžia
OpenAI teksto įterpinių modelis, grąžinantis 1536 matmenų skaitinį vektorių. Šias reprezentacijas naudokite semantinei paieškai, susijusio turinio rekomendacijoms, grupavimui į klasterius, klasifikavimui ar neįprastų tekstinių įrašų aptikimui.
- Leidžiamos įvestys
- Tekstas
- Rezultatai
- embedding
Prieinama Ailoot · įvestys ir metodai
Ailoot Ultra · Vektorinės reprezentacijos · text-embedding-ada-002 POST /v1/embeddings
- Įvestis
text- Išvestis
embedding- Kontekstas
- 8 192 tokens
- Išvesties formatas
- json
| Laukas | Tipas | Reikalavimas | Reikšmės ir ribos | Numatyta |
|---|---|---|---|---|
Laukasmodel | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos text-embedding-ada-002 | Numatyta— |
Laukasinput | Tipasstring|string[]|integer[]|integer[][] | ReikalavimasPrivaloma | Reikšmės ir ribos Mažiausias elementų skaičius: 1 Sąlygos: Netuščias vienalyčių įvesčių paketas. Žetonų ID yra neneigiami sveikieji skaičiai. Įvesties biudžetas: Didžiausia reikšmė: 8 192 · Teksto vienetas: UTF8 baitai · Tokenų vienetas: žetonų masyvo elementai | Numatyta— |
Laukasencoding_format | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos float | Numatytafloat |
Laukasdimensions | Tipasinteger | ReikalavimasNepalaikoma | Reikšmės ir ribos Mažiausia reikšmė: 1 | Numatyta— |
Laukasuser | Tipasjson_value | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: Neprivalomi JSON metaduomenys; tiksli teikėjo sistemos semantika priklauso nuo pasirinkto modelio. | Numatyta— |
Laukassession_id | Tipasjson_value | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: Neprivalomi JSON metaduomenys; tiksli teikėjo sistemos semantika priklauso nuo pasirinkto modelio. | Numatyta— |
Laukastrace | Tipasjson_value | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: Neprivalomi JSON metaduomenys; tiksli teikėjo sistemos semantika priklauso nuo pasirinkto modelio. | Numatyta— |
Laukasprovider | Tipasobject | ReikalavimasNeprivaloma | Reikšmės ir ribos Sąlygos: provider.options atmetamas | Numatyta— |
Įvesties medžiagos deriniai
text_to_embedding
Metodo parametrai ir gyvavimo ciklas
| Parametras | Specifikacija |
|---|---|
Parametrascontent_type | Specifikacijaapplication/json |
Parametrasrequired | Specifikacijamodel, input |
Parametrasinput_shapes | Specifikacijastring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parametrasencoding_format | Specifikacijafloat |
Parametrasdimensions_override | Specifikacijafalse |
Parametrasmax_input_budget_units | Specifikacija8192 |
Parametrasmultimodal_objects | Specifikacijafalse |
Parametrasmaterial_types | Specifikacijatext |
Parametrastext_file_material | SpecifikacijaPerskaitykite tikrąjį UTF-8 dokumentą ir įterpkite jo tekstą į nurodytą input lauką arba pranešimo turinio eilutę. |
Gyvavimo ciklas: synchronous_json
Siųskite tikslų modelio ID ir privalomus laukus.
Išsaugokite kiekvieną grąžintą elementą ir jo pradinius identifikatorius.
Planai
Tarifų informacija neprideda užklausos parinkčių. Palaikomi parametrai nurodyti prie pasirinkto metodo.
- Spartusis režimas
- Standartinis įkainis Pasirinkus spartųjį režimą
- Flex režimas
- Standartinis įkainis Pasirinkus flex režimą
- Didžiausios samprotavimo pastangos
- Standartinis įkainis Kai didžiausioms samprotavimo pastangoms taikomas numatytasis koregavimas (default)
Ailoot įkainiai
Kainos pagal konfigūraciją
| Konfigūracija | Įkainių lentelė | Mokestis |
|---|---|---|
| KonfigūracijaBaziniai žetonų įkainiai | Įkainių lentelėBazinis įkainis | Mokestis Įvestis · Įvesties tokenai $0.0002 / 1K tokenų Išvestis · Išvesties tokenai $0 / 1K tokenų Įvestis · Talpyklos skaitymas — / 1K tokenų Įvestis · Rašymas į talpyklą — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val — / 1K tokenų |
Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. Kaip veikia rezervavimas ir atsiskaitymas →
Užklausų pavyzdžiai
Ailoot Ultra · Vektorinės reprezentacijos · 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')))
Gauti ir išsaugoti rezultatus
Ailoot Ultra · Vektorinės reprezentacijos · text-embedding-ada-002
json
Išsaugoti visus baigtus rezultatus
Išsaugokite kiekvieną visą grąžintą atsakymą, failą ir turinio dalį.
Išsaugokite kiekvieną vektorių su baigtinėmis reikšmėmis ir jo pradinį indeksą. Išsaugokite visas dimensijas ir visą naudojimo duomenų objektą.
Jei reikia patikrinti pradinį atsakymą
Vektorių generavimo užduotims atskiras API galinis taškas neįvedamas.
Atsakymo laukai
| Laukas | Tipas |
|---|---|
Laukasobject | Tipasstring |
Laukasmodel | Tipasstring |
Laukasdata[].index | Tipasinteger |
Laukasdata[].embedding | Tipasfinite float[] |
Laukasusage | Tipasobject |
Klaidos ir tolesni veiksmai
| Atsakymas | Sąlyga | Kitas žingsnis |
|---|---|---|
Atsakymas400 · invalid_request_error | SąlygaNetinkami privalomi laukai, medžiagos pateikimo forma arba parametro reikšmė | Kitas žingsnisPrieš naują kūrimo užklausą pataisykite nurodytus laukus. |
Pseudonimai
Modelių pseudonimai
Ailoot Ultra openai/text-embedding-ada-002, text-embedding-ada-002
Metodų kelių pseudonimai
Naudokite aukščiau nurodytus metodų kelius.
Susiję ID iškvietimui
FAQ · OpenAI: Text Embedding Ada 002
- Kokios įvestys ir rezultatai prieinami?
POST /v1/embeddings·openai/text-embedding-ada-002:text,token_ids→embeddingPOST /v1/embeddings·text-embedding-ada-002:text→embedding- Kokius laukus naudoja užklausa?
POST /v1/embeddings·openai/text-embedding-ada-002:model,input,encoding_format,providerPOST /v1/embeddings·text-embedding-ada-002:model,input,encoding_format,provider- Kokie apribojimai taikomi?
POST /v1/embeddings·openai/text-embedding-ada-002:ctx:8192;input.budget.maximum:8192(UTF8 baitai);input.min_items:1POST /v1/embeddings·text-embedding-ada-002:ctx:8192;input.budget.maximum:8192(UTF8 baitai);input.min_items:1