Add feedback
(
self,
user_id: str,
conversation_id: str,
feedback_content: str,
agent_id: str | None = None,
app_id: str | None = None,
feedback_time: str | None = None,
allow_public: bool = False,
allow_knowledgebase_ids: list[str] | None = None,
)
| 444 | raise |
| 445 | |
| 446 | def add_feedback( |
| 447 | self, |
| 448 | user_id: str, |
| 449 | conversation_id: str, |
| 450 | feedback_content: str, |
| 451 | agent_id: str | None = None, |
| 452 | app_id: str | None = None, |
| 453 | feedback_time: str | None = None, |
| 454 | allow_public: bool = False, |
| 455 | allow_knowledgebase_ids: list[str] | None = None, |
| 456 | ) -> MemOSAddFeedBackResponse | None: |
| 457 | """Add feedback""" |
| 458 | # Validate required parameters |
| 459 | self._validate_required_params( |
| 460 | feedback_content=feedback_content, user_id=user_id, conversation_id=conversation_id |
| 461 | ) |
| 462 | |
| 463 | url = f"{self.base_url}/add/feedback" |
| 464 | payload = { |
| 465 | "feedback_content": feedback_content, |
| 466 | "user_id": user_id, |
| 467 | "conversation_id": conversation_id, |
| 468 | "agent_id": agent_id, |
| 469 | "app_id": app_id, |
| 470 | "feedback_time": feedback_time, |
| 471 | "allow_public": allow_public, |
| 472 | "allow_knowledgebase_ids": allow_knowledgebase_ids, |
| 473 | } |
| 474 | for retry in range(MAX_RETRY_COUNT): |
| 475 | try: |
| 476 | response = requests.post( |
| 477 | url, data=json.dumps(payload), headers=self.headers, timeout=30 |
| 478 | ) |
| 479 | response.raise_for_status() |
| 480 | response_data = response.json() |
| 481 | |
| 482 | return MemOSAddFeedBackResponse(**response_data) |
| 483 | except Exception as e: |
| 484 | logger.error(f"Failed to add feedback (retry {retry + 1}/3): {e}") |
| 485 | if retry == MAX_RETRY_COUNT - 1: |
| 486 | raise |
| 487 | |
| 488 | def delete_memory( |
| 489 | self, user_ids: list[str], memory_ids: list[str] |
nothing calls this directly
no test coverage detected