OpenAI: Text Embedding Ada 002
En textinbäddningsmodell från OpenAI som returnerar en numerisk vektor med 1 536 dimensioner. Använd representationerna för semantisk sökning, rekommendationer av relaterat innehåll, klustring, klassificering eller upptäckt av ovanliga textposter.
- Ailoot Ultra · Embeddings
POST /v1/embeddingsopenai/text-embedding-ada-002 - Ailoot Ultra · Inbäddningar · text-embedding-ada-002
POST /v1/embeddingstext-embedding-ada-002
Om modellen
Den här beskrivningen omfattar modellens förmågor. Tillgängliga indata, utdata och alternativ i Ailoot anges nedan för den valda metoden.
text-embedding-ada-002 är OpenAIs textinbäddningsmodell för att representera skriftligt material som en numerisk vektor. Utdata innehåller 1 536 komponenter. Tillverkaren kombinerar likhet mellan texter, dokument-/frågesökning och kodsökning i en representation. Resultatet är data för jämförelse eller en annan algoritm, snarare än ett genererat svar på texten som bäddas in.
För semantisk sökning förbereds meningsfulla dokumenttextstycken och deras källidentifierare bevaras. Ett illustrativt arbetsflöde bäddar in varje textstycke och användarens fråga med samma modell, jämför vektorerna och returnerar relevanta källtextstycken. Applikationen bestämmer sökregeln, filtren och presentationen. Ett efterföljande textgenereringssteg kan använda det hämtade materialet för att utveckla ett svar, medan inbäddningsmodellen ger den numeriska representationen.
Andra dokumenterade användningsområden är gruppering av liknande poster, rekommendationer av relaterat innehåll, klassificering av text och identifiering av avvikare. För en rekommendation jämförs beskrivningar av objekten vars relation är relevant. För klassificering beskriver guiden jämförelse med kategorirepresentationer eller användning av vektorer som egenskaper i en klassificerare. För avvikelsedetektering är det relevanta resultatet en post som skiljer sig från den omgivande samlingen, tolkad enligt produktens uppgift.
OpenAI anger en maximal indatalängd på 8 192 token för denna modell. Tillverkarens inbäddnings-API accepterar textsträngar eller tokeniserade indata, tillåter flera inmatade objekt i en begäran och avvisar tomma strängar. Dess sammanlagda gräns är 300 000 token i en begäran, utöver gränsen per inmatat objekt. Dela upp längre dokument i användbara textstycken och bevara titlar, definitioner och referensen tillbaka till originalmaterialet.
Utdata är en vektor av flyttalsvärden; tillverkaren dokumenterar även base64 som alternativ transportkodning. OpenAIs parameter för att minska antalet dimensioner gäller inbäddningsmodeller från tredje generationen och senare, så Ada-modellens dokumenterade resultat med 1 536 dimensioner hålls åtskilt från den inställningen. Lagra modellidentiteten och vektorn tillsammans med källposten så att senare jämförelser använder en konsekvent representation.
Inbäddningsguiden rekommenderar cosinuslikhet och anger att OpenAIs inbäddningar är normaliserade till enhetslängd. För dessa vektorer kan en skalärprodukt beräkna cosinuslikhet och euklidiskt avstånd ger samma rangordning. En likhetspoäng är en del av applikationens sök- eller klassificeringslogik, inte ett beslut om kategori som modellen automatiskt ger.
Definiera vilka källfält som blir indatatexten och hur textstycken ska delas upp. Ett illustrativt resultat är en rangordnad uppsättning dokumenttextstycken eller relaterade poster, var och en kopplad till sin ursprungliga källa och regeln som användes för urvalet. Håll förberedelsen konsekvent och utvärdera om det returnerade materialet behandlar den faktiska frågan. Detta gör det numeriska resultatet användbart för nästa sök-, rekommendations- eller analyssteg.
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 textinbäddningsmodell från OpenAI som returnerar en numerisk vektor med 1 536 dimensioner. Använd representationerna för semantisk sökning, rekommendationer av relaterat innehåll, klustring, klassificering eller upptäckt av ovanliga textposter.
- Godkända indata
- Text · token_ids
- Resultat
- embedding
Tillgängligt i Ailoot · indata & metoder
Ailoot Ultra · Embeddings POST /v1/embeddings
- Indatatyper
text,token_ids- Utdatatyper
embedding- Kontext
- 8 192 tokens
- Utdataformat
- json
| Fält | Typ | Krav | Värden & gränser | Standard |
|---|---|---|---|---|
Fältmodel | Typstring | KravObligatoriskt | Värden & gränser openai/text-embedding-ada-002 | Standard— |
Fältinput | Typstring|string[]|integer[]|integer[][] | KravObligatoriskt | Värden & gränser Minsta antal objekt: 1 Villkor: En homogen batch som inte är tom. Token-ID:n är heltal som är större än eller lika med noll. Indatabudget: Maximum: 8 192 · Textenhet: UTF8-byte · Tokenenhet: element i en tokenarray | Standard— |
Fältencoding_format | Typstring | KravValfritt | Värden & gränser float | Standardfloat |
Fältdimensions | Typinteger | KravStöds inte | Värden & gränser Minimum: 1 | Standard— |
Fältuser | Typjson_value | KravValfritt | Värden & gränser Villkor: Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen. | Standard— |
Fältsession_id | Typjson_value | KravValfritt | Värden & gränser Villkor: Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen. | Standard— |
Fälttrace | Typjson_value | KravValfritt | Värden & gränser Villkor: Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen. | Standard— |
Fältprovider | Typobject | KravValfritt | Värden & gränser Villkor: provider.options avvisades | Standard— |
Kombinationer av indatamaterial
text_to_embedding
Metodparametrar och livscykel
| Parameter | Avtal |
|---|---|
Parametercontent_type | Avtalapplication/json |
Parameterrequired | Avtalmodel, input |
Parameterinput_shapes | Avtalstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Avtalfloat |
Parameterdimensions_override | Avtalfalse |
Parametermax_input_budget_units | Avtal8192 |
Parametermultimodal_objects | Avtalfalse |
Parametermaterial_types | Avtaltext, token_ids |
Livscykel: synchronous_json
Behåll varje vektorindex och dimension.
Att modellen har ett multimodalt namn innebär inte att bildobjekt tillåts på just denna anropsväg.
Priser
Tariffuppgifter lägger inte till begäransalternativ. Parametrar som stöds anges för den valda metoden.
- Snabbt läge
- Standardpris När snabbt läge är valt
- Flex-läge
- Standardpris När läget flex är valt
- Högsta resonemangsnivå
- Standardpris När den högsta resonemangsnivån använder standardjusteringen (default)
Ailoot-priser
Priser efter konfiguration
| Konfiguration | Prislista | Avgift |
|---|---|---|
| KonfigurationGrundpriser för token | PrislistaGrundpris | Avgift Indata · Indatatoken $0.0002 / 1K token Utdata · Utdatatoken $0 / 1K token Indata · Cacheläsning — / 1K token Indata · Skrivning till cache — / 1K token Indata · Skrivning till cache, 1 tim — / 1K token |
Ailoot reserverar ett uppskattat belopp före en begäran. Efter resultatet slutregleras avgiften utifrån uppmätt förbrukning. Slutreglering för strömning använder den slutliga förbrukningsposten. Så fungerar reservation och slutreglering →
Exempelbegäranden
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)
Ta emot och spara resultat
Ailoot Ultra · Embeddings
json
Behåll alla färdiga resultat
Behåll varje fullständigt returnerat svar, fil och innehållsdel.
Behåll varje vektor tillsammans med dess index. Antalet vektorer måste vara lika med antalet indataobjekt; dimensionerna måste vara konsekventa.
Om det ursprungliga svaret behöver kontrolleras
Ingen endpoint för inbäddningsjobb införs.
Svarsfält
| Fält | Typ |
|---|---|
Fältobject | Typstring |
Fältmodel | Typstring |
Fältdata[].index | Typinteger |
Fältdata[].embedding | Typfinite float[] |
Fältusage | Typobject |
Fel och nästa steg
| Svar | Villkor | Nästa steg |
|---|---|---|
Svar400 · invalid_request_error | VillkorOgiltiga obligatoriska fält, ogiltig representation av underlaget eller ogiltigt parametervärde | Nästa stegKorrigera de angivna fälten före en ny begäran om att skapa. |
Alias
Modellalias
Ailoot Ultra openai/text-embedding-ada-002, text-embedding-ada-002
Alias för metodsökvägar
Använd metodsökvägarna som visas ovan.
Relaterade anropar-ID:n
Ailoot Ultra · Inbäddningar · text-embedding-ada-002 POST /v1/embeddings text-embedding-ada-002
text-embedding-ada-002openai/text-embedding-ada-002text-embedding-ada-002
Start
En textinbäddningsmodell från OpenAI som returnerar en numerisk vektor med 1 536 dimensioner. Använd representationerna för semantisk sökning, rekommendationer av relaterat innehåll, klustring, klassificering eller upptäckt av ovanliga textposter.
- Godkända indata
- Text
- Resultat
- embedding
Tillgängligt i Ailoot · indata & metoder
Ailoot Ultra · Inbäddningar · text-embedding-ada-002 POST /v1/embeddings
- Indatatyper
text- Utdatatyper
embedding- Kontext
- 8 192 tokens
- Utdataformat
- json
| Fält | Typ | Krav | Värden & gränser | Standard |
|---|---|---|---|---|
Fältmodel | Typstring | KravObligatoriskt | Värden & gränser text-embedding-ada-002 | Standard— |
Fältinput | Typstring|string[]|integer[]|integer[][] | KravObligatoriskt | Värden & gränser Minsta antal objekt: 1 Villkor: En homogen batch som inte är tom. Token-ID:n är heltal som är större än eller lika med noll. Indatabudget: Maximum: 8 192 · Textenhet: UTF8-byte · Tokenenhet: element i en tokenarray | Standard— |
Fältencoding_format | Typstring | KravValfritt | Värden & gränser float | Standardfloat |
Fältdimensions | Typinteger | KravStöds inte | Värden & gränser Minimum: 1 | Standard— |
Fältuser | Typjson_value | KravValfritt | Värden & gränser Villkor: Valfria JSON-metadata; exakt innebörd hos leverantören beror på den valda modellen. | Standard— |
Fältsession_id | Typjson_value | KravValfritt | Värden & gränser Villkor: Valfria JSON-metadata; exakt innebörd hos leverantören beror på den valda modellen. | Standard— |
Fälttrace | Typjson_value | KravValfritt | Värden & gränser Villkor: Valfria JSON-metadata; exakt innebörd hos leverantören beror på den valda modellen. | Standard— |
Fältprovider | Typobject | KravValfritt | Värden & gränser Villkor: provider.options avvisades | Standard— |
Kombinationer av indatamaterial
text_to_embedding
Metodparametrar och livscykel
| Parameter | Avtal |
|---|---|
Parametercontent_type | Avtalapplication/json |
Parameterrequired | Avtalmodel, input |
Parameterinput_shapes | Avtalstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Avtalfloat |
Parameterdimensions_override | Avtalfalse |
Parametermax_input_budget_units | Avtal8192 |
Parametermultimodal_objects | Avtalfalse |
Parametermaterial_types | Avtaltext |
Parametertext_file_material | AvtalLäs det faktiska UTF-8-dokumentet och placera texten i det angivna input-fältet eller i strängen för meddelandets innehåll. |
Livscykel: synchronous_json
Skicka det exakta modell-ID:t och de obligatoriska fälten.
Behåll varje returnerad post och dess ursprungliga identifierare.
Priser
Tariffuppgifter lägger inte till begäransalternativ. Parametrar som stöds anges för den valda metoden.
- Snabbt läge
- Standardpris När snabbt läge är valt
- Flex-läge
- Standardpris När läget flex är valt
- Högsta resonemangsnivå
- Standardpris När den högsta resonemangsnivån använder standardjusteringen (default)
Ailoot-priser
Priser efter konfiguration
| Konfiguration | Prislista | Avgift |
|---|---|---|
| KonfigurationGrundpriser för token | PrislistaGrundpris | Avgift Indata · Indatatoken $0.0002 / 1K token Utdata · Utdatatoken $0 / 1K token Indata · Cacheläsning — / 1K token Indata · Skrivning till cache — / 1K token Indata · Skrivning till cache, 1 tim — / 1K token |
Ailoot reserverar ett uppskattat belopp före en begäran. Efter resultatet slutregleras avgiften utifrån uppmätt förbrukning. Slutreglering för strömning använder den slutliga förbrukningsposten. Så fungerar reservation och slutreglering →
Exempelbegäranden
Ailoot Ultra · Inbäddningar · 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')))
Ta emot och spara resultat
Ailoot Ultra · Inbäddningar · text-embedding-ada-002
json
Behåll alla färdiga resultat
Behåll varje fullständigt returnerat svar, fil och innehållsdel.
Behåll varje ändlig vektor med dess ursprungliga index. Bevara alla dimensioner och hela förbrukningsobjektet.
Om det ursprungliga svaret behöver kontrolleras
Ingen endpoint för inbäddningsjobb införs.
Svarsfält
| Fält | Typ |
|---|---|
Fältobject | Typstring |
Fältmodel | Typstring |
Fältdata[].index | Typinteger |
Fältdata[].embedding | Typfinite float[] |
Fältusage | Typobject |
Fel och nästa steg
| Svar | Villkor | Nästa steg |
|---|---|---|
Svar400 · invalid_request_error | VillkorOgiltiga obligatoriska fält, ogiltig representation av underlaget eller ogiltigt parametervärde | Nästa stegKorrigera de angivna fälten före en ny begäran om att skapa. |
Alias
Modellalias
Ailoot Ultra openai/text-embedding-ada-002, text-embedding-ada-002
Alias för metodsökvägar
Använd metodsökvägarna som visas ovan.
Relaterade anropar-ID:n
FAQ · OpenAI: Text Embedding Ada 002
- Vilka indata och resultat finns?
POST /v1/embeddings·openai/text-embedding-ada-002:text,token_ids→embeddingPOST /v1/embeddings·text-embedding-ada-002:text→embedding- Vilka fält använder begäran?
POST /v1/embeddings·openai/text-embedding-ada-002:model,input,encoding_format,providerPOST /v1/embeddings·text-embedding-ada-002:model,input,encoding_format,provider- Vilka gränser gäller?
POST /v1/embeddings·openai/text-embedding-ada-002:ctx:8192;input.budget.maximum:8192(UTF8-byte);input.min_items:1POST /v1/embeddings·text-embedding-ada-002:ctx:8192;input.budget.maximum:8192(UTF8-byte);input.min_items:1