diff --git a/homeassistant/components/litellm/entity.py b/homeassistant/components/litellm/entity.py index 61b34ffc956a..aa7a542c805e 100644 --- a/homeassistant/components/litellm/entity.py +++ b/homeassistant/components/litellm/entity.py @@ -60,7 +60,9 @@ def _convert_content_to_chat_message( return ChatCompletionToolMessageParam( role="tool", tool_call_id=content.tool_call_id, - content=json_dumps(content.tool_result), + content=json_dumps( + {"data": content.result.data, "error": content.result.error} + ), ) role: Literal["user", "assistant", "system"] = content.role diff --git a/tests/components/litellm/snapshots/test_conversation.ambr b/tests/components/litellm/snapshots/test_conversation.ambr index 946c7232c8d2..850a13e13af4 100644 --- a/tests/components/litellm/snapshots/test_conversation.ambr +++ b/tests/components/litellm/snapshots/test_conversation.ambr @@ -262,7 +262,7 @@ ]), }), dict({ - 'content': '{"speech":{"plain":{"speech":"12:00 PM","extra_data":null}},"response_type":"action_done","speech_slots":{"time":"12:00:00"},"data":{"success":[],"failed":[]}}', + 'content': '{"data":{"speech":{"plain":{"speech":"12:00 PM","extra_data":null}},"response_type":"action_done","speech_slots":{"time":"12:00:00"},"data":{"success":[],"failed":[]}},"error":false}', 'role': 'tool', 'tool_call_id': 'mock_tool_call_id', }), @@ -289,7 +289,7 @@ ]), }), dict({ - 'content': '"value1"', + 'content': '{"data":"value1","error":false}', 'role': 'tool', 'tool_call_id': 'call_call_1', }),