Suppress debug logs for model routing and ignore empty tools arrays

- Comment out verbose routing logs in the API server to reduce noise.
- Remove the `tools` field from Qwen client requests when it is an empty array.
- Add guards in Claude, Codex, Gemini‑CLI, and Gemini translators to skip tool conversion when the `tools` array is empty, preventing unnecessary payload modifications.
This commit is contained in:
Luis Pater
2025-08-27 22:29:08 +08:00
parent 1c4183d943
commit 7a6adfa97e
6 changed files with 11 additions and 6 deletions

View File

@@ -329,6 +329,11 @@ func (c *QwenClient) APIRequest(ctx context.Context, modelName, endpoint string,
}
}
toolsResult := gjson.GetBytes(jsonBody, "tools")
if toolsResult.IsArray() && len(toolsResult.Array()) == 0 {
jsonBody, _ = sjson.DeleteBytes(jsonBody, "tools")
}
streamResult := gjson.GetBytes(jsonBody, "stream")
if streamResult.Exists() && streamResult.Type == gjson.True {
jsonBody, _ = sjson.SetBytes(jsonBody, "stream_options.include_usage", true)