Fix streaming tool call nil arguments#587
Conversation
|
Faced exactly the same issue with openrouter provider |
|
I had been running into issues using Haiku 4.5 at AWS Bedrock while streaming and using tool calls. The way it manifested was the model calling a tool with incorrect parameters. I always had a sneaking suspicion that it wasn't model hallucination because I had never experienced that when I was using the AWS SDK directly instead of RubyLLM. I just applied this patch to my system and my sreaming issues with Haiku seen to have been resolved. this would be great to get merged into core. |
|
Thanks for confirming and for testing this. |
|
Is this error I've just started seeing on local/Ollama related to this PR? I wasn't seeing this about a month ago, maybe a recent Ollama update changed something? If not related, shall I open a new issue? |
|
Hi @KieranP could you root cause that error to this PR? |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #587 +/- ##
==========================================
+ Coverage 80.85% 80.87% +0.01%
==========================================
Files 113 113
Lines 5177 5181 +4
Branches 1340 1342 +2
==========================================
+ Hits 4186 4190 +4
Misses 991 991 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@KieranP thanks for reporting this. I traced it and it looks separate from #587: this PR fixes |
What this does
Fixes a streaming crash when tool-call deltas omit
function.argumentsby normalizing nil/empty fragments during accumulation, and adds a regression spec to cover the case.Type of change
Scope check
Required for new features
PRs for new features or enhancements without a prior approved issue will be closed.
Quality check
overcommit --installand all hooks passbundle exec rake vcr:record[provider_name]bundle exec rspecmodels.json,aliases.json)AI-generated code
API changes