İçeriğe geç

Unbiased Pareto

Pareto, Unbiased'ın harmanlanmış (blended) modelidir: tek bir model kimliğine tek istek gönderir, tek yanıt alırsınız. LLMTR üzerinde /v1/chat/completions ile çağrılır; metin ve görsel girdi alır, metin üretir.

Model Bağlam Maksimum çıktı Giriş / Cache okuma / Çıkış ($/1M)
unbiased/pareto 262.144 131.072 2.5 / 0.25 / 7.5
Terminal window
curl "$LLMTR_BASE_URL/v1/chat/completions" \
-H "Authorization: Bearer llmtr-your_key" \
-H "Content-Type: application/json" \
-d '{
"model": "unbiased/pareto",
"messages": [
{ "role": "user", "content": "Bu fonksiyondaki hatayı bul." }
],
"max_tokens": 4096
}'
from openai import OpenAI
client = OpenAI(base_url="https://llmtr.com/v1", api_key="llmtr-your_key")
response = client.chat.completions.create(
model="unbiased/pareto",
messages=[{"role": "user", "content": "Bu fonksiyondaki hatayı bul."}],
max_tokens=4096,
)
print(response.choices[0].message.content)
print(response.usage)

Görseller image_url parçası olarak gönderilir; hem base64 data URL hem de https:// adresi kabul edilir.

Terminal window
curl "$LLMTR_BASE_URL/v1/chat/completions" \
-H "Authorization: Bearer llmtr-your_key" \
-H "Content-Type: application/json" \
-d '{
"model": "unbiased/pareto",
"messages": [
{
"role": "user",
"content": [
{ "type": "text", "text": "Bu ekran görüntüsündeki hata mesajı ne diyor?" },
{ "type": "image_url", "image_url": { "url": "https://example.com/screenshot.png" } }
]
}
],
"max_tokens": 1024
}'

Uzak adresi sağlayıcı kendisi indirir. Adresiniz otomatik istekleri engelliyorsa ya da herkese açık değilse istek hata döner; bu durumda görseli data URL olarak gönderin.

Ses, video ve doküman girdisi desteklenmez.

Araç çağrısı tool_choice: "auto" ile ya da tool_choice hiç gönderilmeden çalışır. Tek yanıtta birden fazla araç çağrısı gelebilir; istemciniz message.tool_calls dizisinin tamamını işlemelidir. role: "tool" ile geri verdiğiniz sonuç okunur ve akış (streaming) üzerinde araç çağrısı standart parçalarla gelir.

Terminal window
curl "$LLMTR_BASE_URL/v1/chat/completions" \
-H "Authorization: Bearer llmtr-your_key" \
-H "Content-Type: application/json" \
-d '{
"model": "unbiased/pareto",
"messages": [
{ "role": "user", "content": "İstanbul hava durumu nedir?" }
],
"tools": [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "Bir şehrin güncel hava durumunu getirir",
"parameters": {
"type": "object",
"properties": { "city": { "type": "string" } },
"required": ["city"]
}
}
}
],
"tool_choice": "auto",
"max_tokens": 1024
}'

Bu modelde tool_choice alanının auto dışındaki biçimleri uygulanmaz. LLMTR bu istekleri sağlayıcıya göndermeden 400 ile reddeder; reddedilen istek ücretlendirilmez.

Gönderdiğiniz Sonuç Ne yapmalısınız
tool_choice: "required" 400 auto kullanın ve aracın ne zaman çağrılacağını istemde söyleyin.
Adlandırılmış fonksiyon ({"type": "function", "function": {"name": "..."}}) 400 Aynısı: auto kullanın, hangi aracı istediğinizi istemde belirtin.
tools varken tool_choice: "none" 400 Araç kullanılmasını istemiyorsanız tools alanını hiç eklemeyin.

auto bir garanti değildir: model araç çağırmadan düz metinle de yanıt verebilir. Araç çağrısına bağlı bir döngü kuruyorsanız message.tool_calls alanının varlığını kontrol edin.

Bu, araç çağrısını zorlayarak yapısal çıktı alan kütüphaneleri etkiler (ör. LangChain with_structured_output ve Vercel AI SDK toolChoice: "required"). Bu modelde yapısal çıktı için aşağıdaki json_object biçimini kullanın.

response_format: { "type": "json_object" } desteklenir ve yanıt bir JSON nesnesi olarak gelir. Alanların adını ve tipini istemde tarif edin; yanıtı kendi tarafınızda doğrulayın.

Terminal window
curl "$LLMTR_BASE_URL/v1/chat/completions" \
-H "Authorization: Bearer llmtr-your_key" \
-H "Content-Type: application/json" \
-d '{
"model": "unbiased/pareto",
"messages": [
{ "role": "user", "content": "Ankara hakkında bilgi ver. city (string) ve population (integer) alanlarıyla JSON döndür." }
],
"response_format": { "type": "json_object" },
"max_tokens": 512
}'

json_schema biçimi (şemaya zorlanan yapısal çıktı) bu modelde desteklenmez; göndermeyin.

Tekrarlanan istem ön ekleri kendiliğinden cache'lenir; bunun için bir alan göndermeniz gerekmez. Cache'ten okunan token sayısı usage.prompt_tokens_details.cached_tokens alanında gelir ve prompt_tokens toplamının içindedir. Bu token'lar cache okuma fiyatından, geri kalanı giriş fiyatından faturalanır.

Cache'ten yararlanmak için değişmeyen içeriği (sistem mesajı, araç tanımları, sabit doküman) istemin başına, değişen içeriği sonuna koyun. Cache'in ne kadar süre tutulduğu konusunda bir garanti yoktur.

Faturalama her yanıtın usage alanındaki sayılara göre yapılır. Bu modelde aynı istem için prompt_tokens ve completion_tokens çağrıdan çağrıya değişebilir ve kısa bir yanıtın completion_tokens değeri görünen metinden büyük olabilir. Maliyeti istem uzunluğundan ya da kendi token sayımınızdan tahmin etmeyin; her yanıtın usage alanını okuyun.

stream: true desteklenir. stream_options: { "include_usage": true } gönderirseniz usage son parçada gelir. Parçalar üretim ilerledikçe değil, yanıtın sonuna doğru art arda gelebilir; ilk parçaya kadar geçen süreye göre zaman aşımı kuruyorsanız bunu hesaba katın.

Alan Davranış
max_tokens, max_completion_tokens Çıktıyı sınırlar; sınıra ulaşan yanıt finish_reason: "length" ile biter. 131.072 üzerindeki değer 400 ile reddedilir.
reasoning_effort Desteklenmez; gönderilirse istek 400 ile reddedilir. Modelin ayrı bir akıl yürütme çıktısı yoktur.
temperature, top_p Kabul edilir. Çıktı üzerindeki etkisi hakkında bu sayfa bir iddiada bulunmuyor.

unbiased/pareto sürümsüz bir kimliktir: arkasındaki model sürümünü sağlayıcı kendi tarafında günceller. Aynı kimlik zaman içinde farklı yanıt verebilir; davranışa bağlı testlerinizi buna göre yazın.

İstekler yurt dışındaki üçüncü taraf altyapıda işlenir; istemler ve tamamlamalar sağlayıcı tarafından günlüğe kaydedilebilir. Türkiye'de barındırılan bir LLMTR modeli değildir.