항상 새로운 기술이 대중들에게 공개될 때마다 명확한 합의와 정의 없이 기술에 대해 말하는 "버즈워드(buzzword)"들이 등장합니다. "유비쿼터스", "Web3.0", "메타버스"와 같이 일종의 유행어라고 볼 수도 있는 버즈워드들은 기술의 혁신성을 강조하고 사람들의 관심을 끈다는 점에서 긍정적인 역할을 하기도 하지만, 종종 비전문가적 관점에서 사람들의 오해를 불러일으키기도 한다는 점에서 주의가 필요합니다.
출처 : Habr
인공지능은 새로운 기술 분야인 만큼 버즈워드가 많이 만들어지고 퍼져나가는 분야 중 하나입니다. 예를 들어 최근 생성형 AI의 발전과 함께 유행하고 있는 '일반인공지능(AGI)'이라는 단어 역시 사실상 버즈워드라고 할 수 있습니다. 아직까지 AI가 한정된 분야의 태스크에만 활용되는 약인공지능(weak AI)의 단계에 머물러있는 상황에서 우리는 개념으로만 존재하는 강인공지능(strong AI)을 어떻게 구현할지, 그리고 기계의 지능을 어떻게 정의할지, 한 발 더 나아가 그 범위를 어디까지로 볼지에 대한 합의조차 이루고 있지 못하고 있기 때문입니다.
이 브런치북에서 다루고 있는 'AI 에이전트'라는 단어 역시 아직까지는 합의된 명확한 정의가 없는 버즈워드라고 볼 수 있습니다. AI 에이전트에 대한 나름의 정의를 내리려는 시도가 필요한 이유입니다. 지난 시간에 AI 에이전트란 사용자와 인공지능 사이에서 일종의 매개체 역할을 하는 소프트웨어라고 말씀드렸습니다. 그런데 '매개체'라는 단어만으로는 뭔가 부족한 느낌입니다. 우리는 구체적으로 어떤 소프트웨어를 AI 에이전트라고 정의 내릴 수 있을까요? 본격적으로 AI 에이전트의 구성요소를 뜯어보기 전에, AI 에이전트가 무엇인지 정의 내려보도록 합시다.
1. 어디서부터 어디까지가 AI 에이전트인가?
사실 AI 에이전트라는 기술은 LLM이 그렇듯이 아직 초기 단계에 있고, 아직 명확하고 통일된 정의는 없습니다. 우선 어디까지를 AI 에이전트라고 보아야 할지 범위가 명확하지 않습니다. 단순히 사용자와 특정 알고리즘을 연결해 주는 소프트웨어를 AI 에이전트라고 정의한다면, 넓은 의미에서 단순 규칙기반(rule-based) 챗봇이나 조명 조절장치 등 거의 모든 자동화 프로그램이 해당 범주안에 들어가게 됩니다.
하지만 우리가 AI 에이전트에게 기대하는 태스크 범위는 훨씬 더 넓습니다. 예를 들어 영화 속 Jarvis같이 사용자의 개입 없이도 어느 정도 '스스로' 결정을 내리거나 행동할 수 있어야 하죠. 따라서 이 브런치북에서 다루는 AI 에이전트는 추론 능력에 근거해 스스로 판단을 내릴 수 있는 생성형 AI에 기반한 AI 에이전트로 한정하도록 하겠습니다.
따라서, 이 글에서 다루는 AI 에이전트는 단순한 규칙 기반의 시스템을 넘어서, 생성형 AI 기술을 활용해 복잡한 문제를 해결하고, 상황에 맞는 판단을 내리는 능력을 가진 소프트웨어로 정의할 수 있습니다. 이 AI 에이전트는 사용자의 개입 없이도 스스로 학습하고, 상황을 평가하여 행동을 결정하는 능력을 갖추고 있어야 합니다. 즉, AI 에이전트는 단순히 알고리즘을 연결하는 프로그램이 아니라, 생성형 AI를 기반으로 한, 상황에 맞는 결정을 내릴 수 있는 지능적 존재로 볼 수 있습니다.
2. AI 에이전트의 핵심 조건
또한 AI 에이전트를 정의하기 위해서는 그 기능을 구성하는 요소들을 명확히 정의해야 할 필요가 있습니다. AI 에이전트는 단순히 특정 명령을 수행하는 시스템을 넘어서, 환경을 인식하고(Perceive), 데이터를 처리(Process)하고 이를 기반으로 학습하며(Learn), 적절한 결정을 내리고(Reason) 이를 바탕으로 행동(Act)할 수 있는 복합적인 시스템입니다.
출처 : eluminoustechnologie
3. AI 에이전트 실현을 가능하게 하는 기술적 요소들
이러한 AI 에이전트의 작동을 가능하게 하기 위한 기술적 요소는 크게 네 가지로 나눌 수 있습니다. 첫째, 사용자 인터페이스(User Interface)입니다. AI 에이전트는 환경과 상호작용을 하기 위해 다양한 감지 도구를 사용합니다. 이는 카메라, 센서, 마이크로폰 등과 같은 물리적인 장치일 수 있으며, 또는 텍스트나 음성 데이터를 처리하는 자연어 처리 시스템과 같은 디지털 입력을 포함할 수도 있습니다. AI 에이전트는 이러한 감지 능력과 대화형 인터페이스 등을 통해 외부 환경을 이해하고 데이터를 수집합니다.
둘째, 추론 모델(Reasoning Model)입니다. 감지된 데이터는 AI 에이전트가 상황을 분석하고 결정하는 데 필수적입니다. 이를 위해 AI 에이전트는 데이터를 해석하고, 관련 지식을 바탕으로 합리적인 결정을 내리기 위한 추론 능력을 필요로 합니다. 예를 들어, 영화 속 Jarvis처럼 다양한 상황에서 적절한 행동을 선택하기 위해서는, AI가 단순히 명시된 규칙을 따르는 것이 아니라, 새로운 상황을 고려해 가장 적합한 판단을 내려야 합니다. 지난 시간에 살펴본 것처럼 LLM의 발전 덕분에 AI 에이전트의 핵심 조건중 하나인 추론이 가능해졌습니다.
셋째, 학습 사이클(Learning Cycle)입니다. AI 에이전트는 고정된 프로그램이 아니라, 사용자와 상호작용하거나 환경을 변화시키면서 점차 발전하는 시스템이어야 합니다. 이를 위해 AI 에이전트는 머신러닝 알고리즘을 통해 경험을 바탕으로 계속해서 학습하고, 새로운 정보에 적응하며 성능을 개선합니다. 지속적인 학습과 개선을 위해서는 MLOps(Machine Learning Operations)나 LLMOps(LLM Operations)로 알려진 일련의 사이클이 필요합니다. 이 과정은 AI 에이전트가 과거의 데이터를 분석하고, 이를 바탕으로 미래의 행동을 예측하는 데 필수적입니다.
넷째, 행동(Action)입니다. AI 에이전트는 최종적으로 그 판단에 따라 행동을 취해야 합니다. 이러한 행동은 소프트웨어 내에서 명령을 실행하거나, 물리적인 환경에 영향을 미치는 방식일 수 있습니다. 예를 들어, AI가 감지된 상황에 맞춰 조명을 자동으로 조정하거나, 사용자의 일정에 맞춰 회의 일정을 제안하는 등, 행동은 AI 에이전트가 수행할 수 있는 다양한 작업을 포함합니다. 이러한 과정들을 실현하기 위해서는 소프트웨어 자동화와 로보틱스 즉 흔히 알려진 RPA(Robotic Process Automation)과 같은 기술들이 필요합니다.
이 네 가지 구성 요소가 잘 결합될 때, AI 에이전트는 단순한 자동화 프로그램을 넘어, 스스로 환경을 인식하고, 추론하며, 학습을 통해 점차 더 나은 결정을 내릴 수 있는 지능적인 존재로 발전할 수 있습니다. 이처럼 AI 에이전트는 기술적으로 복잡하고 다단계적인 시스템이기 때문에, 그 구현에는 상당한 기술적 도전이 따르지만, 그 가능성은 무궁무진합니다. 다음 시간부터는 각각의 요소들을 하나하나 자세히 배워보도록 하겠습니다.