Usiamo i cookie. Cookie e memoria del browser ti mantengono connesso e ricordano le tue preferenze. Con il tuo consenso misuriamo anche come viene usato il sito. Puoi in qualsiasi momento. Consulta la nostra cookie policy.

Embeddings

Endpoint

Embeddings

Trasforma il testo in vettori con POST /embeddings per ricerca semantica, clustering e RAG, con parametri, risposta, scelta del modello e costi.

Provalo nel playground

Trasforma il testo in vettori per la ricerca semantica, il clustering, la deduplicazione e la retrieval-augmented generation (RAG). L'endpoint ha la stessa forma di POST /embeddings di OpenAI, quindi client.embeddings.create(...) funziona senza modifiche.

POST https://api14.com/api/v1/embeddings

Richiesta

ParametroTipoObbligatorioDescrizione
modelstringsìL'id di un modello di embeddings, ad es. openai/text-embedding-3-small.
inputstring o string[]sìTesto da trasformare in embedding. Passa un array per elaborare più input in una sola richiesta.
dimensionsintegernoDimensione del vettore in uscita, per i modelli che ne supportano la riduzione (ad es. text-embedding-3-*).
encoding_formatstringnofloat (predefinito) o base64.
userstringnoL'id del tuo utente finale, inoltrato all'upstream.
providerobjectnoPreferenze di instradamento dei provider. Vedi Instradamento dei provider.

Esempio

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api14.com/api/v1",
  apiKey: process.env.API14_API_KEY,
});

const result = await client.embeddings.create({
  "model": "openai/text-embedding-3-small",
  "input": [
    "The quick brown fox",
    "Lorem ipsum"
  ]
});
console.log(result.data.map((d) => d.embedding.length));

Risposta

{
  "object": "list",
  "data": [
    { "object": "embedding", "index": 0, "embedding": [0.0023, -0.0091, 0.0154, "..."] }
  ],
  "model": "openai/text-embedding-3-small",
  "usage": { "prompt_tokens": 8, "total_tokens": 8, "cost": 0.00000016 }
}

data[i].index corrisponde alla posizione dell'input nel tuo array input.

Scegliere un modello

Elenca i modelli di embeddings con i relativi prezzi, senza chiave API:

curl https://api14.com/api/v1/embeddings/models
# or, with categories and our prices:
curl "https://api14.com/api/v1/models?category=embeddings"

I vettori di modelli diversi non sono confrontabili. Salva l'id del modello accanto a ogni vettore e rigenera gli embedding dell'intero corpus quando cambi modello.

Prezzi

Gli embeddings sono fatturati per token di input al prezzo indicato per il modello, mostrato come "$ / 1M token". Il costo di ogni richiesta viene restituito in usage.cost (USD) e scalato dal tuo saldo. Vedi Prezzi e fatturazione.

Suggerimenti

  • Raggruppa gli input: una richiesta con 100 stringhe è più veloce e conta come una sola richiesta rispetto al tuo limite di frequenza.
  • Mantieni ogni input sotto la lunghezza di contesto del modello; il testo più lungo viene rifiutato dall'upstream.
  • Normalizza i vettori (la maggior parte dei modelli li restituisce già a lunghezza unitaria) e usa la similarità coseno.

Errori

StatoCodiceQuando
400model_required / invalid_jsonManca model oppure il corpo non è un oggetto JSON.
401invalid_api_keyChiave mancante o non valida.
402insufficient_balanceIl tuo saldo in USD è $0.
403model_not_allowedLa lista dei modelli consentiti della chiave esclude questo modello.
404model_not_foundId del modello sconosciuto o disattivato.
429rate_limitedSuperato il limite di richieste al minuto.

Elenco completo: Errori.