fix(ollama): revert "off" guard — ThinkingLevel excludes "off" at type level

pi-ai ThinkingLevel = "minimal"|"low"|"medium"|"high"|"xhigh" (no "off").
The !== "off" check caused TS2367. Remove guard and test since the type
system already prevents reasoning="off" from reaching this code path.
This commit is contained in:
杨艺韬(yangyitao) 2026-03-21 02:55:17 +00:00
parent 2092d1a73b
commit d6396ac86f
2 changed files with 1 additions and 28 deletions

View File

@ -598,33 +598,6 @@ describe("createOllamaStreamFn", () => {
},
);
});
it("sends think:false when reasoning is 'off'", async () => {
await withMockNdjsonFetch(
[
'{"model":"m","created_at":"t","message":{"role":"assistant","content":"ok"},"done":false}',
'{"model":"m","created_at":"t","message":{"role":"assistant","content":""},"done":true,"prompt_eval_count":1,"eval_count":1}',
],
async (fetchMock) => {
const streamFn = createOllamaStreamFn("http://ollama-host:11434");
const stream = await streamFn(
{
id: "deepseek-r1:32b",
api: "ollama",
provider: "ollama",
contextWindow: 131072,
} as never,
{ messages: [{ role: "user", content: "hello" }] } as never,
{ reasoning: "off" } as never,
);
await collectStreamEvents(stream);
const [, reqInit] = fetchMock.mock.calls[0] as unknown as [string, RequestInit];
const body = JSON.parse(reqInit.body as string) as { think?: boolean };
expect(body.think).toBe(false);
},
);
});
});
describe("resolveOllamaBaseUrlForRun", () => {

View File

@ -464,7 +464,7 @@ export function createOllamaStreamFn(
// `think` boolean. Forward the reasoning level so `think: false` is
// sent explicitly when thinking is disabled (#46680).
const thinkParam: { think?: boolean } = {};
if (options?.reasoning && options.reasoning !== "off") {
if (options?.reasoning) {
thinkParam.think = true;
} else if (options) {
// Thinking explicitly disabled tell Ollama not to think.