Factory Droid özel modeller: Kendi API anahtarınızla Claude ve GPT kullanın
Tek bir settings.json dosyası, Droid 1.0.0'a Claude Sonnet 5.5, GPT-6.1 Terra ve MiniMax M3.1 Flash'ı tek anahtarla ekledi. Dosya, her model için provider değeri ve karşılaştığımız dört hata burada.
Bu sayfada
- Kısa cevap
- Hangi provider değerini kullanmalısınız?
- Kullandığımız settings.json
- Droid'de özel model nasıl seçilir?
- Aynı hata üzerinde üç model
- Factory hesabı veya planı gerekli mi?
- Hangi hatalarla karşılaşırsınız ve ne düzeltir?
- SSS
- Windows'ta Droid ayar dosyası nerede?
- Özel modelim neden /model içinde görünmüyor?
- Özel modeller görsel okuyabilir mi?
- Özel model için reasoning effort ayarlayabilir miyim?
- Özel modeller Droid masaüstü uygulamasında çalışır mı?
- Kontrol edilen kaynaklar
Her modeli ~/.factory/settings.json içindeki customModels listesine model, baseUrl, apiKey ve provider alanlarıyla ekleyin: Claude için düz alan adıyla anthropic, GPT için openai, geri kalan her şey için generic-chat-completion-api. Droid 1.0.0'da Claude Sonnet 5.5, GPT-6.1 Terra ve MiniMax M3.1 Flash aynı hatayı sırasıyla 33.7, 77.4 ve 30.7 saniyede düzeltti.
Üç koşu da tek anahtarla OmniaKey üzerinden geçti; Claude Sonnet 5.5, GPT-6.1 Terra ve MiniMax M3.1 Flash sayfalarına bu yolla ulaştık. Üçü de aynı bozuk median() fonksiyonunu aldı ve düzeltti.
Kısa cevap
- Nereye yazılır.
~/.factory/settings.jsoniçindekicustomModels(Factory'nin settings dokümanı, 30 Ekim 2026 tarihinde kontrol edildi); alanlarmodel,baseUrl,apiKeyveprovider. - Hangi provider. Claude için
anthropic, GPT modelleri içinopenai, Chat Completions konuşan diğer her şey içingeneric-chat-completion-api. /v1nereye gider.anthropicdüz alan adını alır, çünkü Droid/v1/messagesyolunu kendisi ekler;openaivegeneric-chat-completion-api/v1ile biten bir URL alır.droid execiçin kimlik.custom:, boşlukları tire olan görünen ad, sonra 0'dan başlayan sıra:custom:Claude-Sonnet-5.5-[OmniaKey]-0.- Koşularımız ne gösterdi. Üçü de hatayı düzeltti; Flash 30.7 sn, Claude 33.7 sn, GPT-6.1 Terra 77.4 sn.
Hangi provider değerini kullanmalısınız?
Provider değerini model adına göre değil, endpoint'inizin konuştuğu API'ye göre seçin.
anthropicAnthropic Messages API istekleri gönderir. Claude için kullanın; Anthropic'in base URL'sihttps://api.anthropic.com.openaiOpenAI Responses API istekleri gönderir. GPT modelleri için kullanın; OpenAI'in base URL'sihttps://api.openai.com/v1.generic-chat-completion-apiOpenAI Chat Completions istekleri gönderir. Çoğu diğer model, gateway ve yerel sunucu için sağlayıcının kendi/v1URL'siyle kullanın.
Factory, OpenRouter, Fireworks, Together AI, Ollama, vLLM ve çoğu açık kaynak sağlayıcı için generic-chat-completion-api listeliyor ve OpenAI ya da Anthropic'in resmi API'sini çağırmıyorsanız bu değeri öneriyor (Factory'nin BYOK dokümanı, 30 Ekim 2026 tarihinde kontrol edildi).
Messages API ya da Responses API de konuşan bir gateway anthropic veya openai kullanabilir. Claude ve GPT-6.1 Terra kayıtlarımız OmniaKey üzerinden tam olarak bunu yaptı ve ikisi de çalıştı; OmniaKey, GPT modellerini POST /v1/responses üzerinden sunuyor (OmniaKey'in OpenAI uyumlu dokümanı, 30 Ekim 2026 tarihinde kontrol edildi).
Dördüncü değer bedrock-converse, AWS Bedrock'un Converse API'sindeki modeller içindir. Factory, yalnızca resmi API'lerindeki Anthropic ve OpenAI modellerinin tam test edildiğini ve kıyaslandığını, 30 milyar parametrenin altındaki modellerin ajan tabanlı kodlamada belirgin şekilde daha kötü sonuç verdiğini belirtiyor (Factory'nin BYOK dokümanı, 30 Ekim 2026 tarihinde kontrol edildi).
Kullandığımız settings.json
Droid ~/.factory/settings.json dosyasını ilk çalıştırmada oluşturur, bu yüzden customModels eklemesini zaten var olan dosyaya yapın (Factory'nin settings dokümanı, 30 Ekim 2026 tarihinde kontrol edildi). Bizim dosyamız şöyle:
{
"customModels": [
{
"model": "claude-sonnet-5-5",
"displayName": "Claude Sonnet 5.5 [OmniaKey]",
"baseUrl": "https://api.omniakey.com",
"apiKey": "${OMNIAKEY_API_KEY}",
"provider": "anthropic",
"maxOutputTokens": 16000
},
{
"model": "gpt-6.1-terra",
"displayName": "GPT-6.1 Terra [OmniaKey]",
"baseUrl": "https://api.omniakey.com/v1",
"apiKey": "${OMNIAKEY_API_KEY}",
"provider": "openai",
"maxOutputTokens": 16000
},
{
"model": "minimax-m3.1-flash",
"displayName": "MiniMax M3.1 Flash [OmniaKey]",
"baseUrl": "https://api.omniakey.com/v1",
"apiKey": "${OMNIAKEY_API_KEY}",
"provider": "generic-chat-completion-api",
"maxOutputTokens": 16000
}
]
}
modelAPI'ye gönderilen kimliktir; sağlayıcının model listesinden kopyalayın.displayNamesizin etiketiniz:/modeliçinde görünür vecustom:kimliğini oluşturur.baseUrl,anthropiciçin düz alan adıdır, diğer ikisinde/v1ile biter.apiKey: "${OMNIAKEY_API_KEY}"anahtarı bir ortam değişkeninden okur, böylece dosyanın içinde durmaz (Factory'nin BYOK dokümanı, 30 Ekim 2026 tarihinde kontrol edildi).providerAPI'yi seçer; burada yapılan bir yazım hatası aşağıdaki "Invalid provider" hatasını verir.maxOutputTokens: 16000her yanıtın uzunluğunu sınırlar.
Tek anahtar ve iki base URL üç modeli de kapsıyor: Claude için OmniaKey'in düz alan adı, diğer ikisi için /v1 alan adı. OmniaKey'in kodlama ajanı kurulum dokümanını izlediyseniz aynı anahtar burada da çalışır.
Factory, anahtarların yerel kaldığını ve Factory sunucularına yüklenmediğini söylüyor (Factory'nin BYOK dokümanı, 30 Ekim 2026 tarihinde kontrol edildi). Eski rehberler modelleri ~/.factory/config.json içine koyuyor. Factory'nin BYOK dokümanı hâlâ Droid'in açılışta bunları settings.json içine kopyaladığını yazıyor. Factory'nin GitHub deposundaki bir pull request (#76), 15 Ekim 2026 tarihinde birleşen bir kod değişikliğinin bu kopyalamayı kaldırdığını söylüyor; yeni modelleri doğrudan settings.json içine yazın.
Droid'de özel model nasıl seçilir?
Uygulamada /model açın ve Custom Models başlığının altına bakın; komut satırında droid exec komutuna bir custom: kimliği verin.
Factory'nin dokümanına göre kayıtlı modeller orada displayName etiketiyle görünür; ayrıca /settings > Custom models ya da /model > Manage custom models üzerinden de model ekleyebilirsiniz (30 Ekim 2026 tarihinde kontrol edildi).
droid exec kimliği şöyle kurulur: custom:, ardından boşlukları tireye çevrilmiş görünen ad, sonra bir tire ve modelin customModels içindeki 0'dan başlayan sırası (Factory'nin droid exec dokümanı, 30 Ekim 2026 tarihinde kontrol edildi). Bizde custom:Claude-Sonnet-5.5-[OmniaKey]-0, custom:GPT-6.1-Terra-[OmniaKey]-1 ve custom:MiniMax-M3.1-Flash-[OmniaKey]-2 çıktı.
İndeks dizi sırasını izler; bir modeli diğerinin üstüne eklerseniz altındaki tüm kimlikler kayar, dosyayı düzenledikten sonra kimliği yeniden kopyalayın.
droid exec içindeki -r / --reasoning-effort özel modellerde geçerli değil (Factory'nin droid exec dokümanı, 30 Ekim 2026 tarihinde kontrol edildi). Bunun yerine kayda reasoningEffort yazın.
Aynı hata üzerinde üç model
Aynı iki dosya, aynı komut, her model için bir koşu. stats.py:
def median(values):
"""Return the median of a non-empty list of numbers."""
ordered = sorted(values)
mid = len(ordered) // 2
return ordered[mid]
test_stats.py:
from stats import median
assert median([3, 1, 2]) == 2
assert median([4, 1, 3, 2]) == 2.5
assert median([5]) == 5
assert median([1.5, 2.5]) == 2.0
print("all tests passed")
Komut; koşular arasında yalnızca --model değeri değişiyor:
droid exec --auto medium -o json --model "custom:Claude-Sonnet-5.5-[OmniaKey]-0" "python3 test_stats.py fails. Fix the bug in stats.py without changing the tests, run python3 test_stats.py again, and tell me in one sentence what you changed."
| Model | Süre | Tur | Çıktı token |
|---|---|---|---|
| Claude Sonnet 5.5 | 33.7 s | 3 | 702 |
| GPT-6.1 Terra | 77.4 s | 4 | 451 |
| MiniMax M3.1 Flash | 30.7 s | 4 | 525 |
Bunlar Droid'in kendi sayıları (duration_ms, num_turns, output_tokens). Flash 30.7 sn ile en hızlı bitirdi, Claude en az turu kullandı, GPT-6.1 Terra 77.4 sn ile en uzun sürdü. Droid ilk tokenı Claude için 8.7 sn, Terra için 17.8 sn, Flash için 7.0 sn sonra bildirdi. Üçü de test_stats.py dosyasına dokunmadan hatayı düzeltti ve testler all tests passed yazdırdı.
Claude'un değişikliği:
- return ordered[mid]
+ if len(ordered) % 2:
+ return ordered[mid]
+ return (ordered[mid - 1] + ordered[mid]) / 2
GPT-6.1 Terra aynı dalı eski return satırının üstüne ekledi, MiniMax M3.1 Flash ise % 2 == 1 ile yazdı. Üç yanıt da aynı düzeltmeyi anlattı: çift uzunluklu listede ortadaki iki değerin ortalamasını almak. MiniMax M3.1 Flash incelemesi bu modeli daha ayrıntılı ele alıyor.
Droid'in JSON sonucu her koşuda factory_credits de yazdırdı, oysa hiç giriş yapmamıştık: Claude Sonnet 5.5 için 31,534, GPT-6.1 Terra için 4,830 ve MiniMax M3.1 Flash için 835. Factory'nin dokümanı bu sayının neyi ölçtüğünü ve BYOK kotasıyla nasıl ilişkili olduğunu açıklamıyor (30 Ekim 2026 tarihinde kontrol edildi).
Factory hesabı veya planı gerekli mi?
Koşularımızda custom: modeliyle droid exec bir Factory hesabı istemedi. Factory'nin kendi modelleri ve etkileşimli uygulama hesap istedi.
Droid CLI 1.0.0, 29 Ekim 2026 tarihinde çıktı (Factory'nin changelog'u, 30 Ekim 2026 tarihinde kontrol edildi). Factory oturumu olmayan temiz bir ana klasörde, custom: modeliyle yapılan her droid exec çağrısı kendi anahtarımızla çalıştı. --model olmadan aynı komut hemen durdu: "Authentication failed. Please log in using /login or set a valid FACTORY_API_KEY environment variable." (kimlik doğrulama başarısız; /login ile giriş yapın ya da geçerli bir FACTORY_API_KEY ortam değişkeni tanımlayın). Factory'nin v0.236.0 changelog kaydı (8 Ekim 2026) kaldığınız yerden devam eden oturumları kapsıyor: "Droid exec now resumes a session on your own model credentials without a Factory sign-in." (Droid exec artık bir oturumu Factory girişi olmadan kendi model kimlik bilgilerinizle sürdürüyor.)
Aynı klasörde argümansız droid başlatmak "Please login with your Factory account to continue." mesajında durdu (devam etmek için Factory hesabınızla giriş yapın). Giriş olmadan özel modelleri etkileşimli ya da masaüstü uygulamada deneyemedik; görsel girdisini, Bedrock'u, apiKeyHelper ayarını, reasoningEffort ve düşünme ayarlarını, Windows'u, bir görevden uzun oturumları ve eski config.json dosyasını test etmedik.
Factory'nin Individual planları ayda $20 (Pro), $100 (Plus) ve $200 (Max); fiyat sayfası ayrıca takım başına ayda $60 artı kişi başına $40 ile Teams'i ekliyor ve ücretsiz bireysel plan yok (Factory'nin fiyatlandırma dokümanı ve fiyat sayfası, 30 Ekim 2026 tarihinde kontrol edildi).
Individual fiyatlandırma dokümanı şöyle diyor: "BYOK is free up to an allowance on all Individual plans. After that, usage is charged according to your specific plan." (BYOK tüm Individual planlarda bir kotaya kadar ücretsiz; sonrasında kullanım kendi planınıza göre ücretlendirilir.) Factory bu kotanın ne kadar büyük olduğunu ve sonrasındaki ücretin nasıl hesaplandığını söylemiyor.
Kişisel özel modeller CLI'da ve masaüstü uygulamada çalışıyor, Factory'nin barındırılan web ve mobil uygulamalarında görünmüyor (Factory'nin BYOK dokümanı, 30 Ekim 2026 tarihinde kontrol edildi).
Hangi hatalarla karşılaşırsınız ve ne düzeltir?
Her biri, Droid 1.0.0'da geri kalanı çalışan bir kurulumdaki tek bir yanlış değerden çıktı.
-
anthropicve base URL'de/v1. Droid 0.9 saniye sonra "Requested model was not found on the API provider" yazdırdı (istenen model API sağlayıcısında bulunamadı) ve günlüğüInvalid URL (POST /v1/v1/messages)için404gösterdi. Droid/v1/messagesyolunu kendisi ekliyor, bu yüzden bizim/v1değerimiz ikiye katlandı. Çözüm: düz alan adı,https://api.anthropic.comya dahttps://api.omniakey.com. -
openaive düz alan adı. Droid 1.4 saniye sonra404ve bir nginx "404 Not Found" sayfası yazdırdı; Responses API/v1altında yaşıyor. Çözüm:https://api.openai.com/v1ya dahttps://api.omniakey.com/v1. -
Noktalı model kimliği:
claude-sonnet-5-5yerineclaude-sonnet-5.5. Endpointmodel_not_foundkoduyla503döndü ve "No available channel for model claude-sonnet-5.5" mesajını verdi (claude-sonnet-5.5 modeli için kullanılabilir kanal yok). Droid'in günlüğü her hatayı "overloaded" olarak etiketledi ve bu mesajla çıkmadan önce 259.7 saniye (yaklaşık 4 dakika 20 saniye) boyunca 10 deneme yaptı. İfade gateway'e ait, yeniden denemeler Droid'e. Çözüm: sağlayıcınızın model listesindeki tam kimliği kopyalayın. -
OMNIAKEY_API_KEYDroid'i başlatan kabukta boş. Droid 2.8 saniye sonra401ve "Invalid token" aldı (geçersiz token). Çözüm: anahtarıdroidkomutunu başlattığınız kabukta export edin, sonra yeni bir oturum başlatın.
Factory'nin sorun giderme listesi iki tane daha ekliyor. "Invalid provider", değerin yanlış ya da farklı büyük/küçük harfle yazıldığı anlamına gelir; değer tam olarak anthropic, openai, generic-chat-completion-api ya da bedrock-converse olmalı. Seçicide görünmeyen bir model için doküman ~/.factory/settings.json içindeki JSON söz dizimini ve her kaydın zorunlu alanlarını taşıdığını kontrol etmeyi söylüyor (30 Ekim 2026 tarihinde kontrol edildi).
SSS
Windows'ta Droid ayar dosyası nerede?
%USERPROFILE%\.factory\settings.json, macOS ve Linux'taki ~/.factory/settings.json ile aynı dosya (Factory'nin settings dokümanı, 30 Ekim 2026 tarihinde kontrol edildi). customModels listesini oraya koyun.
Özel modelim neden /model içinde görünmüyor?
Önce ~/.factory/settings.json içindeki JSON söz dizimine, sonra model, baseUrl ve provider alanlarına bakın. Droid kaydedilen değişiklikleri dosya izleme ile algılar (Factory'nin BYOK dokümanı, 30 Ekim 2026 tarihinde kontrol edildi). Desktop 0.184.0 ve CLI 0.227.0 ile bir bildirimde özel modellerin masaüstü seçicide kısa süre görünüp sonra kaybolduğu, droid exec --help çıktısının ise 14 modelin hepsini listelediği görüldü; bu sorun artık kapalı (Factory-AI issue #40, 30 Ekim 2026 tarihinde kontrol edildi).
Özel modeller görsel okuyabilir mi?
Görseller anthropic ve openai için varsayılan olarak açık, generic-chat-completion-api için kapalı; burada noImageSupport varsayılanı true (Factory'nin BYOK dokümanı, 30 Ekim 2026 tarihinde kontrol edildi). Görsellere izin vermek için generic bir kayıtta noImageSupport: false ayarlayın. Bir kullanıcı bu değer ayarlıyken CLI v0.205.1'de görsellerin yine de çıkarıldığını bildirdi (Factory-AI issue #24, 30 Ekim 2026 tarihinde kontrol edildi).
Özel model için reasoning effort ayarlayabilir miyim?
droid exec içindeki -r / --reasoning-effort özel modellerde geçerli değil. Bunun yerine kayda reasoningEffort yazın: Droid'in tanımadığı bir model için varsayılan çabayı belirler ve seçiciye off, low, medium ve high seçeneklerini ekler (Factory'nin BYOK dokümanı, 30 Ekim 2026 tarihinde kontrol edildi).
Özel modeller Droid masaüstü uygulamasında çalışır mı?
Evet: kişisel özel modeller CLI'da ve masaüstü uygulamada kullanılabilir, barındırılan web ve mobil uygulamalarda yer almaz. CLI'daki ve masaüstü uygulamasındaki model düzenleyicileri ikisi de ~/.factory/settings.json dosyasına kaydeder (Factory'nin BYOK dokümanı, 30 Ekim 2026 tarihinde kontrol edildi).
Kontrol edilen kaynaklar
- Factory BYOK dokümanı, 30 Ekim 2026 tarihinde kontrol edildi
- Factory settings dokümanı, 30 Ekim 2026 tarihinde kontrol edildi
- Factory droid exec dokümanı, 30 Ekim 2026 tarihinde kontrol edildi
- Factory sürüm notları, 30 Ekim 2026 tarihinde kontrol edildi
- Factory Individual planları, 30 Ekim 2026 tarihinde kontrol edildi
- Factory fiyatlandırma, 30 Ekim 2026 tarihinde kontrol edildi
- Factory-AI issue #40: özel modeller masaüstü seçiciden kayboluyor, 30 Ekim 2026 tarihinde kontrol edildi
- Factory-AI issue #24: görseller çıkarılıyor, 30 Ekim 2026 tarihinde kontrol edildi
- Factory-AI pull request #76: config.json geçişi, 30 Ekim 2026 tarihinde kontrol edildi
OmniaKey'in kendi dokümanı, 30 Ekim 2026 tarihinde kontrol edildi: API genel bakış ve OpenAI uyumlu API.
Bu makaledeki modeller
İlgili makaleler
DeepSeek Harness'ta Claude ve GPT API'leri nasıl kullanılır
OpenAI protokolündeki tek bir özel sağlayıcı, her modele akıl yürütme düzeyleri ve 128K çıktı sınırı verildiğinde DeepSeek Harness'ta Claude Opus 5.5, Claude Sonnet 5.5 ve GPT-6.1'i çalıştırır. Yerleşik DeepSeek sağlayıcısı, Claude'un reddettiği thinking ayarını gönderir.
Claude Code'u OmniaKey ile kullanın
Claude Code'u OmniaKey'in Anthropic yerel endpoint'ine yönlendirin — iki ortam değişkeni, sessizce değiştirilmeyen Claude modelleri, aylık plan olmadan token başına faturalandırma.
Claude Code için en iyi model
Günlük kodlamaya milyon giriş token'ı başına 2 dolarlık Sonnet 5.5 ile başlayın, birden fazla dosyaya yayılan işleri 4 dolarlık Opus 5.5'e taşıyın, en zor ve en uzun oturumları Fable 5.1'e ayırın, hızlı düzenlemeleri ve alt ajanları Haiku 5.5'e bırakın.