Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,17 @@

All notable changes to blockrun-llm will be documented in this file.

## 1.21.1 — 2026-10-20

### Changed
- **Router Core re-synced to upstream `8773a99`.** A live probe confirmed
well-formed tool calls from `deepseek/deepseek-v4.1-flash` and
`openai/gpt-6.1-sol`, so both are now tool-capable and join the verified
tool fallbacks behind the configured chains. `google/gemini-4-argon` gets a
capability row (vision, not yet probed for tools, so it fails closed). The
port reproduces upstream's 88-request decision snapshot exactly, and no
primary changes.

## 1.21.0 — 2026-10-20

### Changed
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.21.0
1.21.1
2 changes: 1 addition & 1 deletion blockrun_llm/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@
create_wallet as generate_wallet, # User-friendly alias
)

__version__ = "1.21.0"
__version__ = "1.21.1"
__all__ = [
"DEFAULT_API_KEY_URL",
"ENV_API_KEY",
Expand Down
2 changes: 1 addition & 1 deletion blockrun_llm/router_core/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Router Core — deterministic, constraint-first model routing.

Python port of `@blockrun/router-core <https://github.com/BlockRunAI/router-core>`_
(upstream commit ``2cd5a10``), the same routing engine the TypeScript SDK and
(upstream commit ``8773a99``), the same routing engine the TypeScript SDK and
the BlockRun gateway use. The package is deliberately product-neutral: task
classification, hard capability filtering, portfolio scoring, ordered
fallbacks, and routing configuration. It contains no wallet, gateway client,
Expand Down
2 changes: 1 addition & 1 deletion blockrun_llm/router_core/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Default Routing Config

Python port of ``@blockrun/router-core`` ``config.ts`` (upstream commit
``2cd5a10``; the file is unchanged since ``e38958b``, 2026-09-29, so it is the
``8773a99``; the file is unchanged since ``e38958b``, 2026-09-29, so it is the
same table the TypeScript SDK bundles). V3.5: every tier rung is a public
catalog id.

Expand Down
10 changes: 8 additions & 2 deletions blockrun_llm/router_core/model_capabilities.py
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@
"deepseek/deepseek-v4.1-flash": {
"context_window": 1_048_576,
"max_output_tokens": 65_536,
"supports_tools": False,
"supports_tools": True,
"supports_vision": False,
},
"google/gemini-2.5-flash": {
Expand Down Expand Up @@ -200,6 +200,12 @@
"supports_tools": True,
"supports_vision": True,
},
"google/gemini-4-argon": {
"context_window": 1_048_576,
"max_output_tokens": 65_536,
"supports_tools": False,
"supports_vision": True,
},
"minimax/minimax-m2.7": {
"context_window": 204_800,
"max_output_tokens": 16_384,
Expand Down Expand Up @@ -435,7 +441,7 @@
"openai/gpt-6.1-sol": {
"context_window": 1_050_000,
"max_output_tokens": 128_000,
"supports_tools": False,
"supports_tools": True,
"supports_vision": True,
},
"openai/o1": {
Expand Down
16 changes: 16 additions & 0 deletions blockrun_llm/router_core/model_profiles.generated.json
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,14 @@
"errorRate": 0,
"samples": 3
},
"deepseek/deepseek-v4.1-flash": {
"measuredAt": "2026-10-20T18:12:51Z",
"latencyMs": 2383.5,
"p95LatencyMs": 2547.8,
"outputTokensPerSecond": 216.53,
"errorRate": 0,
"samples": 3
},
"google/gemini-2.5-flash": {
"measuredAt": "2026-08-29T16:51:33Z",
"latencyMs": 5416.4,
Expand Down Expand Up @@ -383,6 +391,14 @@
"errorRate": 0,
"samples": 3
},
"openai/gpt-6.1-sol": {
"measuredAt": "2026-10-20T18:12:51Z",
"latencyMs": 11324,
"p95LatencyMs": 12747.6,
"outputTokensPerSecond": 45.11,
"errorRate": 0,
"samples": 3
},
"openai/o1": {
"measuredAt": "2026-08-29T16:51:33Z",
"latencyMs": 4324.9,
Expand Down
2 changes: 2 additions & 0 deletions blockrun_llm/router_core/portfolio.py
Original file line number Diff line number Diff line change
Expand Up @@ -1101,11 +1101,13 @@ def evidence_candidates(task: TaskType) -> list[str]:
"anthropic/claude-fable-5.1",
"anthropic/claude-opus-5.5",
"anthropic/claude-sonnet-5.5",
"deepseek/deepseek-v4.1-flash",
"google/gemini-3.8-flash",
"openai/gpt-5.1",
"openai/gpt-6-astra",
"openai/gpt-6-luna",
"openai/gpt-6-sol",
"openai/gpt-6.1-sol",
"xai/grok-4.6",
"xai/grok-4.7",
"xiaomi/mimo-v2.5",
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "hatchling.build"

[project]
name = "blockrun-llm"
version = "1.21.0"
version = "1.21.1"
description = "BlockRun SDK - Pay-per-request AI (LLM, Image, Video, Music, Voice) via x402 on Base and Solana"
readme = "README.md"
license = "MIT"
Expand Down
Loading
Loading