summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/function.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/function.rs b/src/function.rs
index 068cee0..b763dc2 100644
--- a/src/function.rs
+++ b/src/function.rs
@@ -28,6 +28,9 @@ pub fn eval_tool_calls(
return Ok(output);
}
calls = ToolCall::dedup(calls);
+ if calls.is_empty() {
+ bail!("The request was aborted because an infinite loop of function calls was detected.")
+ }
for call in calls {
let result = call.eval(config)?;
output.push(ToolCallResult::new(call, result));