fix: gracefully handle invalid indicator names in tool calls (#429)

This commit is contained in:
Yijia-Xiao 2026-03-29 17:50:30 +00:00
parent f3f58bdbdc
commit ae8c8aebe8
No known key found for this signature in database
1 changed files with 6 additions and 5 deletions

View File

@ -23,9 +23,10 @@ def get_indicators(
# LLMs sometimes pass multiple indicators as a comma-separated string; # LLMs sometimes pass multiple indicators as a comma-separated string;
# split and process each individually. # split and process each individually.
indicators = [i.strip() for i in indicator.split(",") if i.strip()] indicators = [i.strip() for i in indicator.split(",") if i.strip()]
if len(indicators) > 1:
results = [] results = []
for ind in indicators: for ind in indicators:
try:
results.append(route_to_vendor("get_indicators", symbol, ind, curr_date, look_back_days)) results.append(route_to_vendor("get_indicators", symbol, ind, curr_date, look_back_days))
except ValueError as e:
results.append(str(e))
return "\n\n".join(results) return "\n\n".join(results)
return route_to_vendor("get_indicators", symbol, indicator.strip(), curr_date, look_back_days)