Fix: Use 'message' (singular string) instead of 'messages' array
This commit is contained in:
@@ -82,27 +82,28 @@ class LocalMem0Client:
|
||||
result = self._request("GET", "/memories", params=params)
|
||||
return self._unwrap_results(result)
|
||||
|
||||
def add(
|
||||
def add(
|
||||
self,
|
||||
messages: List[Dict[str, str]],
|
||||
filters: Dict[str, Any],
|
||||
infer: bool = True,
|
||||
) -> Dict:
|
||||
"""Add conversation messages for fact extraction."""
|
||||
# Extract message content from messages array
|
||||
if messages and isinstance(messages[0], dict):
|
||||
message_content = messages[0].get("content", "")
|
||||
elif messages:
|
||||
message_content = str(messages[0])
|
||||
else:
|
||||
message_content = ""
|
||||
|
||||
payload = {
|
||||
"messages": messages,
|
||||
"message": message_content,
|
||||
"user_id": filters.get("user_id"),
|
||||
"agent_id": filters.get("agent_id"),
|
||||
}
|
||||
if not infer:
|
||||
payload["messages"] = [
|
||||
{
|
||||
"role": "user",
|
||||
"content": messages[0].get("content", "")
|
||||
if isinstance(messages[0], dict)
|
||||
else messages[0],
|
||||
}
|
||||
]
|
||||
payload["only_store_messages"] = True
|
||||
return self._request("POST", "/add", json=payload)
|
||||
|
||||
@staticmethod
|
||||
|
||||
Reference in New Issue
Block a user