We gebruiken cookies. Cookies en browseropslag houden je ingelogd en onthouden je voorkeuren. Met je toestemming meten we ook hoe de site wordt gebruikt. Je kunt je wanneer je wilt. Zie ons cookiebeleid.

Embeddings

Endpoints

Embeddings

Zet tekst om in vectoren met POST /embeddings voor semantisch zoeken, clustering en RAG, met parameters, prijzen en foutcodes.

Probeer het in de playground

Zet tekst om in vectoren voor semantisch zoeken, clustering, ontdubbelen en retrieval-augmented generation (RAG). Het endpoint heeft dezelfde vorm als POST /embeddings van OpenAI, dus client.embeddings.create(...) werkt ongewijzigd.

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

Request

ParameterTypeVerplichtBeschrijving
modelstringjaEen embeddings-model-id, bijv. openai/text-embedding-3-small.
inputstring of string[]jaTe embedden tekst. Geef een array mee om meerdere invoeren in één request te embedden.
dimensionsintegerneeGrootte van de uitvoervector, voor modellen die inkorten ondersteunen (bijv. text-embedding-3-*).
encoding_formatstringneefloat (standaard) of base64.
userstringneeJe eigen eindgebruiker-id, doorgegeven aan de upstream.
providerobjectneeVoorkeuren voor provider routing. Zie Provider routing.

Voorbeeld

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));

Response

{
  "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 komt overeen met de positie van de invoer in je input-array.

Een model kiezen

Toon embeddings-modellen met hun prijzen, zonder API-key:

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

Vectoren van verschillende modellen zijn niet vergelijkbaar. Bewaar het model-id bij elke vector en embed je corpus opnieuw wanneer je van model wisselt.

Prijzen

Embeddings worden per invoertoken gefactureerd tegen de vermelde prijs van het model, getoond als "$ / 1M tokens". De kosten van elk request staan in usage.cost (USD) en worden van je saldo afgeschreven. Zie Prijzen en facturering.

Tips

  • Bundel invoer: één request met 100 strings is sneller en telt als één request voor je rate limit.
  • Houd elke invoer onder de contextlengte van het model; langere tekst wordt upstream geweigerd.
  • Normaliseer vectoren (de meeste modellen geven al eenheidslengte terug) en gebruik cosinusgelijkenis.

Fouten

StatusCodeWanneer
400model_required / invalid_jsonmodel ontbreekt of de body is geen JSON-object.
401invalid_api_keyOntbrekende of ongeldige key.
402insufficient_balanceJe USD-saldo is $0.
403model_not_allowedDe modelallowlist van de key sluit dit model uit.
404model_not_foundOnbekend of uitgeschakeld model-id.
429rate_limitedRequests per minuut overschreden.

Volledige lijst: Fouten.