LLM 자체로는 조치를 취할 수 없고 단지 텍스트만 출력할 뿐
에이전트는 LLM을 추론 엔진으로 사용하여 수행할 작업과 해당 작업에 대한 입력이 무엇인지 결정하고 해당 작업의 결과를 다시 에이전트로 피드백하여 추가 작업이 필요한지 또는 완료해도 괜찮은지 여부를 결정할 수 있음
LangChain에서 AgentExecutor를 사용하여 에이전트를 구축할 수 있는데 AgentExecutor는 레거시이며 특정 지점이 지나면 기능 제공을 하지 않을 예정이기 때문에 LangGraph 에이전트 또는 마이그레이션 가이드를 확인하는 것을 권장
- 랭체인의 강력한 모듈
- LLM은 추론과 행동이 가능한데, 이는 ReAct 프롬프트 기법이라고 불림. 랭체인 에이전트는 LLM을 사용하여 프롬프트를 행동 계획으로 추출하는 ReAct 프롬프트 제작을 단순화 함
- 일종의 동적 체인으로 생각할 수 있음, 기본 일련 동작을 선택하기 위해 LLM을 사용
- 동작의 순서는 체인(코드)으로 하드 코딩되며, LLM은 에이전트 내에서 추론 엔진으로 사용되어 어떤 순서로 어떤 동작을 취할지 결정함
- 체인이 주어진 상위 수준 지시어에 따라 사용할 도구를 선택하도록 함
- 예를들어, 코드를 직접 실행시키는 역할과 결과를 보고/수정하는 디버깅 역할을 만들어 둘을 연결하면 프로그램이 완성될 때까지 질문과 답변을 주고받게 할 수 있음. 또는 입력받은 내용을 인터넷에 검색하기 위해 검색을 담당하는 API 호출 동작도 가능