컴퓨터 과학에서 자율 에이전트는 사용자 또는 다른 프로그램을 위해 대리 관계(agency)에 따라 행동하는 소프트웨어 프로그램으로, 그 이름은 라틴어 agere(행하다)에서 유래한다. 요청 시 호출되는 기존 프로그램과 달리 자율 에이전트는 스스로 활성화되고, 자신의 맥락을 인식하며, 작업을 수행할 시기를 결정한다. 이들은 메서드와 속성이 아닌 행동으로 정의되며, 단독으로 작동하거나 다른 에이전트 및 사람과 상호작용할 수 있다. 일반적인 예로는 챗봇, 쇼핑 봇, 로봇과 같은 구현된 시스템이 있으며, 자연어 이해와 같은 인간과 유사한 특성을 나타낼 수 있다.
에이전트의 개념은 어느 정도의 자율성을 가지고 행동할 수 있는 복잡한 소프트웨어 개체를 설명하는 방법을 제공한다. 모든 에이전트는 프로그램이지만 모든 프로그램이 에이전트는 아니다. 주요 차이점으로는 지속성(연속적으로 실행되고 행동 시기를 결정함), 자율성(인간의 개입 없이 작업 선택 및 목표 지향적 행동), 사회적 능력(다른 구성 요소와 통신 및 조정), 반응성(환경을 인식하고 대응)이 포함된다. 이러한 속성은 에이전트를 유연하고 능동적인 행동이 부족한 임의의 프로그램, 객체 및 전문가 시스템과 구별한다.
역사적 발전
자율 에이전트의 지적 뿌리는 내부 상태와 통신 능력을 가진 자족적이고 상호작용적이며 동시에 실행되는 객체를 설명한 휴이트(Hewitt)의 행위자 모델(1977)로 거슬러 올라간다. 소프트웨어 에이전트 시스템은 분산 인공지능(DAI), 분산 문제 해결(DPS) 및 병렬 AI에서 등장한 다중 에이전트 시스템(MAS)에서 직접 진화했다. 존 스컬리(John Sculley)의 1987년 "지식 항해사(Knowledge Navigator)" 비디오는 최종 사용자가 에이전트와 상호작용하는 비전을 대중화했지만, 초기 구현은 하향식 접근 방식으로 인해 종종 실패했다. 1990년대 이후 에이전트 유형의 범위는 크게 확장되어 웹 기반 애플리케이션과 검색 엔진을 포함하게 되었다.
핵심 특성
자율 에이전트는 작업을 위해 엄격히 호출되지 않고 스스로 활성화된다. 이들은 호스트에서 대기 상태로 머물며 맥락을 인식하고, 시작 조건이 충족되면 실행 상태로 전환할 수 있다. 사용자 상호작용을 요구하지 않으며 통신을 포함한 다른 작업을 호출할 수 있다. 대리(agency)의 개념은 어떤 행동이 적절한지 결정할 권한을 의미한다. 에이전트는 자율적이거나 다른 에이전트 또는 사람과 협력적으로 작업할 수 있으며, 물리적으로 별개의 컴퓨터에 분산되거나 모바일로 다른 프로세서로 실행을 이동할 수 있다.
유형 및 응용
구매자 에이전트는 쇼핑 봇이라고도 하며, 인터넷과 같은 네트워크를 이동하여 상품과 서비스에 대한 정보를 검색한다. 이들은 CD, 책, 전자 부품과 같은 상품에 효율적으로 작동하며, 종종 디지털 결제 서비스에 최적화되어 있다. 다른 유형으로는 별도의 머신에서 실행되는 분산 에이전트와 단일 에이전트가 혼자서 달성할 수 없는 목표를 달성하기 위해 함께 작업하는 다중 에이전트 시스템이 있다. 현대적 맥락에서 자율 에이전트는 점점 더 대규모 언어 모델과 생성형 AI를 활용하여 복잡한 추론과 작업 실행을 수행하며, OpenAI와 Anthropic 같은 기업이 에이전트 프레임워크를 개발하고 있다.
조직 및 사용자에 미치는 영향
소프트웨어 에이전트는 복잡하거나 반복적인 작업을 자동화하여 최종 사용자에게 상당한 이점을 제공할 수 있다. 행정 요구 사항을 위한 에이전트 구현은 개인을 일상적인 형식에서 해방시키고 실질적인 작업에 더 많이 참여할 수 있게 하므로 작업 만족도를 높이는 경우가 많다. 이는 계층적 간섭을 줄인 자기 통제적 작업을 지원할 수 있다. 그러나 조직적 및 문화적 영향도 고려해야 한다. 신뢰 손상, 기술 침식, 개인정보 침식, 사회적 단절은 잠재적 단점이다. 중요한 작업을 위임하는 사용자는 정보 활용 능력을 잃을 수 있으며, 에이전트는 완전한 사용자 프로필을 요구하므로 개인정보 보호 문제가 제기된다. 통신을 위해 에이전트에 과도하게 의존하면 사용자가 에이전트의 관점을 통해 세상을 보게 되는 사회적 단절로 이어질 수 있다.
관련 개념과의 구별
지능형 에이전트는 합리적 에이전트라고도 하며 컴퓨터 프로그램에 국한되지 않는다. 여기에는 목표 지향적 행동이 가능한 기계, 인간 또는 인간 커뮤니티가 포함될 수 있다. 이 더 넓은 정의는 구체적으로 계산적인 지능형 소프트웨어 에이전트와 대조된다. 전문가 시스템은 환경에 연결되지 않고, 반응적 또는 능동적 행동을 위해 설계되지 않으며, 사회적 능력을 고려하지 않는다는 점에서 에이전트와 다르다. 객체는 에이전트보다 자율성이 낮으며, 에이전트는 유연한 행동을 보이고 적어도 하나 이상의 제어 스레드를 유지한다. 이러한 구별은 인공지능 및 머신러닝 연구에서 자율 에이전트의 고유한 역할을 명확히 하는 데 도움이 되며, 이는 수동적 도구에서 능동적 디지털 행위자로의 전환을 나타낸다.