diff --git a/pipeline_service/agent_loop.py b/pipeline_service/agent_loop.py index b38663f..82d3456 100644 --- a/pipeline_service/agent_loop.py +++ b/pipeline_service/agent_loop.py @@ -467,13 +467,13 @@ def _parse_agent_action(raw): if raw.startswith("```"): raw = raw.split("\n", 1)[1].rsplit("```", 1)[0].strip() - # deepseek 原生 function calling 输出 XML:... - m = re.search(r'(.*?)', raw, re.DOTALL) + # deepseek 原生 function calling 输出 XML:... + m = re.search(r']*>(.*?)', raw, re.DOTALL) if m: tool = m.group(1).strip() body = m.group(2) params = {} - for pm in re.finditer(r'(.*?)', body, re.DOTALL): + for pm in re.finditer(r']*>(.*?)', body, re.DOTALL): val = pm.group(2).strip() try: val = json.loads(val)