fix(ollama): default unknown capabilities to tools (#84075) · openclaw/openclaw@5e0850f
clawsweeper
·
2026-05-19
·
via Recent Commits to openclaw:main
| Original file line number | Diff line number | Diff line change |
|---|
@@ -760,6 +760,7 @@ jobs:
|
760 | 760 | core.info(`Processed ${processed} pull requests.`); |
761 | 761 | |
762 | 762 | label-issues: |
| 763 | +if: github.event_name == 'issues' |
763 | 764 | permissions: |
764 | 765 | issues: write |
765 | 766 | runs-on: ubuntu-24.04 |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -10,6 +10,7 @@ Docs: https://docs.openclaw.ai
|
10 | 10 | |
11 | 11 | ### Fixes |
12 | 12 | |
| 13 | +- Providers/Ollama: default unknown-capabilities models to tool-capable so discovered native Ollama models can use tools when `/api/show` omits capabilities. (#84055) Thanks @dutifulbob. |
13 | 14 | - Installer/Windows: launch `install.ps1` onboarding as an attached child process so fresh native Windows installs do not freeze visibly at `Starting setup...` or corrupt the wizard's terminal rendering. |
14 | 15 | - Memory/search: close local embedding providers when active-memory searches time out so pending local model loads and embedding contexts are aborted and released. (#83858) Thanks @brokemac79. |
15 | 16 | - Agents: include bounded trajectory queued-writer diagnostics in `pi-trajectory-flush` timeout warnings so flush stalls show pending writes, queued bytes, and append state. Fixes #82961. (#82962) Thanks @galiniliev. |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -41,6 +41,13 @@ describe("ollama provider models", () => {
|
41 | 41 | { name: "llama3:8b", contextWindow: 65536, capabilities: undefined }, |
42 | 42 | { name: "deepseek-r1:14b", contextWindow: undefined, capabilities: undefined }, |
43 | 43 | ]); |
| 44 | +expect( |
| 45 | +buildOllamaModelDefinition( |
| 46 | +enriched[1].name, |
| 47 | +enriched[1].contextWindow, |
| 48 | +enriched[1].capabilities, |
| 49 | +).compat?.supportsTools, |
| 50 | +).toBe(true); |
44 | 51 | }); |
45 | 52 | |
46 | 53 | it("uses Modelfile num_ctx when it expands the discovered context window", async () => { |
@@ -284,6 +291,7 @@ describe("ollama provider models", () => {
|
284 | 291 | |
285 | 292 | const noCapabilities = buildOllamaModelDefinition("unknown-model", 65536); |
286 | 293 | expect(noCapabilities.input).toEqual(["text"]); |
| 294 | +expect(noCapabilities.compat?.supportsTools).toBe(true); |
287 | 295 | expect(noCapabilities.compat?.supportsUsageInStreaming).toBe(true); |
288 | 296 | }); |
289 | 297 | |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -255,7 +255,7 @@ export function buildOllamaModelDefinition(
|
255 | 255 | : capabilities.includes("thinking")); |
256 | 256 | const compat = |
257 | 257 | capabilities === undefined |
258 | | - ? { supportsUsageInStreaming: true } |
| 258 | + ? { supportsTools: true, supportsUsageInStreaming: true } |
259 | 259 | : { |
260 | 260 | supportsTools: capabilities.includes("tools"), |
261 | 261 | supportsUsageInStreaming: true, |
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。