OpenAI: Text Embedding Ada 002
En tekstembeddingmodel fra OpenAI, der returnerer en numerisk vektor med 1.536 dimensioner. Brug repræsentationerne til semantisk søgning, anbefalinger af relateret indhold, klyngedannelse, klassifikation eller opdagelse af usædvanlige tekstposter.
- Ailoot Ultra · Embeddings
POST /v1/embeddingsopenai/text-embedding-ada-002 - Ailoot Ultra · Vektorrepræsentationer · text-embedding-ada-002
POST /v1/embeddingstext-embedding-ada-002
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
text-embedding-ada-002 er OpenAIs tekstembeddingmodel til at repræsentere skriftligt materiale som en numerisk vektor. Outputtet indeholder 1.536 komponenter. Producenten samler roller til lighed mellem tekster, dokument-/forespørgselssøgning og kodesøgning i én repræsentation. Resultatet er data til sammenligning eller en anden algoritme frem for et genereret svar på den tekst, der oprettes en embedding af.
Til semantisk søgning forberedes meningsfulde dokumentpassager, og deres kildeidentifikatorer bevares. Et illustrativt arbejdsforløb opretter embeddings af hver passage og brugerens spørgsmål med samme model, sammenligner vektorerne og returnerer de relevante kildepassager. Applikationen bestemmer søgereglen, filtrene og præsentationen. Et efterfølgende tekstgenereringstrin kan bruge det hentede materiale til at udforme et svar, mens embeddingmodellen leverer den numeriske repræsentation.
Andre dokumenterede anvendelser omfatter gruppering af lignende poster, anbefaling af relateret indhold, klassifikation af tekst og identificering af afvigere. Til en anbefaling sammenlignes beskrivelser af de objekter, hvis indbyrdes forhold er relevant. Til klassifikation beskriver vejledningen sammenligning med kategorirepræsentationer eller brug af vektorer som egenskaber i en klassifikator. Til anomalidetektion er det relevante resultat en post, der afviger fra den omgivende samling, fortolket efter produktets opgave.
OpenAI angiver et maksimalt input på 8.192 tokens til denne model. Producentens embedding-API accepterer tekststrenge eller tokeniseret input, tillader flere input i én forespørgsel og afviser tomme strenge. Dets samlede grænse er 300.000 tokens i én forespørgsel ud over grænsen pr. input. Opdel længere dokumenter i nyttige passager, mens titler, definitioner og referencen tilbage til originalmaterialet bevares.
Outputtet er en vektor af flydende kommatal; producenten dokumenterer også base64 som en alternativ transportkodning. OpenAIs parameter til forkortelse af dimensioner gælder embeddingmodeller fra tredje generation og frem, så Ada-modellens dokumenterede resultat med 1.536 dimensioner holdes adskilt fra denne indstilling. Gem modelidentiteten og vektoren sammen med kildeposten, så senere sammenligninger bruger en ensartet repræsentation.
Embeddingvejledningen anbefaler cosinuslighed og angiver, at OpenAIs embeddings er normaliseret til enhedslængde. For disse vektorer kan et skalarprodukt beregne cosinuslighed, og euklidisk afstand giver samme rangering. En lighedsscore er en del af applikationens søge- eller klassifikationslogik, ikke en kategorisk afgørelse, som modellen automatisk leverer.
Definer, hvilke kildefelter der bliver til inputteksten, og hvordan passager skal opdeles. Et illustrativt resultat er et rangeret sæt dokumentpassager eller relaterede poster, hver knyttet til sin oprindelige kilde og den regel, der blev brugt til udvælgelse. Hold forberedelsen ensartet, og vurder, om det returnerede materiale vedrører det faktiske spørgsmål. Det gør det numeriske output nyttigt til det næste søge-, anbefalings- eller analysetrin.
Ailoot Ultra · Embeddings POST /v1/embeddings openai/text-embedding-ada-002
openai/text-embedding-ada-002openai/text-embedding-ada-002text-embedding-ada-002
Start
En tekstembeddingmodel fra OpenAI, der returnerer en numerisk vektor med 1.536 dimensioner. Brug repræsentationerne til semantisk søgning, anbefalinger af relateret indhold, klyngedannelse, klassifikation eller opdagelse af usædvanlige tekstposter.
- Accepterede input
- Tekst · token_ids
- Resultater
- embedding
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Embeddings POST /v1/embeddings
- Inputtyper
text,token_ids- Outputtyper
embedding- Kontekst
- 8.192 tokens
- Outputformat
- json
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser openai/text-embedding-ada-002 | Standard— |
Feltinput | Typestring|string[]|integer[]|integer[][] | KravPåkrævet | Værdier og grænser Minimumsantal elementer: 1 Betingelser: Ikke-tom batch med ensartede elementer. Token-ID’er er ikke-negative heltal. Inputbudget: Maksimum: 8.192 · Tekstenhed: UTF8-bytes · Tokenenhed: elementer i et tokenarray | Standard— |
Feltencoding_format | Typestring | KravValgfrit | Værdier og grænser float | Standardfloat |
Feltdimensions | Typeinteger | KravIkke understøttet | Værdier og grænser Minimum: 1 | Standard— |
Feltuser | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Kilden tillader dette JSON-metadatafelt; den præcise betydning hos den bagvedliggende udbyder afhænger af modellen. | Standard— |
Feltsession_id | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Kilden tillader dette JSON-metadatafelt; den præcise betydning hos den bagvedliggende udbyder afhænger af modellen. | Standard— |
Felttrace | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Kilden tillader dette JSON-metadatafelt; den præcise betydning hos den bagvedliggende udbyder afhænger af modellen. | Standard— |
Feltprovider | Typeobject | KravValgfrit | Værdier og grænser Betingelser: provider.options afvist | Standard— |
Kombinationer af inputmaterialer
text_to_embedding
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktmodel, input |
Parameterinput_shapes | Kontraktstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Kontraktfloat |
Parameterdimensions_override | Kontraktfalse |
Parametermax_input_budget_units | Kontrakt8192 |
Parametermultimodal_objects | Kontraktfalse |
Parametermaterial_types | Kontrakttext, token_ids |
Livscyklus: synchronous_json
Gem hver vektors indeks og dimension.
Et multimodalt modelnavn giver ikke adgang til at bruge billedobjekter på denne præcise sti.
Priser
Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.
- Hurtig tilstand
- Standardpris Når hurtig tilstand er valgt
- flex-tilstand
- Standardpris Når flex-tilstanden er valgt
- Maksimal ræsonneringsindsats
- Standardpris Når default-justeringen anvendes ved maksimal ræsonneringsindsats
Ailoot-takster
Priser efter konfiguration
| Konfiguration | Takstplan | Beløb |
|---|---|---|
| KonfigurationGrundtakster for tokens | TakstplanGrundtakst | Beløb Input · Inputtokens $0.0002 / 1K tokens Output · Outputtokens $0 / 1K tokens Input · Cachelæsning — / 1K tokens Input · Cacheskrivning — / 1K tokens Input · Cacheskrivning, 1 time — / 1K tokens |
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Eksempelanmodninger
Ailoot Ultra · Embeddings
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)
Hent og gem resultater
Ailoot Ultra · Embeddings
json
Behold alle færdige resultater
Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.
Gem hver vektor med dens indeks. Antallet af vektorer skal svare til antallet af input; dimensionerne skal være ensartede.
Hvis det oprindelige svar skal kontrolleres
Der indføres intet endpoint til embedding-job.
Svarfelter
| Felt | Type |
|---|---|
Feltobject | Typestring |
Feltmodel | Typestring |
Feltdata[].index | Typeinteger |
Feltdata[].embedding | Typefinite float[] |
Feltusage | Typeobject |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldige obligatoriske felter, materialerepræsentation eller parameterværdi | Næste trinRet de angivne felter før en ny oprettelsesanmodning. |
Aliaser
Modelaliaser
Ailoot Ultra openai/text-embedding-ada-002, text-embedding-ada-002
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
Ailoot Ultra · Vektorrepræsentationer · text-embedding-ada-002 POST /v1/embeddings text-embedding-ada-002
text-embedding-ada-002openai/text-embedding-ada-002text-embedding-ada-002
Start
En tekstembeddingmodel fra OpenAI, der returnerer en numerisk vektor med 1.536 dimensioner. Brug repræsentationerne til semantisk søgning, anbefalinger af relateret indhold, klyngedannelse, klassifikation eller opdagelse af usædvanlige tekstposter.
- Accepterede input
- Tekst
- Resultater
- embedding
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Vektorrepræsentationer · text-embedding-ada-002 POST /v1/embeddings
- Inputtyper
text- Outputtyper
embedding- Kontekst
- 8.192 tokens
- Outputformat
- json
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser text-embedding-ada-002 | Standard— |
Feltinput | Typestring|string[]|integer[]|integer[][] | KravPåkrævet | Værdier og grænser Minimumsantal elementer: 1 Betingelser: Ikke-tom batch med ensartede elementer. Token-ID’er er ikke-negative heltal. Inputbudget: Maksimum: 8.192 · Tekstenhed: UTF8-bytes · Tokenenhed: elementer i et tokenarray | Standard— |
Feltencoding_format | Typestring | KravValgfrit | Værdier og grænser float | Standardfloat |
Feltdimensions | Typeinteger | KravIkke understøttet | Værdier og grænser Minimum: 1 | Standard— |
Feltuser | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Valgfrie JSON-metadata; den præcise upstream-betydning afhænger af den valgte model. | Standard— |
Feltsession_id | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Valgfrie JSON-metadata; den præcise upstream-betydning afhænger af den valgte model. | Standard— |
Felttrace | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Valgfrie JSON-metadata; den præcise upstream-betydning afhænger af den valgte model. | Standard— |
Feltprovider | Typeobject | KravValgfrit | Værdier og grænser Betingelser: provider.options afvist | Standard— |
Kombinationer af inputmaterialer
text_to_embedding
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktmodel, input |
Parameterinput_shapes | Kontraktstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Kontraktfloat |
Parameterdimensions_override | Kontraktfalse |
Parametermax_input_budget_units | Kontrakt8192 |
Parametermultimodal_objects | Kontraktfalse |
Parametermaterial_types | Kontrakttext |
Parametertext_file_material | KontraktLæs det faktiske UTF-8-dokument, og indsæt teksten i det angivne input eller beskedens indholdsstreng. |
Livscyklus: synchronous_json
Send det præcise model-ID og de påkrævede felter.
Behold hvert returneret element og dets oprindelige identifikatorer.
Priser
Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.
- Hurtig tilstand
- Standardpris Når hurtig tilstand er valgt
- flex-tilstand
- Standardpris Når flex-tilstanden er valgt
- Maksimal ræsonneringsindsats
- Standardpris Når default-justeringen anvendes ved maksimal ræsonneringsindsats
Ailoot-takster
Priser efter konfiguration
| Konfiguration | Takstplan | Beløb |
|---|---|---|
| KonfigurationGrundtakster for tokens | TakstplanGrundtakst | Beløb Input · Inputtokens $0.0002 / 1K tokens Output · Outputtokens $0 / 1K tokens Input · Cachelæsning — / 1K tokens Input · Cacheskrivning — / 1K tokens Input · Cacheskrivning, 1 time — / 1K tokens |
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Eksempelanmodninger
Ailoot Ultra · Vektorrepræsentationer · 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')))
Hent og gem resultater
Ailoot Ultra · Vektorrepræsentationer · text-embedding-ada-002
json
Behold alle færdige resultater
Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.
Behold hver vektor med endelige værdier sammen med dens oprindelige indeks. Bevar alle dimensioner og hele forbrugsobjektet.
Hvis det oprindelige svar skal kontrolleres
Der indføres intet endpoint til embedding-job.
Svarfelter
| Felt | Type |
|---|---|
Feltobject | Typestring |
Feltmodel | Typestring |
Feltdata[].index | Typeinteger |
Feltdata[].embedding | Typefinite float[] |
Feltusage | Typeobject |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldige obligatoriske felter, materialerepræsentation eller parameterværdi | Næste trinRet de angivne felter før en ny oprettelsesanmodning. |
Aliaser
Modelaliaser
Ailoot Ultra openai/text-embedding-ada-002, text-embedding-ada-002
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
FAQ · OpenAI: Text Embedding Ada 002
- Hvilke input og resultater er tilgængelige?
POST /v1/embeddings·openai/text-embedding-ada-002:text,token_ids→embeddingPOST /v1/embeddings·text-embedding-ada-002:text→embedding- Hvilke felter bruger anmodningen?
POST /v1/embeddings·openai/text-embedding-ada-002:model,input,encoding_format,providerPOST /v1/embeddings·text-embedding-ada-002:model,input,encoding_format,provider- Hvilke grænser gælder?
POST /v1/embeddings·openai/text-embedding-ada-002:ctx:8192;input.budget.maximum:8192(UTF8-bytes);input.min_items:1POST /v1/embeddings·text-embedding-ada-002:ctx:8192;input.budget.maximum:8192(UTF8-bytes);input.min_items:1