mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-09-07 08:26:53 +08:00
Merge pull request #5382 from jxxghp/copilot/fix-tool-call-id-error
This commit is contained in:
@@ -113,7 +113,11 @@ class MoviePilotAgent:
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
elif msg.get("role") == "tool_result":
|
elif msg.get("role") == "tool_result":
|
||||||
chat_history.add_message(ToolMessage(content=msg.get("content", "")))
|
metadata = msg.get("metadata", {})
|
||||||
|
chat_history.add_message(ToolMessage(
|
||||||
|
content=msg.get("content", ""),
|
||||||
|
tool_call_id=metadata.get("call_id", "unknown")
|
||||||
|
))
|
||||||
elif msg.get("role") == "system":
|
elif msg.get("role") == "system":
|
||||||
chat_history.add_message(SystemMessage(content=msg.get("content", "")))
|
chat_history.add_message(SystemMessage(content=msg.get("content", "")))
|
||||||
return chat_history
|
return chat_history
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ class MoviePilotTool(BaseTool, metaclass=ABCMeta):
|
|||||||
# 记忆工具调用结果
|
# 记忆工具调用结果
|
||||||
if isinstance(result, str):
|
if isinstance(result, str):
|
||||||
formated_result = result
|
formated_result = result
|
||||||
elif isinstance(result, int, float):
|
elif isinstance(result, (int, float)):
|
||||||
formated_result = str(result)
|
formated_result = str(result)
|
||||||
else:
|
else:
|
||||||
formated_result = json.dumps(result, ensure_ascii=False, indent=2)
|
formated_result = json.dumps(result, ensure_ascii=False, indent=2)
|
||||||
@@ -83,7 +83,10 @@ class MoviePilotTool(BaseTool, metaclass=ABCMeta):
|
|||||||
session_id=self._session_id,
|
session_id=self._session_id,
|
||||||
user_id=self._user_id,
|
user_id=self._user_id,
|
||||||
role="tool_result",
|
role="tool_result",
|
||||||
content=formated_result
|
content=formated_result,
|
||||||
|
metadata={
|
||||||
|
"call_id": self.__class__.__name__
|
||||||
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
return result
|
return result
|
||||||
|
|||||||
Reference in New Issue
Block a user