AIHero

    工具与环境

    工具

    运行框架提供给智能体调用的函数,例如读取、写入、Bash 和搜索。智能体正是通过工具感知并作用于环境。

    Matt Pocock
    Matt Pocock

    工具是运行框架提供给智能体调用的函数,例如 Read、Write、Bash 和 Search。智能体通过工具感知并操作环境:它只能通过工具结果看到环境,也只能通过工具调用改变环境。每次工具调用都会额外消耗一次模型提供商请求,因为结果必须先返回模型,模型才能决定下一步。

    大多数编码智能体都会提供以下工具:

    工具作用
    读取把文件内容作为工具结果返回
    Write在环境中创建或编辑文件 文件系统
    Bash运行 shell 命令并返回输出
    搜索在整个代码库中查找与模式匹配的文件或文本

    一个工具由三部分定义:名称、功能说明和参数 schema。运行框架会在每次请求中把这些定义发送给模型;模型选择工具的方式与生成其他内容完全相同——继续写出 Token,只不过这次生成的是一段带参数的结构化调用。模型本身从不执行任何操作;运行框架负责读取调用、运行函数并把结果送回模型。

    工具列表决定了智能体能做什么。即使模型能力很强,如果工具集狭窄,智能体的能力同样受限;它会把所有任务都绕到现有工具上,这正是智能体高度依赖 Bash 的原因——一个 shell 工具就能触达系统的大部分区域。要以清晰方式赋予智能体某项能力,最好为它提供专用工具;MCP 则是从运行框架外部接入工具的标准。

    工具定义会在每次请求中占用上下文,因此即使尚未调用任何工具,庞大的工具集也会产生固定成本;如果多个工具的描述十分相似,模型选择正确工具的能力还会下降。

    用法:

    “智能体能直接查询预发布环境吗?”

    “给运行框架添加一个 psql 工具,并把权限限制为只读访问预发布环境。没有对应工具时,智能体看不到文件系统之外的任何东西。”

    不只想学术语?

    加入 AI Hero,获取实用技能、AI 工程思考,以及帮助你始终走在前沿的资源。

    没有垃圾邮件,随时可以退订。

    分享