AgentFlow: 에이전트 프로그램의 정적 분석을 위한 에이전트 의존성 그래프 구축
요약
에이전트 프로그램의 복잡한 의존성을 분석하기 위한 최초의 정적 분석 프레임워크인 AgentFlow를 소개합니다. 에이전트 의존성 그래프(ADG)를 구축하여 에이전트 BOM 생성 및 보안 위험 탐지를 지원합니다.
핵심 포인트
- 에이전트 의존성 그래프(ADG)를 통한 프레임워크 불가지론적 분석 제공
- 에이전트, 프롬프트, 모델 등 다양한 엔티티 간의 관계를 타입화하여 포착
- 에이전트 자재 명세서(BOM) 생성 및 프롬프트-도구 위험 탐지 가능
- 실제 에이전트 코퍼스 평가를 통해 기존 AST 방식보다 우수한 성능 입증
LLM 에이전트들은 에이전트 프레임워크(agent frameworks)를 기반으로 구축된 소스 코드 애플리케이션으로서 점점 더 많이 개발되고 있습니다. 이러한 에이전트 프로그램들은 전통적인 호스트 언어(host-language) 코드와 모델, 프롬프트(prompts), 도구(tools), 메모리(memory), 그리고 멀티 에이전트 오케스트레이션(multi-agent orchestration) 로직을 위한 프레임워크 정의 시맨틱(semantics)을 결합합니다. 그 결과, 에이전트의 동작은 전통적인 제어 흐름(control flows) 및 데이터 흐름(data flows)뿐만 아니라, 새로운 범주의 에이전트 의존성(agent dependencies)에도 의존하게 됩니다. 이러한 의존성들은 에이전트 생성자(agent constructors), 도구 데코레이터(tool decorators), 에이전트 핸드오프 선언(agent handoff declarations)과 같이 프레임워크에 의해 유도된 시맨틱으로 표현되는 경우가 많아, 기존의 정적 분석(static analysis)이나 의존성 추적(dependency tracking) 도구로는 복구하기 어렵습니다. 본 논문에서는 에이전트 프로그램으로부터 에이전트 의존성을 복구하고 분석하기 위한 최초의 정적 분석 프레임워크인 AgentFlow를 제시합니다. AgentFlow는 에이전트 의존성 그래프(Agent Dependency Graph, ADG)를 구축합니다. ADG는 프레임워크에 구애받지 않는(framework-agnostic) 그래프 표현 방식으로, 에이전트, 프롬프트, 모델, 기능(capabilities), 메모리 상태, 제어 정책(control policies)을 타입이 지정된 노드(typed nodes)로 나타내며, 이들의 구성 요소-의존성(component-dependency), 제어 흐름(control-flow), 데이터 흐름(data-flow) 의존성을 타입이 지정된 엣지(typed edges)로 포착합니다. ADG를 기반으로 구축된 AgentFlow는 에이전트 자재 명세서(Agent Bill of Materials, BOM) 생성 및 프롬프트-도구 위험 탐지(prompt-to-tool risk detection)를 포함하여 에이전트 거버넌스(governance) 및 보안을 위한 다양한 분석을 지원합니다. 우리는 5개의 대표적인 에이전트 프레임워크에 대해 AgentFlow를 구현하였으며, 5,399개의 실제 에이전트 프로그램 코퍼스인 AgentZoo를 통해 이를 평가했습니다. 평가 결과, AgentFlow는 기존의 AST 기반 에이전트 정적 분석 도구보다 더 풍부한 에이전트 엔티티와 의존성을 복구하고, 더 많은 의존성을 인식하는 에이전트 BOM을 생성하며, 실제 에이전트 프로그램에서 238개의 오염 스타일(taint-style) 프롬프트-도구 위험을 발견했습니다. 이러한 결과는 ADG가 신흥 에이전트 소프트웨어를 이해하고, 거버넌스를 수행하며, 보안을 확보하기 위한 실질적인 토대를 제공함을 보여줍니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기