diff --git a/src/crewai/agents/crew_agent_executor.py b/src/crewai/agents/crew_agent_executor.py index ed89008fd..23d157a5d 100644 --- a/src/crewai/agents/crew_agent_executor.py +++ b/src/crewai/agents/crew_agent_executor.py @@ -549,14 +549,17 @@ class CrewAgentExecutor(CrewAgentExecutorMixin): def _get_llm_feedback_response(self, feedback: str) -> Optional[str]: """Get LLM classification of whether feedback requires changes.""" - prompt = self._i18n.slice("human_feedback_classification").format( + system_prompt = self._i18n.slice("human_feedback_classification") + system_message = self._format_msg(system_prompt, role="system") + + user_prompt = self._i18n.slice("feedback").format( feedback=feedback ) - message = self._format_msg(prompt, role="system") + user_message = self._format_msg(user_prompt, role="user") for retry in range(MAX_LLM_RETRY): try: - response = self.llm.call([message], callbacks=self.callbacks) + response = self.llm.call([system_message,user_message], callbacks=self.callbacks) return response.strip().lower() if response else None except Exception as error: self._log_feedback_error(retry, error) diff --git a/src/crewai/translations/en.json b/src/crewai/translations/en.json index f09f1dba0..922eafe8f 100644 --- a/src/crewai/translations/en.json +++ b/src/crewai/translations/en.json @@ -23,7 +23,8 @@ "summary": "This is a summary of our conversation so far:\n{merged_summary}", "manager_request": "Your best answer to your coworker asking you this, accounting for the context shared.", "formatted_task_instructions": "Ensure your final answer contains only the content in the following format: {output_format}\n\nEnsure the final output does not include any code block markers like ```json or ```python.", - "human_feedback_classification": "Determine if the following feedback indicates that the user is satisfied or if further changes are needed. Respond with 'True' if further changes are needed, or 'False' if the user is satisfied. **Important** Do not include any additional commentary outside of your 'True' or 'False' response.\n\nFeedback: \"{feedback}\"", + "human_feedback_classification": "Determine if the following feedback indicates that the user is satisfied or if further changes are needed. Respond with 'True' if further changes are needed, or 'False' if the user is satisfied. **Important** Do not include any additional commentary outside of your 'True' or 'False' response.", + "feedback": "Feedback: {feedback}", "conversation_history_instruction": "You are a member of a crew collaborating to achieve a common goal. Your task is a specific action that contributes to this larger objective. For additional context, please review the conversation history between you and the user that led to the initiation of this crew. Use any relevant information or feedback from the conversation to inform your task execution and ensure your response aligns with both the immediate task and the crew's overall goals.", "feedback_instructions": "User feedback: {feedback}\nInstructions: Use this feedback to enhance the next output iteration.\nNote: Do not respond or add commentary." },