Problem entry · machine-readable · 大模型本地部署

LLM Function Calling 不可控?AI 建议的危险调用必须过白名单(本地 qwen 实测)

本页嵌入 #trove-entity JSON(本条目全量结构化数据);全库数据见 /agent/trove.json。

元数据

idfunction-calling-guard收录2026-08-30
问题域大模型本地部署主题分组Agent 工具·运行与配置
适用工具ollamapython · 外部工具

症状

AI 建议调用危险函数(删除/退款/更新)被无脑执行;多轮对话重复调用同一函数或张冠李戴;Function Calling 接入后不可控、不可观测。

原因

Function Calling 设计上"AI 建议、你执行",执行前缺少校验层(白名单/参数/危险操作确认)时控制权实际交回 AI;模型无状态,不维护对话历史与调用记录导致重复调用。

解法

3 步闭环跑通后:执行前加白名单 + 参数校验 + 危险操作二次确认;多轮对话维护完整 messages(含 assistant tool_calls 与 tool 结果)持续喂回。

验证证据

实测复现日志(2026-08-30)(2026-08-30 本地实测:3 步闭环通过;诱导删除 → AI 建议 delete_order 被白名单拦截;带历史多轮正确查 ORD456)

来源与证据

素材来源:https://juejin.cn/post/7677837705736618035

验证证据:Evidence details kept locally (2026-08-30)