Compare commits

...

5 Commits

Author SHA1 Message Date
Brandon Hancock
b043eb89aa drop trailing set 2025-02-18 16:02:09 -05:00
Brandon Hancock (bhancock_ai)
bc7b142aa8 Merge branch 'main' into bugfix/fix-backtick-in-agent-response 2025-02-18 15:23:40 -05:00
Brandon Hancock
66eaf2744a clean up thoughts as well 2025-02-18 15:17:59 -05:00
Brandon Hancock
091713b070 fix issue 2025-02-18 15:10:02 -05:00
Brandon Hancock
d240034570 updating prompts 2025-02-18 14:57:16 -05:00

View File

@@ -94,6 +94,13 @@ class CrewAgentParser:
elif includes_answer:
final_answer = text.split(FINAL_ANSWER_ACTION)[-1].strip()
# Check whether the final answer ends with triple backticks.
if final_answer.endswith("```"):
# Count occurrences of triple backticks in the final answer.
count = final_answer.count("```")
# If count is odd then it's an unmatched trailing set; remove it.
if count % 2 != 0:
final_answer = final_answer[:-3].rstrip()
return AgentFinish(thought, final_answer, text)
if not re.search(r"Action\s*\d*\s*:[\s]*(.*?)", text, re.DOTALL):
@@ -120,7 +127,10 @@ class CrewAgentParser:
regex = r"(.*?)(?:\n\nAction|\n\nFinal Answer)"
thought_match = re.search(regex, text, re.DOTALL)
if thought_match:
return thought_match.group(1).strip()
thought = thought_match.group(1).strip()
# Remove any triple backticks from the thought string
thought = thought.replace("```", "").strip()
return thought
return ""
def _clean_action(self, text: str) -> str: