Introduction
- 어려운 문제에 직면했을 때 여러 단계를 거쳐 신중하게 생각하고 이미 시도했던 것을 기억해야 하는 경우가 많다.
- LLM 에이전트는 언어 모델 애플리케이션에서 이러한 상황을 위해 설계되었다.
- 철저한 데이터 분석, 전략적 계획, 데이터 검색, 과거 작업에서 학습하는 능력을 결합하여 복잡한 문제를 해결한다
이 글에서는 LLM 에이전트의 정의, 이점, 능력, 실제 사례, 직면한 과제에 대해 살펴본다.
What are LLM agents?
복잠한 테스크에서 순차적 추론이 필요한 곳에서 문제를 풀수 있는(답을 생성할 수 있는)AI 시스템이다.
미리 생각하고, 과거의 대화를 기억하며, 다양한 도구를 사용하여 필요한 상황과 스타일에 따라 응답을 조정할 수 있다.
예를 들어:
“캘리포니아에서 특정 유형의 계약 위반이 발생할 경우 발생할 수 있는 법적 결과는 무엇인가요?”
RAG 시스템을 갖춘 기본 LLM은 법률 데이터베이스에서 필요한 정보를 쉽게 가져올 수 있다.
허나,
“새로운 데이터 개인정보 보호법에 비추어 볼 때, 기업이 직면하는 일반적인 법적 문제는 무엇이며 법원은 이러한 문제를 어떻게 해결해 왔나요?”
이 답을 하기 위해서는, 새로운 규정이 여러 기업에 어떤 영향을 미치는지 이해하고, 이에 대해 법원이 어떤 판결을 내렸는지 알아야 한다.
단순한 RAG 시스템은 관련 법률과 판례를 검색할 수는 있지만, 이러한 법률을 실제 비즈니스 상황과 연결하거나 법원 판결을 심층적으로 분석할 수 있는 기능은 부족하다.
이에 답을 하기 위해서는
- 첫 번째 하위 작업은 법률 데이터베이스에 액세스하여 최신 법률 및 규정을 검색
- 두 번째로 이전에 유사한 문제가 어떻게 처리되었는지에 대한 과거 기준선을 설정할 수 있다. 또 다른 하위 작업은 법률 문서를 요약하고 관찰된 패턴을 기반으로 향후 추세를 예측하는 것이다.
이러한 하위 작업을 완료하려면 LLM 에이전트에게 구조화된 계획, 진행 상황을 추적할 수 있는 안정적인 메모리, 필요한 도구에 대한 액세스가 필요하다. 이러한 구성 요소는 LLM 에이전트의 워크플로우의 근간을 형성한다.
LLM agent components
4가지 구성 요소로 구성되어 있다.
- Agent/brain
- Planning
- Memory
- Tool use
Agent/brain :
- LLM 에이전트의 핵심은 학습된 방대한 양의 데이터를 기반으로 언어를 처리하고 이해하는 언어 모델이다.
- LLM 에이전트를 사용할 때는 특정 프롬프트를 제공하는 것으로 시작한다.
- 이 프롬프트는 에이전트가 응답하는 방법, 사용할 도구, 상호작용 중에 달성해야 하는 목표를 안내하는 매우 중요한 역할을 한다.
(컨트롤 센터 같은 역할을 함) - 기본적으로 LLM 에이전트의 핵심은 고급 처리 능력과 사용자 지정 가능한 기능을 결합하여 다양한 작업과 상호작용을 효과적으로 처리하고 적응할 수 있도록 하는 것이다.
Memory :
- 메모리에서는 이전에 수행한 작업의 기록함.
- 이를 통해 복잡한 LLM 작업을 처리하는 데 도움을 함.
- 메모리 두 가지 주요 유형 :
- 단기 메모리: 이는 대화 중에 중요한 세부 사항을 빠르게 기록하는 에이전트의 메모장과 같은 역할.
진행 중인 토론을 추적하여 모델이 즉각적인 맥락에 맞게 적절하게 응답할 수 있도록 도와줌.
하지만 이 메모리는 일시적인 것으로, 당면한 작업이 완료되면 지워진다. - 장기 기억: 몇 주 또는 몇 달에 걸친 과거 상호작용에서 얻은 인사이트와 정보를 저장함.
이는 단순히 데이터를 보관하는 것이 아니라 패턴을 이해하고, 이전 작업에서 학습하며, 이 정보를 기억하여 향후 상호작용에서 더 나은 결정을 내리기 위한 것이다.
-> 이를 어떻게 저장할지도 중요한 연구 과제
-> 단기 메모리와, 장기 기억 사이의 가중치, 장기 기억간의 가중치를 어떻게 줄 것인가
- 단기 메모리: 이는 대화 중에 중요한 세부 사항을 빠르게 기록하는 에이전트의 메모장과 같은 역할.
Planning
- 계획을 통해 복잡한 작업을 더 작고 관리하기 쉬운 부분으로 나누고 각 부분에 대한 구체적인 계획을 수립할 수 있다.
(허나, LLM은 Planning을 못한다고 알려져 있음) - 또한 작업이 발전함에 따라 상담원은 계획을 반영하고 조정하여 실제 상황과 관련성을 유지할 수 있다.
-> 작업이 산으로 가지 않게 막아줌. - 계획에는 일반적으로 계획 수립과 계획 반영이라는 두 가지 주요 단계가 포함
- Plan formulation
- 큰 작업을 더 작은 하위 작업으로 세분화한다
- CoT : 일부 작업 세분화 접근 방식은 세부 계획을 한꺼번에 만든 다음 단계별로 따르도록 함
- ToT : 문제를 해결하기 위해 다양한 경로를 탐색함으로써 CoT 기법을 한 단계 더 발전시킨 또 다른 접근 방식
문제를 여러 단계로 나누고 각 단계마다 여러 아이디어를 생성하여 나무의 가지처럼 배열 - Tree형태 : 계획을 확정하기 전에 가능한 모든 옵션을 고려하여 계층적 접근 방식을 사용. LLM 기반 에이전트는 일반적으로 지식이 풍부하지만 전문 지식이 필요한 작업에 어려움을 겪을 때가 있다. 이러한 에이전트를 도메인별 플래너와 통합하면 성능이 향상되는 것으로 입증되었다.
- Plan reflection
- 계획을 수립한 후에는 그 효과를 검토하고 평가하는 것이 중요하다.
- 효과적인 방법은 ReAct와 Reflexion이 있음.
- ReAct는 (생각, 행동, 관찰)의 순서를 순환하면서 필요에 따라 이러한 단계를 반복하여 복잡한 과제를 해결하는데 도움을 줌
- Plan formulation
Tools use
- 이 용어의 도구는 LLM 에이전트가 외부 환경과 연결하여 특정 작업을 수행하는 데 도움이 되는 다양한 함수.
- 데이터베이스에서 정보 추출, 쿼리, 코딩 및 에이전트가 작동하는 데 필요한 기타 모든 작업이 포함될 수 있다.
- LLM 에이전트는 이러한 도구를 사용할 때 특정 워크플로우를 따라 작업을 수행하거나 관찰 정보를 수집하거나 하위 작업을 완료하고 사용자 요청을 이행하는 데 필요한 정보를 수집한다.
- 한 실험에서 : 산술 문제에 계산기를 사용하도록 LLM을 훈련시켰다. 연구 결과, LLM은 직접적인 수학 쿼리는 처리할 수 있었지만 텍스트에서 숫자와 연산을 추출해야 하는 단어 문제에서는 어려움을 겪는 것으로 나타났다. 이는 외부 도구를 효과적으로 사용하는 시기와 방법을 아는 것이 중요하다는 것을 강조한다.
-> 상황 및 Tools를 사용하는 방법을 알려주는것이 key
-> 이러하여 Transactories를 in context learning 하나 봄.
LLM agent challenges
- 제한된 컨텍스트 : 한 번에 제한된 양의 정보만 추적할 수 있다. 대화 초반의 중요한 세부 정보를 기억하지 못하거나 중요한 지침을 놓칠 수 있다
- 장기적인 계획의 어려움 : 예상치 못한 문제가 발생했을 때 적응하는 데 어려움을 겪는 경우가 많다. 사람이 문제 해결에 접근하는 방식에 비해 유연성이 떨어질 수 있다.
- 일관성 없는 출력 : LLM 에이전트는 자연어에 의존하여 다른 도구 및 데이터베이스와 상호 작용하기 때문에 때때로 신뢰할 수 없는 출력을 생성한다. 서식을 잘못 지정하거나 지침을 올바르게 따르지 않아서 수행하는 작업에서 오류가 발생할 수 있다.
- 특정 역할에 적응하기 : 흔하지 않은 역할을 부여받을 경우, 또한 사람이 생각한대로 role을 세세하게 조정하는 것은 어렵다.
- 프롬프트 의존성 : 프롬프트를 기반으로 작동하여 프롬프트는 매우 정확해야 한다. 작은 변화도 큰 실수로 이어질 수 있으므로 이러한 프롬프트를 만들고 개선하는 것은 섬세한 과정
- Managing Knowledge : 관련 없는 정보가 너무 많으면 잘못된 결론을 내리거나 오래된 사실에 따라 행동하게 될 수 있다.
- 비용 효율성 : LLM 에이전트를 운영하는 것은 리소스가 많이 필요하다. 많은 양의 데이터를 빠르게 처리해야 하는 경우가 많기 때문에 비용이 많이 들 수 있으며, 제대로 관리하지 않으면 성능이 저하될 수 있다.
https://www.superannotate.com/blog/llm-agents
LLM agents: The ultimate guide | SuperAnnotate
Discover how LLM agents combine planning, memory, and tool use to solve complex LLM problems.
www.superannotate.com
https://www.promptingguide.ai/research/llm-agents
LLM Agents – Nextra
A Comprehensive Overview of Prompt Engineering
www.promptingguide.ai
'DeepLearing > NLP(Agent)' 카테고리의 다른 글
[Agent] ShortCut (0) | 2025.04.19 |
---|---|
[논문리뷰](25.01) Agent-R: Training Language Model Agents toReflect via Iterative Self-Training (1) | 2025.04.19 |
[논문리뷰](25.01)Search-o1: Agentic Search-EnhancedLarge Reasoning Models (0) | 2025.03.21 |
[논문리뷰](25.03)ReasonFlux Hierarchical LLM Reasoning via Scaling Thought Templates (0) | 2025.03.17 |
[논문리뷰]MemGPT: Towards LLMs as Operating Systems (2) | 2024.11.05 |