fix: generate fallback tool call IDs for providers missing id field#12585
fix: generate fallback tool call IDs for providers missing id field#12585T1mn wants to merge 1 commit intoanomalyco:devfrom
Conversation
|
The following comment was made by an LLM, it may be inaccurate: No duplicate PRs found |
0e7d247 to
e73b137
Compare
|
I hope this gets merged soon - GPT OSS fails running on the latest freshly-built vLLM main branch. Every tool call fails with |
|
It's just a hot-fix until this gets merged but I managed to solve this issue for nvidia nim tool usage for myself with this plugin I put together. |
|
lets hope this gets merged in a reasonable timeframe |
, anomalyco#15183, anomalyco#14783) - anomalyco#13502: Retry on timeout errors instead of failing — DOMException TimeoutError now marked as retryable - anomalyco#12585: Generate fallback tool call IDs for providers (NVIDIA NIM, GLM, Bedrock, Chutes) that omit the id field in streaming responses - anomalyco#15183: Prevent literal NUL file creation on POSIX — redirects to /dev/null instead of writing "nul" files - anomalyco#14783: Block reasoningSummary injection for GPT-5 through openai-compatible adapter (keeps reasoningEffort, strips summary) Co-Authored-By: Claude Opus 4.6 <[email protected]>
|
This issue still exists. device:mac air Version information: OpenCode version is 1.2.27, and the model used is kimi-k2-thinking. Error message: AI_InvalidResponseDataError: Expected 'id' to be a string. Background: This error occurred when executing the command |
Fixes #6290
Fixes #1880
Fixes #10885
Fixes #10189
Adds fallback ID generation for tool calls when providers like NVIDIA NIM, GLM, AWS Bedrock, and Chutes omit the 'id' field in their streaming responses. Instead of throwing an error, we now generate a UUID using generateId() for these known non-compliant providers while maintaining strict validation for others.
This aligns with the existing pattern used elsewhere in the codebase (toolCall.id ?? generateId()).