콘텐츠로 이동

Capability

이 콘텐츠는 아직 번역되지 않았습니다.

type Capability = {
background?: boolean;
defaultContextWithoutModifier?: number;
effectiveContext?: number;
hostedTools?: string[];
inputModalities: {
document: "supported" | "rejected" | "silently_dropped";
image: "supported" | "rejected" | "silently_dropped";
};
maxContext: number;
maxOutput?: number;
modelModifiers: string[];
promptCaching: {
maxBreakpoints?: number;
minCacheableTokens?: number;
mode: "explicit" | "implicit" | "ignored";
ttlSeconds?: number;
};
quirks: {
claudeModelNameMapping: boolean;
countTokensEndpoint?: boolean;
maxTokensExcludesReasoning?: boolean;
minTimeoutMs?: number;
modelsEndpoint?: boolean;
stopSequences?: "ignored" | "honored" | "misreported_end_turn";
streamUsageLocation?: "message_start" | "message_delta" | "both";
systemRoleInMessages: boolean;
unknownModelFallback: boolean;
};
reasoning?: boolean;
sampling: {
temperature?: {
clampEpsilon: number;
max: number;
maxExclusive: boolean;
min: number;
minExclusive: boolean;
};
temperatureFixed?: number;
temperatureRange?: [number, number];
};
thinking: {
budgetMaxTokens?: number;
budgetTokens: "ignored" | "honored";
cannotDisable: boolean;
effortParam?: string;
mustEchoBack: boolean;
signatureShape?: "opaque" | "always_empty" | "absent";
toggleValues: string[];
};
thinkingOptional?: boolean;
toolChoice: boolean;
vision: boolean;
};

模型能力位(CapabilitySchema 推导;经 schema parse 后默认值已填充)。

optional background?: boolean;

optional defaultContextWithoutModifier?: number;

optional effectiveContext?: number;

optional hostedTools?: string[];

inputModalities: {
document: "supported" | "rejected" | "silently_dropped";
image: "supported" | "rejected" | "silently_dropped";
};
document: "supported" | "rejected" | "silently_dropped";
image: "supported" | "rejected" | "silently_dropped";

maxContext: number;

optional maxOutput?: number;

modelModifiers: string[];

promptCaching: {
maxBreakpoints?: number;
minCacheableTokens?: number;
mode: "explicit" | "implicit" | "ignored";
ttlSeconds?: number;
};
optional maxBreakpoints?: number;
optional minCacheableTokens?: number;
mode: "explicit" | "implicit" | "ignored";
optional ttlSeconds?: number;

quirks: {
claudeModelNameMapping: boolean;
countTokensEndpoint?: boolean;
maxTokensExcludesReasoning?: boolean;
minTimeoutMs?: number;
modelsEndpoint?: boolean;
stopSequences?: "ignored" | "honored" | "misreported_end_turn";
streamUsageLocation?: "message_start" | "message_delta" | "both";
systemRoleInMessages: boolean;
unknownModelFallback: boolean;
};
claudeModelNameMapping: boolean;
optional countTokensEndpoint?: boolean;
optional maxTokensExcludesReasoning?: boolean;
optional minTimeoutMs?: number;
optional modelsEndpoint?: boolean;
optional stopSequences?: "ignored" | "honored" | "misreported_end_turn";
optional streamUsageLocation?: "message_start" | "message_delta" | "both";
systemRoleInMessages: boolean;
unknownModelFallback: boolean;

optional reasoning?: boolean;

sampling: {
temperature?: {
clampEpsilon: number;
max: number;
maxExclusive: boolean;
min: number;
minExclusive: boolean;
};
temperatureFixed?: number;
temperatureRange?: [number, number];
};
optional temperature?: {
clampEpsilon: number;
max: number;
maxExclusive: boolean;
min: number;
minExclusive: boolean;
};
clampEpsilon: number;
max: number;
maxExclusive: boolean;
min: number;
minExclusive: boolean;
optional temperatureFixed?: number;
optional temperatureRange?: [number, number];

thinking: {
budgetMaxTokens?: number;
budgetTokens: "ignored" | "honored";
cannotDisable: boolean;
effortParam?: string;
mustEchoBack: boolean;
signatureShape?: "opaque" | "always_empty" | "absent";
toggleValues: string[];
};
optional budgetMaxTokens?: number;
budgetTokens: "ignored" | "honored";
cannotDisable: boolean;
optional effortParam?: string;
mustEchoBack: boolean;
optional signatureShape?: "opaque" | "always_empty" | "absent";
toggleValues: string[];

optional thinkingOptional?: boolean;

toolChoice: boolean;

vision: boolean;