[논문이해]KnowAgent: Knowledge-Augmented Planning for LLM-Based Agents(Arxiv2403 논문)

박하영·2024년 4월 4일

논문 이해

목록 보기
4/4
post-thumbnail

_
※ 본 내용의 논문의 정리보단 제가 이해하고 공부한 내용위주로 작성하는 것이니 자세한 사항은 논문을 참고하시길 바랍니다. 또한, 기재된 그림은 모두 본 논문에서 사용하였습니다.
이 논문이 이해가 잘 안되신다면 ReAct 논문을 참고하시면 도움이 많이 될 것 같습니다!


안녕하세요. 오늘 리뷰할 논문은 "KnowAgent: Knowledge-Augmented Planning for LLM-Based Agents"으로 24년도 3월에 막 나온지 얼마 되지 않은 논문입니다.

Overview

  • LLM의 복잡한 추론 작업 수행 능력과 한계점 (Planning Hallucination) 제시
  • KnowAgent : Action Knowledge Base 를 구축하고, Knowledgeable Self-Learning 전략을 활용하여 LLM의 Planning 능력 향상시키는 새로운 접근 방식, 제안

Background

: LLM 기반 Agent의 Planning 능력 향상을 위한 기존 연구들 그 한계점

1. Planning Trajectory 형식

  • Planning Trajectory : Thought-Action-Observation (T, A, O) 삼중체로 표현

    • T : Language Agent의 inner thought

    • A : executable actions

    • O : feedback information from the environment

  • 시간 t에서의 Trajectory History H_t는 이전까지의 T, A, O의 시퀀스로 정의됨

2. Trajectory 생성 과정

: Parameterized Probabilistic Language Agent, π_θ가 H_t를 기반으로 다음 스텝의 Thought T_t와 Action A_t를 생성

  • T_t : T_t는 H_t와 이전 토큰들을 conditioning하여 토큰 단위로 생성

  • A_t : A_t는 H_t, T_t와 이전 Action 토큰들을 conditioning하여 토큰 단위로 생성

  • H_t+1 : A_t의 피드백 결과가 Observation O_t가 되어 Trajectory에 추가되며 새로운 라운드의 H_t+1이 생성됨

3. 기존 연구의 한계점

• Open-Source 모델에서 Planning Task를 수행할 때 모델이 기존 지식 규칙이나 상식을 위반하는 계획을 생성하는 Planning Hallucination 문제 발생
• Planning Hallucination은 불필요하거나 모순된 Action sequence 생성으로 이어질 수 있음
• 이러한 배경을 바탕으로, KnowAgent는 외부 Action Knowledge를 활용하여 synthetic trajectory을 개선함으로써 Planning Hallucination 문제 해결에 중점을 두고 있음


Methodology : KnowAgent

1. Definition of Action Knowledge

1.1. Action Knowledge 정의

Action Knowledge를 완전히 수동으로 추출하기에는 비용적 어려움이 있음으로, LLM이 초기작업을 한 후, 사람이 수동으로 정제하는 방식으로 Action KB(Knowledge Base)구축

2. Action Knowledge 기반 Planning Path 생성

2.1. Action Knowledge를 텍스트로 변환

  • Action Knowledge를 텍스트 형식으로 변환하여 모델이 이해하고 활용할 수 있도록 함
  • 예: "Search: (Search, Retrieve, Lookup, Finish)" Rules은 Search에서 Search, Retrieve, Lookup, Finish로 전환 가능함을 의미

2.2. Path Generation

  • Action Knowledge를 활용하여 Task Planning Process 개선
  • Task Description, Overview of Action Knowledge, Definition of Each Action Step, e Principle of Planning Path Generation, Demonstrations of Planning Paths 등을 포함한 프롬프트 개발
  • 모델이 프롬프트를 활용해 일관된 Planning Path 생성

2.3 trajector synthesis

: 생성된 path를 이용해 trajectory를 재구성(reformulate)하여 정의 (=trajector synthesis)

  • Refomulated Trajectory : Path-Thought-Action-Observation (P, T, A, O) 사중체로 표현

위 방식과 동일하게 아래와 같이 표현할 수 있다.

3. Knowledgeable Self-Learning

3.1. Knowledgeable Self-Learning을 통한 Planning Path Refinement

(위 pseudo code를 바탕으로 Self-Learning 이해하시면 수월할 것 같습니다!)


앞서 만들어진 path를 포함시킨 초기 학습 데이터셋(D_0)과 학습되지 않은 모델(M_0)로 시작

  1. M_0를 사용하여 초기 Trajectory 합성 (T_0)
  2. T_0를 필터링하고 M_0를 Fine-tuning하여 M_1 생성
  3. M_1을 D_0에 재평가하여 새로운 Trajectory T_1 생성
  4. T_0와 T_1을 Action Knowledge 기반으로 필터링 및 병합하여 개선된 Trajectory 생성
  5. 개선된 Trajectory로 모델을 Fine-tuning하여 M_2 생성
  6. 위 과정을 반복하며 M_test 성능 향상이 작아질 때까지 반복

3.2. Knowledge 기반 Trajectory 필터링 및 병합

  • Filtering: 올바른 Trajectory 선택 및 Action Knowledge에 맞지 않는 Trajectory 제거
  • Merging: 효율성(더 짧은 경로)을 기준으로 여러 Iteration에서 생성된 Trajectory 병합

Main Results

업로드중..

  • HotpotQA와 ALFWorld에서 다양한 Backbone 모델 대상 실험
  • KnowAgent가 기존 Baseline과 견줄만한 성능 달성
  • Action Knowledge 활용이 Planning Hallucination 완화에 효과적임을 입증
profile
NLP 파이팅해야지!

0개의 댓글