内容提要
本文介绍了MAF的CodeAct能力,强调其通过将多步工具编排合并为一次代码执行,解决了工具往返成本、执行边界模糊和工具治理碎片化等问题。CodeAct由六个组件协作完成,确保执行的安全性和效率。建议逐步引入工具与审批,建立稳定的审批回路,以实现高效的执行与治理。
关键要点
-
CodeAct 是 MAF 的一种能力,通过将多步工具编排合并为一次代码执行,解决了工具往返成本、执行边界模糊和工具治理碎片化等问题。
-
CodeAct 由六个组件协作完成,包括上下文注入层、直连工具层、配置与能力描述层、运行快照层、沙箱生命周期层和跨沙箱边界桥接层。
-
CodeAct 制造了两套工具可见面,模型可见面只看到一个工具 execute_code,沙箱可见面则可以调用宿主 AIFunction,但不在模型的工具列表中。
-
一次完整的 CodeAct 执行由 agent 框架、provider、executor、sandbox 和模型五方协作完成,确保执行的安全性和效率。
-
execute_code 永远返回一个结构化 JSON 字符串,包含 stdout、stderr、exit_code 和 success 四个字段,确保可观测性。
-
CodeAct 的性能依赖于沙箱的复用机制,通过配置指纹和预热快照来避免每次都重新启用沙箱。
-
审批模型的粒度是 execute_code 整次调用,确保代码块本身需要被批准,而不是特定调用。
-
建议逐步引入工具与审批,建立稳定的审批回路,以实现高效的执行与治理。
延伸问答
CodeAct 的主要功能是什么?
CodeAct 是 MAF 的一种能力,通过将多步工具编排合并为一次代码执行,解决了工具往返成本、执行边界模糊和工具治理碎片化等问题。
CodeAct 的执行流程是怎样的?
一次完整的 CodeAct 执行由 agent 框架、provider、executor、sandbox 和模型五方协作完成,确保执行的安全性和效率。
CodeAct 的审批模型是如何工作的?
CodeAct 的审批模型粒度是 execute_code 整次调用,确保代码块本身需要被批准,而不是特定调用。
CodeAct 的性能如何优化?
CodeAct 的性能依赖于沙箱的复用机制,通过配置指纹和预热快照来避免每次都重新启用沙箱。
CodeAct 中的沙箱执行有什么限制?
Hyperlight 沙箱默认是零能力面,不能访问宿主进程、不能联网、不能读文件系统,所有能力都必须显式声明。
如何逐步引入 CodeAct 的工具与审批?
建议逐步引入工具与审批,建立稳定的审批回路,以实现高效的执行与治理。