Çerez kullanıyoruz. Çerezler ve tarayıcı depolaması oturumunu açık tutar ve tercihlerini hatırlar. İzin verirsen sitenin nasıl kullanıldığını da ölçeriz. İstediğin zaman . Ayrıntılar için çerez politikamıza bak.

Embeddings

Uç noktalar

Embeddings

POST /embeddings ile metni anlamsal arama, kümeleme ve RAG için vektöre dönüştürün; parametreleri, yanıtı, fiyatlandırmayı ve model seçimini öğrenin.

Playground’da dene

Metni anlamsal arama, kümeleme, tekilleştirme ve retrieval-augmented generation (RAG) için vektörlere dönüştürün. Uç nokta OpenAI'ın POST /embeddings yapısıyla aynıdır; bu yüzden client.embeddings.create(...) değişiklik yapmadan çalışır.

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

İstek

ParametreTürZorunluAçıklama
modelstringevetBir embedding modeli kimliği, örn. openai/text-embedding-3-small.
inputstring veya string[]evetEmbedding'i alınacak metin. Birçok girdiyi tek istekte işlemek için dizi gönderin.
dimensionsintegerhayırÇıktı vektörünün boyutu; kısaltmayı destekleyen modeller için (örn. text-embedding-3-*).
encoding_formatstringhayırfloat (varsayılan) veya base64.
userstringhayırKendi son kullanıcı kimliğiniz, olduğu gibi sağlayıcıya iletilir.
providerobjecthayırSağlayıcı yönlendirme tercihleri. Bkz. Sağlayıcı yönlendirme.

Örnek

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

Yanıt

{
  "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, girdinin input dizinizdeki konumuna karşılık gelir.

Model seçimi

Embedding modellerini fiyatlarıyla birlikte, API anahtarı olmadan listeleyin:

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

Farklı modellerin vektörleri birbiriyle karşılaştırılamaz. Her vektörün yanında model kimliğini saklayın ve model değiştirdiğinizde veri kümenizi yeniden embed edin.

Fiyatlandırma

Embedding'ler girdi token'ı başına, modelin listelenen fiyatı üzerinden ("$ / 1M token" olarak gösterilir) faturalandırılır. Her isteğin maliyeti usage.cost alanında (USD) döner ve bakiyenizden düşülür. Bkz. Fiyatlandırma ve faturalandırma.

İpuçları

  • Girdileri toplu gönderin: 100 dizeli tek istek daha hızlıdır ve hız limitinize karşı tek istek sayılır.
  • Her girdiyi modelin bağlam uzunluğunun altında tutun; daha uzun metin sağlayıcı tarafından reddedilir.
  • Vektörleri normalize edin (çoğu model zaten birim uzunlukta döndürür) ve kosinüs benzerliği kullanın.

Hatalar

DurumKodNe zaman
400model_required / invalid_jsonmodel eksik veya gövde bir JSON nesnesi değil.
401invalid_api_keyAnahtar eksik veya geçersiz.
402insufficient_balanceUSD bakiyeniz 0.
403model_not_allowedAnahtarın model izin listesi bu modeli dışlıyor.
404model_not_foundBilinmeyen veya devre dışı model kimliği.
429rate_limitedDakikalık istek limiti aşıldı.

Tam liste: Hatalar.