Release Notes: v0.7.0¶
Release Date: 2026-07-05
Highlights¶
- Thinking Configuration: Native Gemini thinking level support with
ThinkingConfig - Cross-Provider Reasoning:
ReasoningEffortandThinkingTypemapping to Gemini levels
New Features¶
ThinkingConfig¶
Native support for Gemini's thinking/reasoning configuration:
import "github.com/plexusone/omni-google/omnillm"
level := omnillm.ThinkingLevelHigh
budget := int32(8192)
req := &omnillm.Request{
Model: "gemini-2.0-flash-thinking-exp",
ThinkingConfig: &omnillm.ThinkingConfig{
ThinkingLevel: &level,
ThinkingBudget: &budget,
},
Messages: messages,
}
ThinkingLevel Constants¶
| Constant | Value | Description |
|---|---|---|
ThinkingLevelMinimal |
"MINIMAL" |
Minimal thinking |
ThinkingLevelLow |
"LOW" |
Low thinking effort |
ThinkingLevelMedium |
"MEDIUM" |
Medium thinking effort |
ThinkingLevelHigh |
"HIGH" |
High thinking effort |
Cross-Provider ReasoningEffort¶
Use the unified ReasoningEffort field via the OmniLLM provider interface:
import (
omnillm "github.com/plexusone/omnillm-core"
_ "github.com/plexusone/omni-google/omnillm"
)
effort := omnillm.ReasoningEffortHigh
resp, err := provider.CreateChatCompletion(ctx, &omnillm.ChatCompletionRequest{
Model: "gemini-2.0-flash-thinking-exp",
ReasoningEffort: &effort,
Messages: messages,
})
ReasoningEffort Mapping¶
| ReasoningEffort | Gemini ThinkingLevel |
|---|---|
none |
MINIMAL |
low |
LOW |
medium |
MEDIUM |
high |
HIGH |
ThinkingType Mapping¶
| ThinkingType | Gemini ThinkingLevel |
|---|---|
enabled |
HIGH |
disabled |
MINIMAL |
adaptive |
MEDIUM |
Tests¶
- Unit tests for thinking config conversion
- Tests for ReasoningEffort to ThinkingLevel mapping
- Tests for ThinkingType to ThinkingLevel mapping
- Budget token conversion tests
Dependencies¶
github.com/plexusone/omnillm-corev0.17.0 → v0.18.0
Installation¶
Upgrade Notes¶
This is a backwards-compatible release. The new ThinkingConfig, ReasoningEffort, and Thinking fields are optional and do not affect existing code.