Ana içeriğe geç

Model Sorgulama API'si

@grant CAT.agent.model

Model sorgulama API'si, kullanıcının yönetim sayfasında yapılandırdığı modellere salt okunur erişim sağlar. Güvenlik için API anahtarı asla betiğe gösterilmez.

list — tüm modelleri listele

const models = await CAT.agent.model.list();

ModelSummary[] döndürür:

AlanTürAçıklama
idstringModel yapılandırma kimliği
namestringKullanıcı tanımlı görünen ad (örn. "GPT-4o", "Claude Sonnet")
provider"openai" | "anthropic"Sağlayıcı türü
apiBaseUrlstringAPI temel URL'si
modelstringSağlayıcı API'sine gönderilen model tanımlayıcısı (örn. gpt-4o, claude-sonnet-4-20250514)
maxTokensnumberMaksimum çıkış belirteci sayısı (ayarlanmadıysa atlanır)

Not: döndürülen nesneler bir apiKey alanı içermez.

get — belirli bir modeli al

const model = await CAT.agent.model.get(modelId);

Model yoksa null döndürür.

getDefault — varsayılan model kimliğini al

const defaultId = await CAT.agent.model.getDefault();

Kullanıcının yapılandırdığı varsayılan model kimliğini döndürür; hiçbiri ayarlanmadıysa boş bir dize döndürür.

getSummary — özet model kimliğini al

const summaryModelId = await CAT.agent.model.getSummary();

Kullanıcının özetleme görevleri (sohbet geçmişinin otomatik sıkıştırılması gibi) için özel olarak yapılandırdığı hafif modelin kimliğini döndürür. Ayrıca yapılandırılmadıysa sistem varsayılan modele geri döner ve bu yöntem boş bir dize döndürür.

Kullanım senaryoları

Kullanıcının bir model seçmesine izin verme

// ==UserScript==
// @name Model picker example
// @grant CAT.agent.model
// @grant CAT.agent.conversation
// ==/UserScript==

const models = await CAT.agent.model.list();
const defaultId = await CAT.agent.model.getDefault();

// Listeyi kullanıcıya göster ve seçmesini sağla
const selectedModel = models.find(m => m.id === defaultId) || models[0];

const conv = await CAT.agent.conversation.create({
model: selectedModel.id
});

Belirli bir modelin ayrıntılarını alma

const model = await CAT.agent.model.get("my-model-id");
if (model) {
console.log(`${model.name} (${model.provider}), max output ${model.maxTokens ?? "unset"} tokens`);
}