Ana içeriğe atla

İstek Gövdesi

Senkron istek zaman aşımı: Bu chat dışı endpoint, yönlendirilen modelin tamamlanmasını bekler. Büyük girdiler, uzun sesler veya büyük batch’ler yaygın 30s istemci varsayılanlarını aşabilir; bu yüzden HTTP istemcisi zaman aşımını en az 120s olarak ayarlayın.
model
string
gerekli
Kullanılacak embedding modelinin kimliği (ör. text-embedding-3-small).
input
string | array
gerekli
Embedding’e dönüştürülecek girdi metni. Bir string veya string dizisi olabilir.
encoding_format
string
varsayılan:"float"
Embedding’ler için format: float veya base64.
dimensions
integer
Çıktı için boyut sayısı (modele özeldir).
user
string
Kötüye kullanım izleme için son kullanıcınızı temsil eden benzersiz bir tanımlayıcı.

Kullanılabilir Modeller

ModelBoyutlarAçıklama
text-embedding-3-large3072En iyi kalite
text-embedding-3-small1536Dengeli
text-embedding-ada-0021536Eski sürüm

Yanıt

object
string
Her zaman list.
data
array
Embedding nesnelerinden oluşan dizi.Her nesne şunları içerir:
  • object (string): embedding
  • index (integer): Girdi dizisindeki indeks
  • embedding (array): Embedding vektörü
model
string
Kullanılan model.
usage
object
prompt_tokens ve total_tokens ile token kullanımı.
curl -X POST "https://api.tokenlab.sh/v1/embeddings" \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "text-embedding-3-small",
    "input": "The quick brown fox jumps over the lazy dog"
  }'
from openai import OpenAI

client = OpenAI(
    api_key="sk-your-api-key",
    base_url="https://api.tokenlab.sh/v1"
)

response = client.embeddings.create(
    model="text-embedding-3-small",
    input="The quick brown fox jumps over the lazy dog"
)

embedding = response.data[0].embedding
print(f"Embedding dimension: {len(embedding)}")
print(f"First 5 values: {embedding[:5]}")
import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: 'sk-your-api-key',
  baseURL: 'https://api.tokenlab.sh/v1'
});

const response = await client.embeddings.create({
  model: 'text-embedding-3-small',
  input: 'The quick brown fox jumps over the lazy dog'
});

console.log(response.data[0].embedding.slice(0, 5));
<?php
$ch = curl_init('https://api.tokenlab.sh/v1/embeddings');

curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => [
        'Content-Type: application/json',
        'Authorization: Bearer sk-your-api-key'
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'model' => 'text-embedding-3-small',
        'input' => 'The quick brown fox jumps over the lazy dog'
    ])
]);

$response = curl_exec($ch);
curl_close($ch);

$data = json_decode($response, true);
print_r(array_slice($data['data'][0]['embedding'], 0, 5));
{
  "object": "list",
  "data": [
    {
      "object": "embedding",
      "index": 0,
      "embedding": [0.0023, -0.0194, 0.0081, ...]
    }
  ],
  "model": "text-embedding-3-small",
  "usage": {
    "prompt_tokens": 9,
    "total_tokens": 9
  }
}

Toplu Embedding’ler

# Embed multiple texts at once
response = client.embeddings.create(
    model="text-embedding-3-small",
    input=[
        "First document text",
        "Second document text",
        "Third document text"
    ]
)

for i, data in enumerate(response.data):
    print(f"Document {i}: {len(data.embedding)} dimensions")