티스토리 뷰

AI

LLM agents: The ultimate guide 2025

공부하는묵 2025. 6. 4. 16:20

https://www.superannotate.com/blog/llm-agents

 

LLM agents: The ultimate guide 2025 | SuperAnnotate

LLM agents are advanced AI systems that use planning, memory, and tools to solve complex language tasks with context-aware reasoning.

www.superannotate.com

LLM agent에 대해서 공부하기에 앞서서, 이 글이 LLM agent가 무엇을 하는 것인지에 대해 잘 정리가 되있다고 생각하여 정리해둔다. 

 

LLM 에이전트란?

LLM 에이전트는 복잡한 텍스트 생성이 필요한 작업에서 순차적 추론 능력을 발휘하는 고급 AI 시스템입니다. 이들은 앞으로의 단계를 계획하고, 이전 대화를 기억하며, 다양한 도구를 활용해 상황과 요구에 맞게 응답을 조정할 수 있습니다.

예를 들어, 다음과 같은 법률 질문이 있다고 가정해 봅시다:

“캘리포니아에서 특정 유형의 계약 위반에 따른 법적 결과는 무엇인가요?”

 

기본적인 LLM과 RAG(Retrieval-Augmented Generation) 시스템이라면, 법률 데이터베이스에서 필요한 정보를 쉽게 검색해 제공할 수 있습니다.

하지만, 다음과 같이 더 복잡한 질문은 다릅니다:

“새로운 데이터 개인정보 보호법을 고려했을 때, 기업들이 직면하는 일반적인 법적 문제는 무엇이며, 법원은 이에 대해 어떻게 판결해 왔나요?”

 

이 질문은 단순한 사실 검색을 넘어 새로운 규정의 영향, 기업별 대응 방식, 그리고 법원의 판단까지 이해하고 연결해야 합니다. 단순 RAG 시스템은 관련 법령과 판례는 찾을 수 있지만, 이를 실제 기업 상황과 연결하거나 깊이 있는 분석을 하긴 어렵습니다.

이처럼 추론, 계획, 기억력이 필요한 상황에서 LLM 에이전트가 필요해집니다.

예를 들어 위 질문에 대해 LLM 에이전트는 다음과 같은 하위 작업으로 문제를 나눌 수 있습니다:

  1. 최신 법률 및 규정 검색
  2. 과거 유사 사례 분석
  3. 관련 법률 문서 요약 및 향후 동향 예측

이러한 작업을 수행하기 위해 에이전트는 계획, 기억, 도구 활용이 가능한 구조로 구성되어야 합니다.

 

LLM 에이전트 구성 요소

 

LLM 에이전트는 일반적으로 다음 네 가지 핵심 요소로 구성됩니다:

  1. 에이전트/브레인 (Agent/Brain)
  2. 계획 (Planning)
  3. 기억 (Memory)
  4. 도구 사용 (Tool Use)

1. 에이전트/브레인 (Agent/Brain)

LLM 에이전트의 중심은 언어 모델 또는 대규모 액션 모델로, 방대한 데이터를 기반으로 언어를 이해하고 처리합니다.

에이전트를 사용할 때는 프롬프트(prompt)를 통해 명확한 목표, 도구 사용 방식, 작업 방향을 지시할 수 있습니다. 또한, 특정 페르소나(persona)로 에이전트를 설정해 특정 분야에 적합한 방식으로 응답하도록 조정할 수 있습니다.


2. 기억 (Memory)

LLM 에이전트는 과거 작업 기록을 바탕으로 복잡한 작업을 처리할 수 있습니다. 기억은 크게 두 가지로 나뉩니다:

  • 단기 기억 (Short-term memory): 대화 중 중요한 정보를 잠깐 보관하는 메모장 역할. 작업이 끝나면 초기화됩니다.
  • 장기 기억 (Long-term memory): 과거 수주~수개월 동안의 상호작용을 기록하는 일기장 역할. 사용자 선호도, 반복된 패턴 등을 기억하여 향후 더 정교한 응답이 가능하게 합니다.

이 두 기억을 조합함으로써, 에이전트는 현재 대화를 따라가면서도 과거의 풍부한 상호작용 기록을 참조할 수 있습니다. 그 결과 더 개인화된 응답을 제공하고 사용자의 선호를 기억하여 대화가 더욱 자연스럽고 연결되어 있는 것처럼 느껴지게 합니다. 본질적으로, 에이전트는 당신을 더 잘 이해하기 위한 기반을 구축하고 있는 것입니다.

 

2. 계획 (Planning)

LLM 에이전트는 계획을 통해 추론하고, 복잡한 작업을 더 작고 관리하기 쉬운 하위 작업으로 나누며, 각 부분에 대해 구체적인 계획을 수립할 수 있습니다. 작업이 진행되면서 에이전트는 계획을 되돌아보고 조정하여 실제 상황에 맞게 계속 적응할 수 있습니다. 이러한 유연성은 작업을 성공적으로 수행하는 데 필수적입니다.

계획은 일반적으로 두 가지 주요 단계로 구성됩니다: 계획 수립(Plan Formulation)계획 반성(Plan Reflection)


계획 수립 (Planning Formulation)

이 단계에서 에이전트는 큰 작업을 더 작고 구체적인 하위 작업으로 나눕니다. 어떤 접근법은 처음부터 전체 계획을 세세하게 작성하고, 이를 단계별로 수행하는 방식을 따릅니다. 반면, 연쇄적 사고(Chain of Thought, CoT) 방식은 하위 작업을 하나씩 순차적으로 해결하는 적응형 전략을 사용합니다.

사고의 나무(Tree of Thought, ToT) 기법은 CoT를 발전시킨 것으로, 문제를 여러 단계로 나누고 각 단계에서 다양한 아이디어를 생성한 후, 이를 나뭇가지처럼 구성하여 여러 해결 경로를 탐색합니다.

 

또한, 계층적(hierarchical) 접근이나 의사결정 트리와 같은 구조적 계획 방식도 존재합니다. 이들은 가능한 옵션을 모두 고려한 뒤 최적의 계획을 선택합니다. 일반적으로 LLM 기반 에이전트는 광범위한 지식을 갖추고 있지만, 전문성이 필요한 작업에서는 한계가 있을 수 있습니다. 이러한 경우, 도메인 특화된 플래너와의 통합을 통해 성능이 향상될 수 있습니다.


계획 반성 (Planning Reflection)

계획을 수립한 후, 에이전트는 그 계획의 효율성을 검토하고 평가하는 단계가 필요합니다. LLM 기반 에이전트는 자체 피드백 메커니즘을 활용하여 전략을 개선합니다. 또한 인간과의 상호작용을 통해 계획을 조정하고, 실제 또는 가상 환경에서 얻은 결과와 관찰을 바탕으로 전략을 계속해서 발전시킵니다.

계획에 피드백을 통합하는 효과적인 방법 두 가지는 ReActReflexion 입니다.

예를 들어, ReAct는 에이전트가 사고(Thought), 행동(Action), 관찰(Observation)을 반복하는 방식으로 복잡한 문제를 해결할 수 있게 도와줍니다. 이 과정에서 에이전트는 환경으로부터의 피드백—즉, 인간이나 다른 모델의 입력, 또는 외부 환경의 반응—을 받아들이고, 실시간으로 접근 방식을 조정할 수 있습니다. 이러한 방식은 에이전트가 질문에 보다 정교하고 효과적으로 응답할 수 있도록 만듭니다.

 

 

4. 도구 사용 (Tools Use)

여기서 말하는 "도구"란, LLM 에이전트가 외부 환경과 연결되어 특정 작업을 수행할 수 있도록 돕는 다양한 자원을 말합니다. 이러한 작업에는 데이터베이스에서 정보 추출, 쿼리 수행, 코딩 등 에이전트가 기능을 수행하는 데 필요한 모든 활동이 포함됩니다.
LLM 에이전트가 도구를 사용할 때는, 특정 작업을 수행하거나 관찰을 수집하거나 하위 작업을 해결하고 사용자 요청을 이행하는 데 필요한 정보를 모으기 위한 워크플로우를 따릅니다.

다음은 다양한 시스템이 이러한 도구를 통합하는 방식의 예시입니다:


MRKL (Modular Reasoning, Knowledge, and Language):
이 시스템은 신경망부터 계산기, 날씨 API와 같은 간단한 도구에 이르기까지 다양한 전문 모듈들을 활용합니다. 메인 LLM은 라우터처럼 작동하여, 작업에 맞는 전문가 모듈로 쿼리를 전달합니다.
한 실험에서는 LLM이 산술 문제를 풀기 위해 계산기를 사용하는 훈련을 받았습니다. 직접적인 수학 문제는 잘 처리했지만, 문장에서 숫자와 연산을 추출해야 하는 서술형 문제에서는 어려움을 겪었습니다. 이는 외부 도구를 언제, 어떻게 효과적으로 사용할지 아는 능력의 중요성을 보여줍니다.

예: GPT-4에게 4.1 * 7.9의 답을 묻자 제대로 대답하지 못한 사례가 있습니다.

 


Toolformer, TALM (Tool Augmented Language Models):
이 모델들은 외부 API와 효과적으로 상호작용할 수 있도록 특화된 방식으로 파인튜닝된 모델입니다. 예를 들어, 금융 API를 이용해 주식 시장 동향을 분석하거나 환율 변동을 예측하도록 학습될 수 있으며, 사용자가 실시간 금융 인사이트를 받을 수 있게 합니다.


HuggingGPT:
이 프레임워크는 ChatGPT가 작업의 관리자 역할을 수행합니다. 사용자의 요청에 따라 HuggingFace 플랫폼에 있는 최적의 모델을 선택하여 작업을 수행하고, 결과를 요약해 전달합니다.


API-Bank:
이 벤치마크는 LLM이 53개의 일반적인 API를 얼마나 잘 사용할 수 있는지를 평가합니다. 예: 일정 관리, 건강 데이터 처리, 스마트홈 제어 등의 작업을 수행합니다.

 

LLM 에이전트의 과제 (LLM Agent Challenges)

LLM 에이전트는 매우 유용하지만, 다음과 같은 여러 가지 과제에 직면하고 있습니다:

1. 제한된 문맥 처리 능력
LLM 에이전트는 한 번에 처리할 수 있는 정보의 양이 제한되어 있습니다. 이로 인해 대화 초반의 중요한 내용을 잊거나, 핵심 지시 사항을 놓칠 수 있습니다. 벡터 스토어와 같은 기술이 더 많은 정보를 제공하는 데 도움을 주긴 하지만, 이 한계를 완전히 해결하지는 못합니다.

2. 장기 계획 수립의 어려움
LLM 에이전트는 오랜 기간에 걸친 계획을 세우는 데 어려움을 겪습니다. 예기치 못한 문제가 발생했을 때 유연하게 대응하는 것도 힘들어, 인간에 비해 문제 해결 과정에서 융통성이 떨어질 수 있습니다.

3. 출력 결과의 불일치
LLM 에이전트는 자연어를 기반으로 도구나 데이터베이스와 상호작용하기 때문에, 때때로 신뢰할 수 없는 출력을 내놓기도 합니다. 예를 들어, 형식을 잘못 맞추거나 지시를 제대로 따르지 못해 작업 오류가 발생할 수 있습니다.

4. 특정 역할에의 적응력 부족
작업에 따라 다양한 역할을 수행해야 하는 경우가 많지만, 드문 역할이나 다양한 인간의 가치에 맞춰 LLM 에이전트를 세밀하게 조정하는 것은 매우 어려운 문제입니다.

5. 프롬프트 의존성
LLM 에이전트는 프롬프트에 따라 작동하는데, 이 프롬프트는 매우 정밀해야 합니다. 작은 변화만으로도 큰 오류가 발생할 수 있어, 프롬프트를 설계하고 수정하는 과정은 섬세하게 이루어져야 합니다.

6. 지식 관리
LLM 에이전트가 정확하고 편향되지 않은 지식을 유지하는 것은 쉽지 않습니다. 올바른 정보를 바탕으로 의사결정을 내려야 하지만, 불필요한 정보가 많아지면 잘못된 결론을 내리거나 오래된 정보를 바탕으로 행동할 수 있습니다.

7. 비용과 효율성 문제
LLM 에이전트를 실행하는 데는 많은 자원이 필요합니다. 대량의 데이터를 빠르게 처리해야 하므로 비용이 많이 들고, 제대로 관리되지 않으면 성능이 저하될 수 있습니다.


이러한 문제를 해결하는 것은 LLM 에이전트의 효율성과 신뢰성을 높이는 데 매우 중요합니다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함