OpenAI: Text Embedding Ada 002
Un modelo de embeddings textuales de OpenAI que devuelve un vector numérico de 1536 dimensiones. Utiliza esas representaciones para búsqueda semántica, recomendaciones de contenido relacionado, agrupación, clasificación o detección de registros textuales inusuales.
- Ailoot Ultra · Representaciones vectoriales
POST /v1/embeddingsopenai/text-embedding-ada-002 - Ailoot Ultra · Vectores de representación · text-embedding-ada-002
POST /v1/embeddingstext-embedding-ada-002
Sobre el modelo
Esta descripción cubre las capacidades del modelo. Las entradas, salidas y opciones disponibles en Ailoot se indican a continuación para el método seleccionado.
text-embedding-ada-002 es el modelo de embeddings de texto de OpenAI para representar material escrito como un vector numérico. Su salida contiene 1536 componentes. El fabricante combina similaridad textual, búsqueda de documentos y consultas y funciones de búsqueda de código en una representación. El resultado son datos para comparación u otro algoritmo, en lugar de una respuesta generada al texto del que se crea el embedding.
Para búsqueda semántica, prepara pasajes documentales significativos y conserva sus identificadores de origen. Un flujo ilustrativo genera embeddings de cada pasaje y la pregunta del usuario con el mismo modelo, compara los vectores y devuelve los pasajes de origen pertinentes. La aplicación determina la regla de recuperación, los filtros y la presentación. Un paso posterior de generación de texto puede utilizar el material recuperado para desarrollar una respuesta, mientras que el modelo de embeddings aporta la representación numérica.
Otros usos documentados incluyen agrupar registros similares, recomendar contenido relacionado, clasificar texto e identificar valores atípicos. Para una recomendación, compara descripciones de los objetos cuya relación importe. Para clasificación, la guía describe la comparación con representaciones de categorías o el uso de vectores como características en un clasificador. Para detección de anomalías, el resultado pertinente es un registro que difiere de la colección que lo rodea, interpretado según la tarea del producto.
OpenAI indica una entrada máxima de 8192 tokens para este modelo. La API de embeddings del productor acepta cadenas de texto o entrada tokenizada, permite varias entradas en una solicitud y rechaza cadenas vacías. Su límite agregado es de 300.000 tokens en una solicitud, además del límite por entrada. Divide los documentos más largos en pasajes útiles, conservando títulos, definiciones y la referencia al material original.
La salida es un vector de valores de coma flotante; el productor también documenta base64 como codificación alternativa de transporte. El parámetro de OpenAI para acortar dimensiones es para modelos de embeddings de tercera generación y posteriores, por lo que el resultado documentado de 1536 dimensiones de Ada se mantiene separado de ese control. Guarda la identidad del modelo y el vector junto al registro de origen para que las comparaciones posteriores utilicen una representación coherente.
La guía de embeddings recomienda similaridad del coseno y afirma que los embeddings de OpenAI están normalizados a longitud unitaria. Para esos vectores, un producto escalar puede calcular la similaridad del coseno y la distancia euclídea da la misma ordenación. Una puntuación de similaridad forma parte de la lógica de recuperación o clasificación de la aplicación, no de una decisión categórica proporcionada automáticamente por el modelo.
Define qué campos de origen se convierten en texto de entrada y cómo deben dividirse los pasajes. Un resultado ilustrativo es un conjunto ordenado de pasajes documentales o registros relacionados, cada uno conectado con su fuente original y la regla utilizada para seleccionarlo. Mantén coherente la preparación y evalúa si el material devuelto aborda la pregunta real. Esto hace que la salida numérica sea útil para el siguiente paso de búsqueda, recomendación o análisis.
Ailoot Ultra · Representaciones vectoriales POST /v1/embeddings openai/text-embedding-ada-002
openai/text-embedding-ada-002openai/text-embedding-ada-002text-embedding-ada-002
Primeros pasos
Un modelo de embeddings textuales de OpenAI que devuelve un vector numérico de 1536 dimensiones. Utiliza esas representaciones para búsqueda semántica, recomendaciones de contenido relacionado, agrupación, clasificación o detección de registros textuales inusuales.
- Entradas aceptadas
- Texto · token_ids
- Resultados
- embedding
Disponible en Ailoot · entradas y métodos
Ailoot Ultra · Representaciones vectoriales POST /v1/embeddings
- Tipos de entrada
text,token_ids- Tipos de salida
embedding- Contexto
- 8192 tokens
- Formato de salida
- json
| Campo | Tipo | Requisito | Valores y límites | Predeterminado |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObligatorio | Valores y límites openai/text-embedding-ada-002 | Predeterminado— |
Campoinput | Tipostring|string[]|integer[]|integer[][] | RequisitoObligatorio | Valores y límites Número mínimo de elementos: 1 Condiciones: Lote homogéneo no vacío. Los ID de tokens son números enteros no negativos. Presupuesto de entrada: Máximo: 8192 · Unidad de texto: bytes UTF8 · Unidad de tokens: elementos de un array de tokens | Predeterminado— |
Campoencoding_format | Tipostring | RequisitoOpcional | Valores y límites float | Predeterminadofloat |
Campodimensions | Tipointeger | RequisitoNo compatible | Valores y límites Mínimo: 1 | Predeterminado— |
Campouser | Tipojson_value | RequisitoOpcional | Valores y límites Condiciones: Source permite este campo de metadatos JSON; su semántica exacta en el proveedor depende de cada modelo. | Predeterminado— |
Camposession_id | Tipojson_value | RequisitoOpcional | Valores y límites Condiciones: Source permite este campo de metadatos JSON; su semántica exacta en el proveedor depende de cada modelo. | Predeterminado— |
Campotrace | Tipojson_value | RequisitoOpcional | Valores y límites Condiciones: Source permite este campo de metadatos JSON; su semántica exacta en el proveedor depende de cada modelo. | Predeterminado— |
Campoprovider | Tipoobject | RequisitoOpcional | Valores y límites Condiciones: provider.options se rechaza | Predeterminado— |
Combinaciones de materiales de entrada
text_to_embedding
Parámetros del método y ciclo de vida
| Parámetro | Contrato |
|---|---|
Parámetrocontent_type | Contratoapplication/json |
Parámetrorequired | Contratomodel, input |
Parámetroinput_shapes | Contratostring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parámetroencoding_format | Contratofloat |
Parámetrodimensions_override | Contratofalse |
Parámetromax_input_budget_units | Contrato8192 |
Parámetromultimodal_objects | Contratofalse |
Parámetromaterial_types | Contratotext, token_ids |
Ciclo de vida: synchronous_json
Conserva todos los índices y dimensiones de los vectores.
Que el modelo tenga un nombre multimodal no permite enviar objetos de imagen por esta ruta concreta.
Planes
Las referencias tarifarias no añaden opciones a la solicitud. Los parámetros admitidos se indican en el método seleccionado.
- Modo rápido
- Tarifa estándar Cuando se selecciona el modo rápido
- Modo flex
- Tarifa estándar Cuando se selecciona el modo flex
- Esfuerzo máximo de razonamiento
- Tarifa estándar Cuando el esfuerzo máximo de razonamiento utiliza el ajuste predeterminado (default)
Tarifas de Ailoot
Precios por configuración
| Configuración | Tabla de tarifas | Cargo |
|---|---|---|
| ConfiguraciónTarifas base por token | Tabla de tarifasTarifa base | Cargo Entrada · Tokens de entrada $0.0002 / 1K tokens Salida · Tokens de salida $0 / 1K tokens Entrada · Lectura de caché — / 1K tokens Entrada · Escritura en caché — / 1K tokens Entrada · Escritura en caché, 1 hora — / 1K tokens |
Ailoot reserva un importe estimado antes de la solicitud. Tras obtener el resultado, liquida el cargo definitivo según el uso medido. En las respuestas en flujo, la liquidación usa el registro de uso final. Cómo funcionan la reserva y la liquidación →
Solicitudes de ejemplo
Ailoot Ultra · Representaciones vectoriales
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)
Recibir y guardar resultados
Ailoot Ultra · Representaciones vectoriales
json
Conserva todos los resultados completados
Conserva todas las respuestas, archivos y partes de contenido completos recibidos.
Conserva cada vector con su índice. El número de vectores debe coincidir con el número de entradas; las dimensiones deben ser coherentes.
Si es necesario revisar la respuesta original
No se introduce ningún endpoint de trabajos de embeddings.
Campos de respuesta
| Campo | Tipo |
|---|---|
Campoobject | Tipostring |
Campomodel | Tipostring |
Campodata[].index | Tipointeger |
Campodata[].embedding | Tipofinite float[] |
Campousage | Tipoobject |
Errores y siguientes pasos
| Respuesta | Condición | Siguiente paso |
|---|---|---|
Respuesta400 · invalid_request_error | CondiciónCampos obligatorios, representación del material o valor del parámetro no válidos | Siguiente pasoCorrige los campos indicados antes de una nueva solicitud de creación. |
Alias
Alias del modelo
Ailoot Ultra openai/text-embedding-ada-002, text-embedding-ada-002
Alias de rutas de métodos
Usa las rutas de método indicadas arriba.
ID de modelo relacionados
Ailoot Ultra · Vectores de representación · text-embedding-ada-002 POST /v1/embeddings text-embedding-ada-002
text-embedding-ada-002openai/text-embedding-ada-002text-embedding-ada-002
Primeros pasos
Un modelo de embeddings textuales de OpenAI que devuelve un vector numérico de 1536 dimensiones. Utiliza esas representaciones para búsqueda semántica, recomendaciones de contenido relacionado, agrupación, clasificación o detección de registros textuales inusuales.
- Entradas aceptadas
- Texto
- Resultados
- embedding
Disponible en Ailoot · entradas y métodos
Ailoot Ultra · Vectores de representación · text-embedding-ada-002 POST /v1/embeddings
- Tipos de entrada
text- Tipos de salida
embedding- Contexto
- 8192 tokens
- Formato de salida
- json
| Campo | Tipo | Requisito | Valores y límites | Predeterminado |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObligatorio | Valores y límites text-embedding-ada-002 | Predeterminado— |
Campoinput | Tipostring|string[]|integer[]|integer[][] | RequisitoObligatorio | Valores y límites Número mínimo de elementos: 1 Condiciones: Lote homogéneo no vacío. Los ID de tokens son números enteros no negativos. Presupuesto de entrada: Máximo: 8192 · Unidad de texto: bytes UTF8 · Unidad de tokens: elementos de un array de tokens | Predeterminado— |
Campoencoding_format | Tipostring | RequisitoOpcional | Valores y límites float | Predeterminadofloat |
Campodimensions | Tipointeger | RequisitoNo compatible | Valores y límites Mínimo: 1 | Predeterminado— |
Campouser | Tipojson_value | RequisitoOpcional | Valores y límites Condiciones: Metadatos JSON opcionales; la semántica exacta del proveedor depende del modelo seleccionado. | Predeterminado— |
Camposession_id | Tipojson_value | RequisitoOpcional | Valores y límites Condiciones: Metadatos JSON opcionales; la semántica exacta del proveedor depende del modelo seleccionado. | Predeterminado— |
Campotrace | Tipojson_value | RequisitoOpcional | Valores y límites Condiciones: Metadatos JSON opcionales; la semántica exacta del proveedor depende del modelo seleccionado. | Predeterminado— |
Campoprovider | Tipoobject | RequisitoOpcional | Valores y límites Condiciones: provider.options se rechaza | Predeterminado— |
Combinaciones de materiales de entrada
text_to_embedding
Parámetros del método y ciclo de vida
| Parámetro | Contrato |
|---|---|
Parámetrocontent_type | Contratoapplication/json |
Parámetrorequired | Contratomodel, input |
Parámetroinput_shapes | Contratostring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parámetroencoding_format | Contratofloat |
Parámetrodimensions_override | Contratofalse |
Parámetromax_input_budget_units | Contrato8192 |
Parámetromultimodal_objects | Contratofalse |
Parámetromaterial_types | Contratotext |
Parámetrotext_file_material | ContratoLee el documento real en UTF-8 y coloca su texto en el campo input indicado o en la cadena de contenido del mensaje. |
Ciclo de vida: synchronous_json
Envía el ID exacto del modelo y los campos obligatorios.
Conserva todos los elementos devueltos y sus identificadores originales.
Planes
Las referencias tarifarias no añaden opciones a la solicitud. Los parámetros admitidos se indican en el método seleccionado.
- Modo rápido
- Tarifa estándar Cuando se selecciona el modo rápido
- Modo flex
- Tarifa estándar Cuando se selecciona el modo flex
- Esfuerzo máximo de razonamiento
- Tarifa estándar Cuando el esfuerzo máximo de razonamiento utiliza el ajuste predeterminado (default)
Tarifas de Ailoot
Precios por configuración
| Configuración | Tabla de tarifas | Cargo |
|---|---|---|
| ConfiguraciónTarifas base por token | Tabla de tarifasTarifa base | Cargo Entrada · Tokens de entrada $0.0002 / 1K tokens Salida · Tokens de salida $0 / 1K tokens Entrada · Lectura de caché — / 1K tokens Entrada · Escritura en caché — / 1K tokens Entrada · Escritura en caché, 1 hora — / 1K tokens |
Ailoot reserva un importe estimado antes de la solicitud. Tras obtener el resultado, liquida el cargo definitivo según el uso medido. En las respuestas en flujo, la liquidación usa el registro de uso final. Cómo funcionan la reserva y la liquidación →
Solicitudes de ejemplo
Ailoot Ultra · Vectores de representación · 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')))
Recibir y guardar resultados
Ailoot Ultra · Vectores de representación · text-embedding-ada-002
json
Conserva todos los resultados completados
Conserva todas las respuestas, archivos y partes de contenido completos recibidos.
Conserva todos los vectores finitos con su índice original. Preserva todas las dimensiones y el objeto de uso completo.
Si es necesario revisar la respuesta original
No se introduce ningún endpoint de trabajos de embeddings.
Campos de respuesta
| Campo | Tipo |
|---|---|
Campoobject | Tipostring |
Campomodel | Tipostring |
Campodata[].index | Tipointeger |
Campodata[].embedding | Tipofinite float[] |
Campousage | Tipoobject |
Errores y siguientes pasos
| Respuesta | Condición | Siguiente paso |
|---|---|---|
Respuesta400 · invalid_request_error | CondiciónCampos obligatorios, representación del material o valor del parámetro no válidos | Siguiente pasoCorrige los campos indicados antes de una nueva solicitud de creación. |
Alias
Alias del modelo
Ailoot Ultra openai/text-embedding-ada-002, text-embedding-ada-002
Alias de rutas de métodos
Usa las rutas de método indicadas arriba.
ID de modelo relacionados
FAQ · OpenAI: Text Embedding Ada 002
- ¿Qué entradas y resultados están disponibles?
POST /v1/embeddings·openai/text-embedding-ada-002:text,token_ids→embeddingPOST /v1/embeddings·text-embedding-ada-002:text→embedding- ¿Qué campos utiliza la solicitud?
POST /v1/embeddings·openai/text-embedding-ada-002:model,input,encoding_format,providerPOST /v1/embeddings·text-embedding-ada-002:model,input,encoding_format,provider- ¿Qué límites se aplican?
POST /v1/embeddings·openai/text-embedding-ada-002:ctx:8192;input.budget.maximum:8192(bytes UTF8);input.min_items:1POST /v1/embeddings·text-embedding-ada-002:ctx:8192;input.budget.maximum:8192(bytes UTF8);input.min_items:1