LLM 에이전트의 메모리 한계 극복: Datalog 기반 'Lemmalog' 공개
핵심 내용
LLM의 취약점 분석 중 발생하는 기억 손실 문제를 해결하기 위해 논리 프로그래밍 언어 Datalog을 적용한 메모리 시스템 'Lemmalog'가 공개됐다.
자세히 보기
LLM 에이전트를 취약점 연구에 활용할 때, 복잡한 조사 과정에서 모델이 기존에 확립된 사실을 잊거나 잘못된 추론을 이어가는 문제가 발생한다. 기존 메모리 시스템은 대화 기록을 저장하고 검색하는 방식이라, 새로운 관찰로 인해 이전 가정이 무효화될 때 LLM이 이를 스스로 파악하기 어렵다.
이 문제를 해결하기 위해 프로그램 분석(Program Analysis) 개념을 도입한 새로운 접근법이 제시되었다. 프로그램 분석에서는 입력 사실(input facts)이 변경되면 파생된 결과만 자동으로 업데이트하는 고정점(fixed point) 계산 기술을 사용한다. 저자는 이 원리를 LLM 메모리에 적용하여, 관찰된 사실이 바뀌면 그에 의존하는 결론을 자동으로 무효화하는 시스템을 구축했다.
Datalog 기반 메모리 엔진 'Lemmalog'
이러한 아이디어는 논리 프로그래밍 언어 Datalog을 LLM과 결합한 **'Lemmalog'**라는 프로젝트로 구체화되었다. Lemmalog는 LLM이 기억 유지라는 불확실한 작업을 직접 수행하는 대신, 명확한 사실과 규칙을 정의하는 데 집중하도록 설계되었다.
- 사실(Facts)과 규칙(Rules) 분리:
controls(attacker, object_a)같은 사실과 이를 기반으로controls_kernel_object를 도출하는 규칙을 명시적으로 정의한다. - 자동 무효화: 만약
points_to(object_a, object_b)라는 사실이 LLDB 디버깅 등을 통해 잘못된 것으로 판명되면, 이 사실에 의존하여 도출된controls_kernel_object(attacker)결론은 자동으로 무효 처리된다. - LLM의 역할 변화: LLM은 모호한 부분(예: LLDB 출력 해석)을 담당하고, Lemmalog 엔진은 논리적 일관성을 유지하며 지식을 관리하는 역할을 수행한다.
이 방식은 LLM이 프롬프트를 통해 과거 정보를 재구성하며 오류를 범할 가능성을 줄이고, 취약점 연구와 같은 복잡한 다단계 추론 과정에서 지식의 정확성과 추적 가능성을 높이는 데 기여한다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.