在上一篇文章中,我们了解了如何构建具有列表、读取、写入和编辑能力的基本编码智能体。今天,我们将深入探讨如何通过在 Koog 框架内创建附加工具来扩展智能体的能力。我们将以构建 ExecuteShellCommandTool 为例,教会智能体运行代码,并形成实际工程所依赖的反馈回路:运行代码、观察失败,并根据实际输出改进代码。
尽管 LLM 通常擅长避免语法错误,但在处理集成问题时仍存在困难。例如,它们有可能会调用不存在的方法、遗漏导入,或仅部分实现接口。编译和运行代码的传统方式会立即暴露这些问题。但有了少量的额外提示,我们可以促使 LLM 运行小规模测试来验证此类行为。
那么,我们如何构建这类…