请解释 LLM Agent 在运行过程中如何根据任务需求选择和调用外部 API?
考察说明
考察对 LLM Agent 中动态 API 调用机制的理解,包括工具选择、参数生成与错误处理。
回答思路
- 【回答框架 1】LLM Agent 通过 ReAct 或类似框架循环决策:模型输出调用意图,解析为工具名和参数,执行后返回观察结果,再继续推理直至完成目标。
- 【回答框架 2】动态 API 调用依赖工具描述与函数 schema:Agent 预设多个 API 的 JSON Schema,模型根据用户请求匹配最合适的工具,并生成符合 schema 的参数。
- 【回答框架 3】执行层调用真实 API 并捕获错误,重试或让模型基于错误信息修正参数;关键是通过约束解码或校验器减少幻觉参数。
- 【回答框架 4】安全与稳定性:需限制敏感 API 权限,设置超时和重试策略,并对返回结果做大小与格式校验,防止上下文超限。
- 【关键点 1】动态调用基于模型输入输出循环,核心是意图解析与工具匹配。
- 【关键点 2】工具描述质量直接影响选择准确性,schema 需完整且示例明确。
- 【关键点 3】参数生成需校验和重试机制兜底,避免无效调用。
- 【关键点 4】生产环境要关注权限、限流与异常隔离。
- 【易错点 1】不要认为模型能自动正确调用任意 API,需人工维护工具注册与描述。
- 【易错点 2】忽略错误处理会导致调用失败后死循环或错误答案。
- 【易错点 3】过度依赖模型自由生成参数,缺乏约束会产生非法请求。