Vi använder cookies. Cookies och webbläsarlagring håller dig inloggad och kommer ihåg dina preferenser. Med ditt tillstånd mäter vi också hur webbplatsen används. Du kan när som helst. Läs vår cookiepolicy.

Embeddings

Endpoints

Embeddings

Förvandla text till vektorer med POST /embeddings för semantisk sökning, klustring och RAG, med parametrar, svar, priser och felkoder.

Testa i playground

Förvandla text till vektorer för semantisk sökning, klustring, deduplicering och retrieval-augmented generation (RAG). Endpointen har samma form som OpenAI:s POST /embeddings, så client.embeddings.create(...) fungerar oförändrat.

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

Anrop

ParameterTypObligatoriskBeskrivning
modelstringjaEtt embeddings-modell-id, t.ex. openai/text-embedding-3-small.
inputstring eller string[]jaText som ska bäddas in. Skicka en array för att bädda in många indata i ett anrop.
dimensionsintegernejStorlek på utdatavektorn, för modeller som stöder förkortning (t.ex. text-embedding-3-*).
encoding_formatstringnejfloat (standard) eller base64.
userstringnejDitt eget slutanvändar-id, som skickas vidare uppströms.
providerobjectnejInställningar för leverantörsroutning. Se Leverantörsroutning.

Exempel

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

Svar

{
  "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 motsvarar indatats position i din input-array.

Välja modell

Lista embeddings-modeller med priser, utan API-nyckel:

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

Vektorer från olika modeller går inte att jämföra. Spara modell-id:t bredvid varje vektor och bädda in ditt material på nytt när du byter modell.

Priser

Embeddings faktureras per indata-token till modellens listade pris, som visas som "$ / 1M tokens". Kostnaden för varje anrop returneras i usage.cost (USD) och dras från ditt saldo. Se Priser och fakturering.

Tips

  • Gruppera indata: ett anrop med 100 strängar går snabbare och räknas som ett anrop mot din hastighetsgräns.
  • Håll varje indata under modellens kontextlängd. Längre text avvisas uppströms.
  • Normalisera vektorer (de flesta modeller returnerar redan enhetslängd) och använd cosinuslikhet.

Fel

StatusKodNär
400model_required / invalid_jsonmodel saknas eller innehållet är inte ett JSON-objekt.
401invalid_api_keyNyckeln saknas eller är ogiltig.
402insufficient_balanceDitt USD-saldo är 0 USD.
403model_not_allowedNyckelns tillåtelselista för modeller utesluter den här modellen.
404model_not_foundOkänt eller inaktiverat modell-id.
429rate_limitedGränsen för anrop per minut har överskridits.

Fullständig lista: Fel.