@llumiverse/drivers
Version:
LLM driver implementations. Currently supported are: openai, huggingface, bedrock, replicate.
36 lines • 1.71 kB
TypeScript
import type { OutputConfig, ThinkingConfigParam } from "@anthropic-ai/sdk/resources/messages.js";
/**
* Common Claude model options relevant to thinking/effort configuration.
* Works with both VertexAIClaudeOptions and BedrockClaudeOptions.
*/
export interface ClaudeThinkingInput {
thinking_budget_tokens?: number;
effort?: NonNullable<OutputConfig['effort']>;
/** Controls whether thinking content is included in the response. Does not enable thinking. */
include_thoughts?: boolean;
}
/**
* Result of resolving Claude thinking and effort configuration.
*/
export interface ClaudeThinkingResult {
/** Thinking/reasoning config to include in the API payload. */
thinking: ThinkingConfigParam | undefined;
/** Output config (effort) to include in the API payload, if applicable. */
outputConfig: OutputConfig | undefined;
/** Whether sampling parameters (temperature, top_p, top_k) should be stripped. */
hasSamplingRestriction: boolean;
/** Whether the model supports thinking at all (>= Claude 3.7). */
supportsThinking: boolean;
}
/**
* Resolve thinking and effort configuration for a Claude model.
*
* - Extended thinking: enabled by setting `thinking_budget_tokens`.
* - Adaptive thinking: enabled by setting `effort` on models that support it (Opus 4.6+, Sonnet 4.6+).
* - `include_thoughts`: display-only; does not enable thinking.
*
* @param model - The model identifier string
* @param options - User-provided Claude options (thinking_budget_tokens, effort, include_thoughts)
*/
export declare function resolveClaudeThinking(model: string, options?: ClaudeThinkingInput): ClaudeThinkingResult;
//# sourceMappingURL=claude-thinking.d.ts.map