Apply ensure_ascii=False to remaining LLM services and fix changelog format

This commit is contained in:
Mark Backman
2026-03-12 10:34:29 -04:00
parent 765fbeec63
commit 1fe1f0f439
5 changed files with 9 additions and 20 deletions

View File

@@ -1,16 +1 @@
# Reduce Call Tool Result Context Size by Allowing UTF-8 in JSON Serialization
This PR changes tool result serialization to prevent UTF-8 code points from being escaped during serialization. This drastically reduces the context size when returning a response that contains languages other than English.
We have been running a monkey-patched version in production and it helped us improve the agent accuracy and control cost better.
```
>>> data = { "message": "أهلًا بالعالم" }
>>> json.dumps(data)
'{"message": "\\u0623\\u0647\\u0644\\u064b\\u0627 \\u0628\\u0627\\u0644\\u0639\\u0627\\u0644\\u0645"}'
>>>
>>>
>>>
>>> json.dumps(data, ensure_ascii=False)
'{"message": "أهلًا بالعالم"}'
```
- Changed tool result JSON serialization to use `ensure_ascii=False`, preserving UTF-8 characters instead of escaping them. This reduces context size and token usage for non-English languages.