OpenAI: Text Embedding 3 Large
O modelo maior de embeddings de texto de terceira geração da OpenAI devolve vetores de 3072 dimensões por predefinição, com um controlo do produtor para representações mais curtas. Utilize-o para recuperação semântica, comparação multilingue e fluxos de conteúdo relacionado ou classificação.
- Ailoot Ultra · Embeddings
POST /v1/embeddingsopenai/text-embedding-3-large - Ailoot Ultra · Representações vetoriais · text-embedding-3-large
POST /v1/embeddingstext-embedding-3-large
Sobre o modelo
Esta descrição apresenta as capacidades do modelo. As entradas, saídas e opções disponíveis no Ailoot para o método selecionado estão indicadas abaixo.
text-embedding-3-large é o modelo maior de embeddings de texto de terceira geração da OpenAI para tarefas em inglês e noutras línguas. Converte material escrito num vetor numérico, devolvendo 3072 componentes por predefinição. O vetor representa relações no conteúdo fornecido; um processo de recuperação ou classificação utiliza-o para selecionar material ou tomar outra decisão.
Os modelos de terceira geração são treinados para suportar representações mais curtas através do controlo dimensions do produtor. O fabricante dá 1024 dimensões como exemplo quando um repositório vetorial exige esse tamanho. Um vetor mais curto reduz a quantidade de dados a armazenar e comparar, enquanto a alteração da representação pode afetar a qualidade de recuperação. Escolha o tamanho para os requisitos da aplicação e utilize a mesma escolha para o corpus e as respetivas consultas.
Um fluxo ilustrativo de pesquisa documental divide material de origem em passagens significativas, conserva os seus identificadores e obtém vetores para cada passagem. É gerado o embedding de uma pergunta utilizando o mesmo modelo e dimensões, sendo depois comparado com os vetores das passagens. A aplicação fornece filtros, seleciona os resultados ordenados e apresenta as suas referências de origem. Um modelo posterior de geração de texto pode desenvolver uma resposta a partir do material recuperado; o resultado do modelo de embeddings continua a ser um conjunto de dados numéricos.
Outras aplicações documentadas incluem pesquisa de código ou texto, agrupamento de registos semelhantes, recomendações de conteúdo relacionado, classificação, deteção de anomalias e medição de diversidade numa coleção. Para uma recomendação, descreva os objetos em termos relevantes para a relação. Para classificação, compare com representações de categorias ou utilize vetores como características num classificador. Defina a regra que transforma a similaridade no resultado de que o produto precisa.
A OpenAI indica um máximo de entrada de 8192 tokens por texto. A API de embeddings aceita cadeias ou texto tokenizado, suporta várias entradas e rejeita cadeias vazias. Também impõe um limite agregado de 300 000 tokens num pedido. Um documento longo deve ser dividido mantendo os limites significativos e o contexto intactos, com cada vetor ligado à respetiva passagem de origem.
O produtor documenta vetores float como saída predefinida e base64 como codificação alternativa. O guia recomenda similaridade do cosseno e indica que os embeddings da OpenAI são normalizados para comprimento unitário, permitindo um produto escalar para similaridade do cosseno e ordenações equivalentes pela distância euclidiana. Se um vetor de terceira geração for encurtado manualmente após a geração, o fabricante instrui a aplicação a normalizar novamente o vetor encurtado; utilizar o controlo dimensions é a via recomendada.
Prepare uma representação textual consistente e registe o modelo, as dimensões e o identificador da fonte. Um artefacto final útil é um conjunto ordenado de passagens, elementos relacionados ou registos agrupados cuja regra de seleção é explícita. Avalie se o resultado responde à consulta e preserve a evidência de origem para a etapa seguinte, em vez de tratar a similaridade vetorial como verificação das afirmações factuais de um registo.
Ailoot Ultra · Embeddings POST /v1/embeddings openai/text-embedding-3-large
openai/text-embedding-3-largeopenai/text-embedding-3-largetext-embedding-3-large
Introdução
O modelo maior de embeddings de texto de terceira geração da OpenAI devolve vetores de 3072 dimensões por predefinição, com um controlo do produtor para representações mais curtas. Utilize-o para recuperação semântica, comparação multilingue e fluxos de conteúdo relacionado ou classificação.
- Entradas aceites
- Texto · token_ids
- Resultados
- embedding
Disponível no Ailoot · entradas e métodos
Ailoot Ultra · Embeddings POST /v1/embeddings
- Entrada
text,token_ids- Saída
embedding- Contexto
- 8192 tokens
- Formato de saída
- json
| Campo | Tipo | Requisito | Valores e limites | Predefinição |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObrigatório | Valores e limites openai/text-embedding-3-large | Predefinição— |
Campoinput | Tipostring|string[]|integer[]|integer[][] | RequisitoObrigatório | Valores e limites Número mínimo de elementos: 1 Condições: Lote homogéneo não vazio. Os IDs de tokens são números inteiros não negativos. Orçamento de entrada: Máximo: 8192 · Unidade de texto: bytes UTF8 · Unidade de tokens: elementos do array de tokens | Predefinição— |
Campoencoding_format | Tipostring | RequisitoOpcional | Valores e limites float | Predefiniçãofloat |
Campodimensions | Tipointeger | RequisitoNão suportado | Valores e limites Mínimo: 1 | Predefinição— |
Campouser | Tipojson_value | RequisitoOpcional | Valores e limites Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo. | Predefinição— |
Camposession_id | Tipojson_value | RequisitoOpcional | Valores e limites Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo. | Predefinição— |
Campotrace | Tipojson_value | RequisitoOpcional | Valores e limites Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo. | Predefinição— |
Campoprovider | Tipoobject | RequisitoOpcional | Valores e limites Condições: provider.options rejeitado | Predefinição— |
Combinações de materiais de entrada
text_to_embedding
Parâmetros e ciclo de vida do método
| 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
Guarde o índice e a dimensão de cada vetor.
O nome do modelo multimodal não permite objetos de imagem neste caminho exato.
Tarifários
As referências tarifárias não acrescentam opções ao pedido. Os parâmetros suportados constam do método selecionado.
- Modo rápido
- Tarifa normal Quando o modo rápido está selecionado
- Modo flex
- Tarifa normal Quando o modo flex está selecionado
- Esforço máximo de raciocínio
- Tarifa normal Quando o esforço máximo de raciocínio usa o ajuste predefinido (default)
Tarifas Ailoot
Preços por configuração
| Configuração | Tabela de tarifas | Custo |
|---|---|---|
| ConfiguraçãoTarifas base dos tokens | Tabela de tarifasTarifa base | Custo Entrada · Tokens de entrada $0.00026 / 1K tokens Saída · Tokens de saída $0 / 1K tokens Entrada · Leitura da cache — / 1K tokens Entrada · Escrita na cache — / 1K tokens Entrada · Escrita na cache, 1 hora — / 1K tokens |
O Ailoot reserva um montante estimado antes de um pedido. Após o resultado, liquida o custo final com base na utilização medida. No streaming, a liquidação usa o registo final de utilização. Como funcionam a reserva e a liquidação →
Exemplos de pedidos
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-3-large", "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-large',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Receber e guardar os resultados
Ailoot Ultra · Embeddings
json
Guardar todos os resultados concluídos
Guarde cada resposta, ficheiro e parte de conteúdo devolvidos na íntegra.
Guarde cada vetor com o respetivo índice. O número de vetores tem de ser igual ao número de entradas; as dimensões têm de ser consistentes.
Se for necessário verificar a resposta original
Não é introduzido nenhum endpoint de tarefas de embeddings.
Campos da resposta
| Campo | Tipo |
|---|---|
Campoobject | Tipostring |
Campomodel | Tipostring |
Campodata[].index | Tipointeger |
Campodata[].embedding | Tipofinite float[] |
Campousage | Tipoobject |
Erros e passos seguintes
| Resposta | Condição | Passo seguinte |
|---|---|---|
Resposta400 · invalid_request_error | CondiçãoCampos obrigatórios, representação do material ou valor do parâmetro inválidos | Passo seguinteCorrija os campos indicados antes de um novo pedido de criação. |
Aliases
Aliases do modelo
Ailoot Ultra openai/text-embedding-3-large, text-embedding-3-large
Aliases dos caminhos dos métodos
Use os caminhos dos métodos indicados acima.
IDs de chamada relacionados
Ailoot Ultra · Representações vetoriais · text-embedding-3-large POST /v1/embeddings text-embedding-3-large
text-embedding-3-largeopenai/text-embedding-3-largetext-embedding-3-large
Introdução
O modelo maior de embeddings de texto de terceira geração da OpenAI devolve vetores de 3072 dimensões por predefinição, com um controlo do produtor para representações mais curtas. Utilize-o para recuperação semântica, comparação multilingue e fluxos de conteúdo relacionado ou classificação.
- Entradas aceites
- Texto
- Resultados
- embedding
Disponível no Ailoot · entradas e métodos
Ailoot Ultra · Representações vetoriais · text-embedding-3-large POST /v1/embeddings
- Entrada
text- Saída
embedding- Contexto
- 8192 tokens
- Formato de saída
- json
| Campo | Tipo | Requisito | Valores e limites | Predefinição |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObrigatório | Valores e limites text-embedding-3-large | Predefinição— |
Campoinput | Tipostring|string[]|integer[]|integer[][] | RequisitoObrigatório | Valores e limites Número mínimo de elementos: 1 Condições: Lote homogéneo não vazio. Os IDs de tokens são números inteiros não negativos. Orçamento de entrada: Máximo: 8192 · Unidade de texto: bytes UTF8 · Unidade de tokens: elementos do array de tokens | Predefinição— |
Campoencoding_format | Tipostring | RequisitoOpcional | Valores e limites float | Predefiniçãofloat |
Campodimensions | Tipointeger | RequisitoNão suportado | Valores e limites Mínimo: 1 | Predefinição— |
Campouser | Tipojson_value | RequisitoOpcional | Valores e limites Condições: Metadados JSON opcionais; a semântica exata do fornecedor depende do modelo selecionado. | Predefinição— |
Camposession_id | Tipojson_value | RequisitoOpcional | Valores e limites Condições: Metadados JSON opcionais; a semântica exata do fornecedor depende do modelo selecionado. | Predefinição— |
Campotrace | Tipojson_value | RequisitoOpcional | Valores e limites Condições: Metadados JSON opcionais; a semântica exata do fornecedor depende do modelo selecionado. | Predefinição— |
Campoprovider | Tipoobject | RequisitoOpcional | Valores e limites Condições: provider.options rejeitado | Predefinição— |
Combinações de materiais de entrada
text_to_embedding
Parâmetros e ciclo de vida do método
| 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 | ContratoLeia o documento UTF-8 real e coloque o texto na entrada indicada ou na cadeia de conteúdo da mensagem. |
Ciclo de vida: synchronous_json
Envie o ID exato do modelo e os campos obrigatórios.
Conserve todos os elementos devolvidos e os respetivos identificadores originais.
Tarifários
As referências tarifárias não acrescentam opções ao pedido. Os parâmetros suportados constam do método selecionado.
- Modo rápido
- Tarifa normal Quando o modo rápido está selecionado
- Modo flex
- Tarifa normal Quando o modo flex está selecionado
- Esforço máximo de raciocínio
- Tarifa normal Quando o esforço máximo de raciocínio usa o ajuste predefinido (default)
Tarifas Ailoot
Preços por configuração
| Configuração | Tabela de tarifas | Custo |
|---|---|---|
| ConfiguraçãoTarifas base dos tokens | Tabela de tarifasTarifa base | Custo Entrada · Tokens de entrada $0.00026 / 1K tokens Saída · Tokens de saída $0 / 1K tokens Entrada · Leitura da cache — / 1K tokens Entrada · Escrita na cache — / 1K tokens Entrada · Escrita na cache, 1 hora — / 1K tokens |
O Ailoot reserva um montante estimado antes de um pedido. Após o resultado, liquida o custo final com base na utilização medida. No streaming, a liquidação usa o registo final de utilização. Como funcionam a reserva e a liquidação →
Exemplos de pedidos
Ailoot Ultra · Representações vetoriais · text-embedding-3-large
{
"model": "text-embedding-3-large",
"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-large', '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-large', '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')))
Receber e guardar os resultados
Ailoot Ultra · Representações vetoriais · text-embedding-3-large
json
Guardar todos os resultados concluídos
Guarde cada resposta, ficheiro e parte de conteúdo devolvidos na íntegra.
Conserve todos os vetores de valores finitos com o respetivo índice original. Preserve todas as dimensões e o objeto completo de utilização.
Se for necessário verificar a resposta original
Não é introduzido nenhum endpoint de tarefas de embeddings.
Campos da resposta
| Campo | Tipo |
|---|---|
Campoobject | Tipostring |
Campomodel | Tipostring |
Campodata[].index | Tipointeger |
Campodata[].embedding | Tipofinite float[] |
Campousage | Tipoobject |
Erros e passos seguintes
| Resposta | Condição | Passo seguinte |
|---|---|---|
Resposta400 · invalid_request_error | CondiçãoCampos obrigatórios, representação do material ou valor do parâmetro inválidos | Passo seguinteCorrija os campos indicados antes de um novo pedido de criação. |
Aliases
Aliases do modelo
Ailoot Ultra openai/text-embedding-3-large, text-embedding-3-large
Aliases dos caminhos dos métodos
Use os caminhos dos métodos indicados acima.
IDs de chamada relacionados
FAQ · OpenAI: Text Embedding 3 Large
- Que entradas e resultados estão disponíveis?
POST /v1/embeddings·openai/text-embedding-3-large:text,token_ids→embeddingPOST /v1/embeddings·text-embedding-3-large:text→embedding- Que campos utiliza o pedido?
POST /v1/embeddings·openai/text-embedding-3-large:model,input,encoding_format,providerPOST /v1/embeddings·text-embedding-3-large:model,input,encoding_format,provider- Que limites se aplicam?
POST /v1/embeddings·openai/text-embedding-3-large:ctx:8192;input.budget.maximum:8192(bytes UTF8);input.min_items:1POST /v1/embeddings·text-embedding-3-large:ctx:8192;input.budget.maximum:8192(bytes UTF8);input.min_items:1