본문으로 건너뛰기

© 2026 Molayo

arXiv논문2026. 05. 28. 11:28

LACUNA: 재귀적 프로그램 홀(Recursive Program Holes)로서의 안전한 에이전트

요약

LACUNA는 LLM 에이전트의 표현력을 높이면서도 안전성을 확보하기 위해 제안된 새로운 프로그래밍 모델입니다. 모델이 작성한 코드를 타입 검사(type-check)를 통해 검증함으로써, 잘못된 도구 호출이나 프롬프트 인젝션으로부터 런타임을 보호합니다.

핵심 포인트

  • 재귀적 프로그램 홀 방식을 통한 에이전트와 런타임 간의 분리 해소
  • 타입 검사를 통해 실행 전 코드의 안전성과 데이터 흐름 제한
  • 거부된 동작은 환경 변화 없이 상태를 유지하며 재시도 유도
  • BrowseComp-Plus 및 τ²-bench를 통한 성능 및 안전성 검증

LLM 에이전트(LLM agents)는 코드를 작성함으로써 점점 더 많이 활동하고 있지만, 에이전트를 구동하는 런타임(runtime)과 모델이 작성하는 코드 사이에는 여전히 분리가 존재합니다. 런타임이 루프(loop), 컨텍스트(context), 제어 흐름(control flow)을 소유하며, 모델은 이 중 어느 것에도 거의 관여할 수 없습니다. 모델이 작성한 코드가 런타임 자체를 형성하도록 허용하면 에이전트의 표현력은 높아지겠지만, 안전성 문제 또한 심화될 것입니다. 모델은 프롬프트 인젝션(prompt injection)에 의해 유도되거나, 잘못된 도구(tool)를 호출하거나, 실행 도중 실패하여 일관되지 않은 상태를 남길 수 있으며, 코드가 단일 동작을 표현할 때보다 런타임을 형성할 때 이러한 각각의 실패는 더 큰 영향을 미칩니다.

우리는 안전성을 유지하면서 이러한 분리를 해소하는 에이전트용 프로그래밍 모델인 LACUNA를 제시합니다. 각 에이전트 동작은 $\texttt{agentT}$라는 타입 지정 호출(typed call)이며, 실행이 이에 도달하면 LLM이 코드로 채웁니다. 이 코드는 실행되기 전에 주변 프로그램에 대해 타입 검사(type-check)를 거칩니다. 각 동작은 전체로서 수락되거나 거부되기 때문에, 거부된 동작은 환경을 건드리지 않은 상태로 유지되며, 컴파일러 진단(compiler diagnostics) 결과는 재시도(retry)를 유도합니다. 동일한 검사를 통해 동작이 사용할 수 있는 도구와 데이터, 그리고 데이터의 흐름 방식도 제한됩니다. 우리의 기본 요소(primitive)는 ReAct 루프, 하위 에이전트(sub-agents), 기술(skills), 병렬 분해(parallel decomposition), 그리고 다중 모델 계획(multi-model planning)을 일반적인 제어 흐름으로 표현합니다.

우리는 일련의 테스트 케이스, BrowseComp-Plus, 그리고 $τ^2$-bench를 통해 LACUNA를 평가합니다. BrowseComp-Plus에서 생성된 내용의 $8.6%$가 실행 전에 거부되었으며, 쿼리당 평균 0.7회의 재시도가 발생했고, 에이전트는 $27.1%$의 정확도에 도달했습니다. $τ^2$-bench에서 LACUNA는 유능한 모델을 사용하여 4개 도메인에 걸친 392개 작업 중 $76.0%$를 해결하였으며, 이는 베이스라인 에이전트(baseline agent)와 대등한 수준입니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 arXiv cs.PL (Programming Languages)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0