Skip to content

Release Notes: v0.17.0

Release Date: 2026-07-05

Highlights

  • Reasoning Support: Unified ReasoningEffort and ThinkingConfig across all thick providers

New Features

Re-exported Types and Constants

The following types and constants are now available directly from the omnillm package:

// Types
omnillm.ThinkingConfig

// Reasoning effort constants
omnillm.ReasoningEffortNone
omnillm.ReasoningEffortLow
omnillm.ReasoningEffortMedium
omnillm.ReasoningEffortHigh

// Thinking type constants (Anthropic)
omnillm.ThinkingTypeEnabled
omnillm.ThinkingTypeDisabled
omnillm.ThinkingTypeAdaptive

Reasoning Support

Control LLM reasoning depth with the unified ReasoningEffort or Thinking fields:

import "github.com/plexusone/omnillm"

effort := omnillm.ReasoningEffortHigh
response, err := client.CreateChatCompletion(ctx, &omnillm.ChatCompletionRequest{
    Model:           "o1-preview", // or claude-sonnet-4, gemini-2.0-flash-thinking-exp, etc.
    ReasoningEffort: &effort,
    Messages:        messages,
})

Provider Support

Provider Module Reasoning Support
OpenAI omni-openai v0.5.0 ReasoningEffort for o1/o3 models
Anthropic omni-anthropic v0.3.0 ThinkingConfig and ReasoningEffort
Gemini omni-google v0.7.0 ThinkingLevel and ReasoningEffort
OpenRouter omni-openrouter v0.2.0 Extended ReasoningEffort values
Bedrock omni-aws v0.9.0 Partial (model-dependent)

ReasoningEffort Values

Constant Value Description
ReasoningEffortNone "none" Disable reasoning
ReasoningEffortLow "low" Light reasoning
ReasoningEffortMedium "medium" Balanced reasoning
ReasoningEffortHigh "high" Deep reasoning

Extended Thinking (Anthropic)

For Anthropic models, use ThinkingConfig for fine-grained control:

budget := int64(10000)
response, err := client.CreateChatCompletion(ctx, &omnillm.ChatCompletionRequest{
    Model: "claude-sonnet-4-6",
    Thinking: &omnillm.ThinkingConfig{
        Type:         omnillm.ThinkingTypeEnabled,
        BudgetTokens: &budget,
    },
    Messages: messages,
})

Dependencies

Module Previous New
omnillm-core v0.17.0 v0.18.0
omni-openai v0.4.1 v0.5.0
omni-anthropic v0.2.2 v0.3.0
omni-google v0.6.1 v0.7.0
omni-openrouter v0.1.0 v0.2.0

Installation

go get github.com/plexusone/omnillm@v0.17.0

Documentation

Upgrade Notes

This is a backwards-compatible release. The new ReasoningEffort and Thinking fields are optional and do not affect existing code.