OpenAI: Text Embedding 3 Small
Mažasis trečiosios kartos OpenAI teksto vektorinio kodavimo modelis pagal numatytąsias nuostatas grąžina 1 536 matmenų vektorius ir palaiko trumpesnius atvaizdus. Skaitinę išvestį naudokite semantinei paieškai, kodo paieškai, grupavimui, rekomendacijoms ir klasifikavimui.
- Ailoot Ultra · Įterpiniai
POST /v1/embeddingsopenai/text-embedding-3-small - Ailoot Ultra · Vektorinės reprezentacijos · text-embedding-3-small
POST /v1/embeddingstext-embedding-3-small
Apie modelį
Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.
text-embedding-3-small yra mažesnis trečiosios kartos OpenAI teksto vektorinio kodavimo modelis. Jis paverčia rašytinę medžiagą skaitiniais vektoriais, pagal numatytąsias nuostatas turinčiais 1 536 komponentus. Šie vektoriai įvertina tekstų sąsajas tolesniam paieškos ar analizės veiksmui; modelis negeneruoja pokalbio atsakymo į įvestį.
Kaip ir didesnis trečiosios kartos modelis, jis palaiko gamintojo dimensions parametrą, skirtą trumpesniems vektoriniams atvaizdams. Mokymas sukurtas taip, kad sutrumpintame vektoriuje išliktų sąvokas perteikianti informacija, o pasirinktas dydis turi įtakos programos kokybei ir išteklių poreikiui. Lygindami įrašus ir užklausas naudokite tą patį modelį ir pasirinktą matmenų skaičių.
Praktinis taikymas yra kodo paieška. Kūrėjo vadove aprašoma, kaip šaltinio funkcijas pateikti tekstu ir jas vektoriškai užkoduoti, tada tuo pačiu modeliu užkoduoti natūraliosios kalbos užklausą ir palyginti gautus vektorius. Pavyzdinis rezultatas – pagal tinkamumą surikiuotas funkcijų rinkinys su nuorodomis į jų vietas šaltinyje. Dokumentų paieškoje atitinkamas rezultatas yra ištraukų rinkinys, kurio tekstas ir originalios nuorodos lieka prieinami skaitytojui ar kitam modeliui.
Kiti dokumentuoti naudojimo būdai apima klasterizavimą, susijusio turinio rekomendacijas, klasifikavimą, išskirčių aptikimą ir įvairovės matavimą. Konkrečiai užduočiai skirtame darbo su pranešimais procese galima grupuoti panašius prašymus arba lyginti juos su kategorijų aprašais. Programa nustato, kaip panašumo rezultatas tampa kategorija, rekomendacija ar peržiūrėtinu elementu; pats vektorinis atvaizdas lieka skaitiniais duomenimis.
OpenAI nurodo didžiausią 8 192 žetonų įvestį vienam tekstui. Vektorinio kodavimo API priima eilutes arba į žetonus suskaidytą įvestį ir kelias įvestis vienoje užklausoje, atmeta tuščias eilutes ir taiko bendrą 300 000 žetonų ribą. Ilgą medžiagą paruoškite kaip prasmingas ištraukas, išsaugodami joms suprasti reikalingus pavadinimus ar apibrėžtis. Naudokite nuoseklų šaltinio laukų rinkinį, užuot skirtingų rūšių įrašus kodavę pagal nesusijusias paruošimo taisykles.
Gamintojas pagal numatytąsias nuostatas grąžina slankiojo kablelio skaičių vektorius ir taip pat dokumentuoja base64 kodavimą. Vadove nurodoma, kad OpenAI vektoriniai atvaizdai yra normalizuoti iki vienetinio ilgio, ir rekomenduojamas kosinusinis panašumas; jį galima apskaičiuoti skaliarine sandauga, o Euklido atstumas suteikia tokį patį rikiavimą. Jei trečiosios kartos vektorinis atvaizdas po grąžinimo sutrumpinamas rankiniu būdu, tą sutrumpintą vektorių vėl normalizuokite, kaip aprašyta vadove. dimensions parametras leidžia išvengti rankinio trumpinimo kaip įprasto paruošimo veiksmo.
Kartu su kiekvienu vektoriumi užrašykite modelio identifikatorių, matmenų skaičių ir nuorodą į šaltinį. Naudingas tolesnio apdorojimo rezultatas yra surikiuotas sąrašas, sugrupuotas rinkinys arba klasifikavimo požymių rinkinys, susietas su juos sukūrusiu tekstu. Patikrinkite, ar pasirinkta medžiaga iš tikrųjų padeda atlikti užduotį, ir atskirkite trūkstamus faktus nuo semantinio giminingumo. Tada kitas veiksmas gali panaudoti šį atvaizdą konkrečiam paieškos ar sprendimo priėmimo procesui.
Ailoot Ultra · Įterpiniai POST /v1/embeddings openai/text-embedding-3-small
openai/text-embedding-3-smallopenai/text-embedding-3-smalltext-embedding-3-small
Pradžia
Mažasis trečiosios kartos OpenAI teksto vektorinio kodavimo modelis pagal numatytąsias nuostatas grąžina 1 536 matmenų vektorius ir palaiko trumpesnius atvaizdus. Skaitinę išvestį naudokite semantinei paieškai, kodo paieškai, grupavimui, rekomendacijoms ir klasifikavimui.
- 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-3-small | 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.00004 / 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-3-small", "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-small',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-3-small, text-embedding-3-small
Metodų kelių pseudonimai
Naudokite aukščiau nurodytus metodų kelius.
Susiję ID iškvietimui
Ailoot Ultra · Vektorinės reprezentacijos · text-embedding-3-small POST /v1/embeddings text-embedding-3-small
text-embedding-3-smallopenai/text-embedding-3-smalltext-embedding-3-small
Pradžia
Mažasis trečiosios kartos OpenAI teksto vektorinio kodavimo modelis pagal numatytąsias nuostatas grąžina 1 536 matmenų vektorius ir palaiko trumpesnius atvaizdus. Skaitinę išvestį naudokite semantinei paieškai, kodo paieškai, grupavimui, rekomendacijoms ir klasifikavimui.
- Leidžiamos įvestys
- Tekstas
- Rezultatai
- embedding
Prieinama Ailoot · įvestys ir metodai
Ailoot Ultra · Vektorinės reprezentacijos · text-embedding-3-small 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-3-small | 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.00004 / 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-3-small
{
"model": "text-embedding-3-small",
"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-small', '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-small', '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-3-small
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-3-small, text-embedding-3-small
Metodų kelių pseudonimai
Naudokite aukščiau nurodytus metodų kelius.
Susiję ID iškvietimui
FAQ · OpenAI: Text Embedding 3 Small
- Kokios įvestys ir rezultatai prieinami?
POST /v1/embeddings·openai/text-embedding-3-small:text,token_ids→embeddingPOST /v1/embeddings·text-embedding-3-small:text→embedding- Kokius laukus naudoja užklausa?
POST /v1/embeddings·openai/text-embedding-3-small:model,input,encoding_format,providerPOST /v1/embeddings·text-embedding-3-small:model,input,encoding_format,provider- Kokie apribojimai taikomi?
POST /v1/embeddings·openai/text-embedding-3-small:ctx:8192;input.budget.maximum:8192(UTF8 baitai);input.min_items:1POST /v1/embeddings·text-embedding-3-small:ctx:8192;input.budget.maximum:8192(UTF8 baitai);input.min_items:1