From c7ff1db1fce8be2dc46760d9b67bdd675dc37820 Mon Sep 17 00:00:00 2001 From: Cursor Bot Date: Tue, 20 Jan 2026 20:42:31 +0000 Subject: [PATCH 1/5] Fix OpenAI temperature handling --- src/art/tinker/service.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/art/tinker/service.py b/src/art/tinker/service.py index d20a25319..0e16261ce 100644 --- a/src/art/tinker/service.py +++ b/src/art/tinker/service.py @@ -332,6 +332,9 @@ async def chat_completions( add_generation_prompt=True, ) ) + temperature = body.get("temperature") + if temperature is None: + temperature = 1.0 sample_response = await sampler_client.sample_async( prompt=prompt, num_samples=body.get("n") or 1, @@ -339,7 +342,7 @@ async def chat_completions( max_tokens=body.get("max_completion_tokens") or body.get("max_tokens"), seed=body.get("seed"), - temperature=body.get("temperature") or 1.0, + temperature=temperature, top_k=body.get("top_k") or -1, top_p=body.get("top_p") or 1.0, ), From 3b9d734f1de010d500f5bb91198bfa0bbb444f86 Mon Sep 17 00:00:00 2001 From: Cursor Bot Date: Tue, 20 Jan 2026 20:49:52 +0000 Subject: [PATCH 2/5] Simplify temperature default --- src/art/tinker/service.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/art/tinker/service.py b/src/art/tinker/service.py index 0e16261ce..a10e66dde 100644 --- a/src/art/tinker/service.py +++ b/src/art/tinker/service.py @@ -332,9 +332,7 @@ async def chat_completions( add_generation_prompt=True, ) ) - temperature = body.get("temperature") - if temperature is None: - temperature = 1.0 + temperature = body.get("temperature", 1.0) sample_response = await sampler_client.sample_async( prompt=prompt, num_samples=body.get("n") or 1, From 7fc8b89fef0cb14eae0790cef6f87c614fe4ccc5 Mon Sep 17 00:00:00 2001 From: Cursor Bot Date: Tue, 20 Jan 2026 20:51:38 +0000 Subject: [PATCH 3/5] Inline temperature default --- src/art/tinker/service.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/art/tinker/service.py b/src/art/tinker/service.py index a10e66dde..55caab0a9 100644 --- a/src/art/tinker/service.py +++ b/src/art/tinker/service.py @@ -332,7 +332,7 @@ async def chat_completions( add_generation_prompt=True, ) ) - temperature = body.get("temperature", 1.0) + temperature=body.get("temperature", 1.0) sample_response = await sampler_client.sample_async( prompt=prompt, num_samples=body.get("n") or 1, From 287e2877da64973996185dcb71feae6c27f86dbf Mon Sep 17 00:00:00 2001 From: Cursor Bot Date: Tue, 20 Jan 2026 20:53:14 +0000 Subject: [PATCH 4/5] Inline temperature default (one-line) --- src/art/tinker/service.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/art/tinker/service.py b/src/art/tinker/service.py index 55caab0a9..25902ab6f 100644 --- a/src/art/tinker/service.py +++ b/src/art/tinker/service.py @@ -332,7 +332,6 @@ async def chat_completions( add_generation_prompt=True, ) ) - temperature=body.get("temperature", 1.0) sample_response = await sampler_client.sample_async( prompt=prompt, num_samples=body.get("n") or 1, @@ -340,7 +339,7 @@ async def chat_completions( max_tokens=body.get("max_completion_tokens") or body.get("max_tokens"), seed=body.get("seed"), - temperature=temperature, + temperature=body.get("temperature", 1.0), top_k=body.get("top_k") or -1, top_p=body.get("top_p") or 1.0, ), From 0371be362df14aa61407ab892b66e2896348b89f Mon Sep 17 00:00:00 2001 From: Cursor Bot Date: Wed, 21 Jan 2026 19:09:32 +0000 Subject: [PATCH 5/5] Fix type error in temperature handling Use walrus operator to properly narrow type from float | None to float, while still allowing temperature=0 and defaulting to 1.0 when None. --- src/art/tinker/service.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/art/tinker/service.py b/src/art/tinker/service.py index 25902ab6f..1db653c07 100644 --- a/src/art/tinker/service.py +++ b/src/art/tinker/service.py @@ -339,7 +339,9 @@ async def chat_completions( max_tokens=body.get("max_completion_tokens") or body.get("max_tokens"), seed=body.get("seed"), - temperature=body.get("temperature", 1.0), + temperature=t + if (t := body.get("temperature")) is not None + else 1.0, top_k=body.get("top_k") or -1, top_p=body.get("top_p") or 1.0, ),