fix(ai): preserve DeepSeek V4 Pro xhigh reasoning

closes #3662
This commit is contained in:
Mario Zechner
2026-04-24 18:54:27 +02:00
parent 35eae2578c
commit b4e93feb8c
2 changed files with 4 additions and 1 deletions

View File

@@ -5,6 +5,7 @@
### Fixed
- Stopped sending `tools: []` on OpenAI-compatible, Anthropic, OpenAI Responses, OpenAI Codex Responses, and Azure OpenAI Responses requests when no tools are active (e.g. `pi --no-tools`). DashScope/Aliyun Qwen (OpenAI-compatible) rejects empty tools arrays with `"[] is too short - 'tools'"` (HTTP 400); the field is now omitted unless the conversation has tool history (the existing LiteLLM/Anthropic-proxy workaround).
- Fixed `supportsXhigh()` to recognize DeepSeek V4 Pro, preserving `xhigh` reasoning requests so they map to DeepSeek's `max` effort ([#3662](https://github.com/badlogic/pi-mono/issues/3662))
## [0.70.2] - 2026-04-24
### Fixed

View File

@@ -50,6 +50,7 @@ export function calculateCost<TApi extends Api>(model: Model<TApi>, usage: Usage
*
* Supported today:
* - GPT-5.2 / GPT-5.3 / GPT-5.4 / GPT-5.5 model families
* - DeepSeek V4 Pro
* - Opus 4.6+ models (xhigh maps to adaptive effort "max" on Anthropic-compatible providers)
*/
export function supportsXhigh<TApi extends Api>(model: Model<TApi>): boolean {
@@ -57,7 +58,8 @@ export function supportsXhigh<TApi extends Api>(model: Model<TApi>): boolean {
model.id.includes("gpt-5.2") ||
model.id.includes("gpt-5.3") ||
model.id.includes("gpt-5.4") ||
model.id.includes("gpt-5.5")
model.id.includes("gpt-5.5") ||
model.id.includes("deepseek-v4-pro")
) {
return true;
}