OpenAI: Text Embedding 3 Small
OpenAI:n pieni kolmannen sukupolven tekstiupotusmalli palauttaa oletuksena 1 536-ulotteisia vektoreita ja tukee lyhyempiä esityksiä. Käytä numeerista tulostetta semanttiseen hakuun, koodihakuun, ryhmittelyyn, suositteluun ja luokitteluun.
- Ailoot Ultra · Vektoriesitykset
POST /v1/embeddingsopenai/text-embedding-3-small - Ailoot Ultra · Upotukset · text-embedding-3-small
POST /v1/embeddingstext-embedding-3-small
Tietoa mallista
Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.
text-embedding-3-small on OpenAI:n pienempi kolmannen sukupolven tekstiupotusmalli. Se muuntaa kirjoitetun aineiston numeerisiksi vektoreiksi, joissa on oletuksena 1 536 komponenttia. Vektorit mittaavat tekstien välisiä suhteita seuraavaa haku- tai analyysivaihetta varten; malli ei generoi syötteeseen keskusteluvastausta.
Suuremman kolmannen sukupolven mallin tavoin se tukee tuottajan dimensions-säätöä lyhyempiin upotuksiin. Koulutus on suunniteltu säilyttämään käsitteitä esittävää tietoa lyhennetyssä vektorissa, ja kokovalinta vaikuttaa sovelluksen laatuun ja resurssivaatimuksiin. Pidä malli ja valitut ulottuvuusmäärät yhdenmukaisina vertailtavien tietueiden ja kyselyjen kesken.
Käytännön sovellus on koodihaku. Valmistajan opas kuvaa lähdekoodin funktioiden esittämisen tekstinä ja niiden upottamisen, minkä jälkeen luonnollisen kielen kysely upotetaan samalla mallilla ja saatuja vektoreita verrataan. Havainnollinen tulos on järjestetty joukko olennaisia funktioita yhdistettynä niiden sijainteihin lähteessä. Asiakirjahaun vastaava tuotos on joukko tekstijaksoja, joiden teksti ja alkuperäiset viitteet pysyvät lukijan tai seuraavan mallin saatavilla.
Muita dokumentoituja käyttötapoja ovat klusterointi, liittyvän sisällön suosittelu, luokittelu, poikkeavien havaintojen tunnistaminen ja monimuotoisuuden mittaaminen. Rajattu viestityönkulku voi ryhmitellä samanlaisia pyyntöjä tai verrata niitä luokkien kuvauksiin. Sovellus määrittää, miten samankaltaisuustulos muuttuu luokaksi, suositukseksi tai tarkasteltavaksi kohteeksi; itse upotus pysyy numeerisena datana.
OpenAI määrittää enimmäissyötteeksi 8 192 tokenia tekstiä kohden. Sen upotusrajapinta hyväksyy merkkijonoja tai tokenisoituja syötteitä ja useita syötteitä yhdessä pyynnössä, hylkää tyhjät merkkijonot ja soveltaa 300 000 tokenin kokonaisrajaa. Valmistele pitkä aineisto mielekkäiksi tekstijaksoiksi ja säilytä niiden tulkintaan tarvittavat otsikot tai määritelmät. Käytä yhtenäistä lähdekenttien joukkoa sen sijaan, että upottaisit erilaisia tietueita toisiinsa liittymättömillä valmistelusäännöillä.
Tuottaja palauttaa oletuksena liukulukuvektoreita ja dokumentoi myös base64-koodauksen. Opas kertoo OpenAI:n upotusten olevan normalisoituja yksikköpituuteen ja suosittelee kosinisamankaltaisuutta; pistetulo voi laskea sen, ja euklidinen etäisyys antaa saman järjestyksen. Jos kolmannen sukupolven upotusta lyhennetään käsin palauttamisen jälkeen, normalisoi lyhennetty vektori uudelleen oppaan kuvaamalla tavalla. dimensions-säädöllä vältetään manuaalisen katkaisun tekeminen tavanomaiseksi valmisteluvaiheeksi.
Kirjaa mallin identiteetti, ulottuvuusmäärä ja lähdelinkki jokaisen vektorin yhteyteen. Hyödyllinen jatkotuotos on järjestetty luettelo, ryhmitelty kokoelma tai luokittelupiirteiden joukko, joka on yhdistetty ne tuottaneeseen tekstiin. Tarkista, tukeeko valittu aineisto todella tehtävää, ja pidä puuttuvat tosiasiat erillään semanttisesta liittyvyydestä. Seuraava vaihe voi sitten käyttää esitystä tiettyyn haku- tai päätöksentekotyönkulkuun.
Ailoot Ultra · Vektoriesitykset POST /v1/embeddings openai/text-embedding-3-small
openai/text-embedding-3-smallopenai/text-embedding-3-smalltext-embedding-3-small
Aloitus
OpenAI:n pieni kolmannen sukupolven tekstiupotusmalli palauttaa oletuksena 1 536-ulotteisia vektoreita ja tukee lyhyempiä esityksiä. Käytä numeerista tulostetta semanttiseen hakuun, koodihakuun, ryhmittelyyn, suositteluun ja luokitteluun.
- Hyväksytyt syötteet
- Teksti · token_ids
- Tulokset
- embedding
Saatavilla Ailootissa · syötteet & menetelmät
Ailoot Ultra · Vektoriesitykset POST /v1/embeddings
- Syötetyypit
text,token_ids- Tulostyypit
embedding- Konteksti
- 8 192 tokens
- Tulosteen muoto
- json
| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
|---|---|---|---|---|
Kenttämodel | Tyyppistring | VaatimusPakollinen | Arvot & rajat openai/text-embedding-3-small | Oletus— |
Kenttäinput | Tyyppistring|string[]|integer[]|integer[][] | VaatimusPakollinen | Arvot & rajat Kohteiden vähimmäismäärä: 1 Ehdot: Ei-tyhjä, yhdenmukaisista alkioista koostuva erä. Tokenien ID:t ovat ei-negatiivisia kokonaislukuja. Syötebudjetti: Enimmäismäärä: 8 192 · Tekstiyksikkö: UTF8-tavut · Tokenyksikkö: Token-taulukon alkiot | Oletus— |
Kenttäencoding_format | Tyyppistring | VaatimusValinnainen | Arvot & rajat float | Oletusfloat |
Kenttädimensions | Tyyppiinteger | VaatimusEi tuettu | Arvot & rajat Vähimmäismäärä: 1 | Oletus— |
Kenttäuser | Tyyppijson_value | VaatimusValinnainen | Arvot & rajat Ehdot: Lähde sallii tämän JSON-metatietokentän; tarkka alkuperäisen palvelun semantiikka on mallikohtainen. | Oletus— |
Kenttäsession_id | Tyyppijson_value | VaatimusValinnainen | Arvot & rajat Ehdot: Lähde sallii tämän JSON-metatietokentän; tarkka alkuperäisen palvelun semantiikka on mallikohtainen. | Oletus— |
Kenttätrace | Tyyppijson_value | VaatimusValinnainen | Arvot & rajat Ehdot: Lähde sallii tämän JSON-metatietokentän; tarkka alkuperäisen palvelun semantiikka on mallikohtainen. | Oletus— |
Kenttäprovider | Tyyppiobject | VaatimusValinnainen | Arvot & rajat Ehdot: provider.options hylätty | Oletus— |
Syöteaineistojen yhdistelmät
text_to_embedding
Menetelmän parametrit ja elinkaari
| Parametri | Sopimus |
|---|---|
Parametricontent_type | Sopimusapplication/json |
Parametrirequired | Sopimusmodel, input |
Parametriinput_shapes | Sopimusstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parametriencoding_format | Sopimusfloat |
Parametridimensions_override | Sopimusfalse |
Parametrimax_input_budget_units | Sopimus8192 |
Parametrimultimodal_objects | Sopimusfalse |
Parametrimaterial_types | Sopimustext, token_ids |
Elinkaari: synchronous_json
Säilytä jokaisen vektorin indeksi ja ulottuvuus.
Mallin nimen multimodaalisuus ei tarkoita, että tämä nimenomainen reitti hyväksyisi kuvaolioita.
Hinnoittelu
Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.
- Nopea tila
- Vakiohinta Kun nopea tila on valittu
- Flex-tila
- Vakiohinta Kun flex-tila on valittu
- Päättelyn enimmäisteho
- Vakiohinta Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä
Ailoot-hinnat
Hinnat asetusten mukaan
| Asetukset | Hinnasto | Veloitus |
|---|---|---|
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Veloitus Syöte · Syötetokenit $0.00004 / 1K tokenia Tuloste · Tulostokenit $0 / 1K tokenia Syöte · Välimuistin luku — / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia |
Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →
Esimerkkipyynnöt
Ailoot Ultra · Vektoriesitykset
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)
Vastaanota ja tallenna tulokset
Ailoot Ultra · Vektoriesitykset
json
Säilytä kaikki valmistuneet tulokset
Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.
Säilytä jokainen vektori indekseineen. Vektorien määrän on vastattava syötteiden määrää; ulottuvuuksien on oltava yhdenmukaiset.
Jos alkuperäinen vastaus on tarkistettava
Uutta upotustehtävien päätepistettä ei oteta käyttöön.
Vastauksen kentät
| Kenttä | Tyyppi |
|---|---|
Kenttäobject | Tyyppistring |
Kenttämodel | Tyyppistring |
Kenttädata[].index | Tyyppiinteger |
Kenttädata[].embedding | Tyyppifinite float[] |
Kenttäusage | Tyyppiobject |
Virheet ja seuraavat vaiheet
| Vastaus | Ehto | Seuraava vaihe |
|---|---|---|
Vastaus400 · invalid_request_error | EhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvo | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä. |
Aliakset
Mallin aliakset
Ailoot Ultra openai/text-embedding-3-small, text-embedding-3-small
Menetelmäpolkujen aliakset
Käytä yllä näytettyjä menetelmäpolkuja.
Liittyvät kutsujan ID:t
Ailoot Ultra · Upotukset · text-embedding-3-small POST /v1/embeddings text-embedding-3-small
text-embedding-3-smallopenai/text-embedding-3-smalltext-embedding-3-small
Aloitus
OpenAI:n pieni kolmannen sukupolven tekstiupotusmalli palauttaa oletuksena 1 536-ulotteisia vektoreita ja tukee lyhyempiä esityksiä. Käytä numeerista tulostetta semanttiseen hakuun, koodihakuun, ryhmittelyyn, suositteluun ja luokitteluun.
- Hyväksytyt syötteet
- Teksti
- Tulokset
- embedding
Saatavilla Ailootissa · syötteet & menetelmät
Ailoot Ultra · Upotukset · text-embedding-3-small POST /v1/embeddings
- Syötetyypit
text- Tulostyypit
embedding- Konteksti
- 8 192 tokens
- Tulosteen muoto
- json
| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
|---|---|---|---|---|
Kenttämodel | Tyyppistring | VaatimusPakollinen | Arvot & rajat text-embedding-3-small | Oletus— |
Kenttäinput | Tyyppistring|string[]|integer[]|integer[][] | VaatimusPakollinen | Arvot & rajat Kohteiden vähimmäismäärä: 1 Ehdot: Ei-tyhjä, yhdenmukaisista alkioista koostuva erä. Tokenien ID:t ovat ei-negatiivisia kokonaislukuja. Syötebudjetti: Enimmäismäärä: 8 192 · Tekstiyksikkö: UTF8-tavut · Tokenyksikkö: Token-taulukon alkiot | Oletus— |
Kenttäencoding_format | Tyyppistring | VaatimusValinnainen | Arvot & rajat float | Oletusfloat |
Kenttädimensions | Tyyppiinteger | VaatimusEi tuettu | Arvot & rajat Vähimmäismäärä: 1 | Oletus— |
Kenttäuser | Tyyppijson_value | VaatimusValinnainen | Arvot & rajat Ehdot: Valinnaiset JSON-metatiedot; täsmällinen taustapalvelun semantiikka riippuu valitusta mallista. | Oletus— |
Kenttäsession_id | Tyyppijson_value | VaatimusValinnainen | Arvot & rajat Ehdot: Valinnaiset JSON-metatiedot; täsmällinen taustapalvelun semantiikka riippuu valitusta mallista. | Oletus— |
Kenttätrace | Tyyppijson_value | VaatimusValinnainen | Arvot & rajat Ehdot: Valinnaiset JSON-metatiedot; täsmällinen taustapalvelun semantiikka riippuu valitusta mallista. | Oletus— |
Kenttäprovider | Tyyppiobject | VaatimusValinnainen | Arvot & rajat Ehdot: provider.options hylätty | Oletus— |
Syöteaineistojen yhdistelmät
text_to_embedding
Menetelmän parametrit ja elinkaari
| Parametri | Sopimus |
|---|---|
Parametricontent_type | Sopimusapplication/json |
Parametrirequired | Sopimusmodel, input |
Parametriinput_shapes | Sopimusstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parametriencoding_format | Sopimusfloat |
Parametridimensions_override | Sopimusfalse |
Parametrimax_input_budget_units | Sopimus8192 |
Parametrimultimodal_objects | Sopimusfalse |
Parametrimaterial_types | Sopimustext |
Parametritext_file_material | SopimusLue varsinainen UTF-8-asiakirja ja sijoita sen teksti ilmoitettuun syöte- tai viestisisällön merkkijonoon. |
Elinkaari: synchronous_json
Lähetä täsmällinen mallin tunniste ja pakolliset kentät.
Säilytä jokainen palautettu alkio ja sen alkuperäiset tunnisteet.
Hinnoittelu
Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.
- Nopea tila
- Vakiohinta Kun nopea tila on valittu
- Flex-tila
- Vakiohinta Kun flex-tila on valittu
- Päättelyn enimmäisteho
- Vakiohinta Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä
Ailoot-hinnat
Hinnat asetusten mukaan
| Asetukset | Hinnasto | Veloitus |
|---|---|---|
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Veloitus Syöte · Syötetokenit $0.00004 / 1K tokenia Tuloste · Tulostokenit $0 / 1K tokenia Syöte · Välimuistin luku — / 1K tokenia Syöte · Välimuistiin kirjoitus — / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti — / 1K tokenia |
Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. Varauksen ja lopullisen veloituksen toiminta →
Esimerkkipyynnöt
Ailoot Ultra · Upotukset · 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')))
Vastaanota ja tallenna tulokset
Ailoot Ultra · Upotukset · text-embedding-3-small
json
Säilytä kaikki valmistuneet tulokset
Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.
Säilytä jokainen äärellinen vektori alkuperäisine indekseineen. Säilytä kaikki ulottuvuudet ja koko käyttöolio.
Jos alkuperäinen vastaus on tarkistettava
Uutta upotustehtävien päätepistettä ei oteta käyttöön.
Vastauksen kentät
| Kenttä | Tyyppi |
|---|---|
Kenttäobject | Tyyppistring |
Kenttämodel | Tyyppistring |
Kenttädata[].index | Tyyppiinteger |
Kenttädata[].embedding | Tyyppifinite float[] |
Kenttäusage | Tyyppiobject |
Virheet ja seuraavat vaiheet
| Vastaus | Ehto | Seuraava vaihe |
|---|---|---|
Vastaus400 · invalid_request_error | EhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvo | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä. |
Aliakset
Mallin aliakset
Ailoot Ultra openai/text-embedding-3-small, text-embedding-3-small
Menetelmäpolkujen aliakset
Käytä yllä näytettyjä menetelmäpolkuja.
Liittyvät kutsujan ID:t
FAQ · OpenAI: Text Embedding 3 Small
- Mitä syötteitä ja tuloksia on saatavilla?
POST /v1/embeddings·openai/text-embedding-3-small:text,token_ids→embeddingPOST /v1/embeddings·text-embedding-3-small:text→embedding- Mitä kenttiä pyyntö käyttää?
POST /v1/embeddings·openai/text-embedding-3-small:model,input,encoding_format,providerPOST /v1/embeddings·text-embedding-3-small:model,input,encoding_format,provider- Mitä rajoja sovelletaan?
POST /v1/embeddings·openai/text-embedding-3-small:ctx:8192;input.budget.maximum:8192(UTF8-tavut);input.min_items:1POST /v1/embeddings·text-embedding-3-small:ctx:8192;input.budget.maximum:8192(UTF8-tavut);input.min_items:1