Valentino Stole은 AI가 스스로 에이전트를 생성하고 작업을 조립하여 목표를 달성하는 ‘autogenetic’ 개념을 소개합니다. 이 개념은 그가 개발한 Ruby Gem인 Agentic에 구현되어 있습니다.
Agentic Gem과 자가 생성 에이전트
-
계획 및 실행 워크플로우:
Agentic은 LLM(대규모 언어 모델)이 계획을 수립하고 이를 실행하는 워크플로우를 가능하게 합니다. 이는 AI가 단지 질문에 답하는 것을 넘어, 복잡한 목표를 달성하기 위한 다단계 과정을 스스로 설계하고 수행함을 의미합니다. -
에이전트의 자가 조립 및 재사용: LLM은 주어진 목표를 달성하기 위해 필요한 에이전트를 스스로 생성하고 조립할 수 있습니다. 예를 들어, 연구 에이전트가 특정 내용을 조사하고 정보를 파일에 저장한 후, 이후의 다른 연구 작업에 이 에이전트를 재사용할 수 있습니다. 시스템은 기존 에이전트 중 하나를 선택하거나, 필요에 따라 새로운 에이전트를 구축할 수 있습니다.
-
코드 생성 능력: 때로는 LLM이 직접 함수 코드를 작성하기도 하지만, 복잡한 작업의 경우 더 작은 단위로 분해하여 처리하려는 경향을 보입니다.
-
역량 시스템 및 가드레일:
Agentic은 ‘역량 시스템(capability system)’을 통해 에이전트가 수행할 수 있는 작업을 정의합니다 (예: 웹 검색, 파일 읽기, PDF 생성). 이러한 명확한 가드레일(guardrails)은 LLM이 무작위로 기능을 만들어내는 것을 방지하고, 더 예측 가능하며 효과적인 결과를 도출하는 데 기여합니다.
AI 에이전트 개발의 통찰 및 과제
-
LLM의 한계와 구조의 중요성: LLM은 자체적인 아티팩트 관리나 결정론적 결과 도출에 어려움을 겪습니다. 따라서 LLM에 더 많은 구조와 구체적인 개념을 제공할수록 더 일관되고 좋은 성능을 얻을 수 있습니다.
-
개념적 이해의 중요성: LLM은 개념 간의 연결 관계를 파악하는 데 매우 능숙합니다. 개발자가 더 구체적이고 명확한 개념을 제공하고, 이들이 어떻게 상호작용하는지 정의할수록 에이전트의 성능이 향상됩니다.
-
생산 환경의 변화: ‘프로덕션’의 정의가 변화하고 있습니다. 개발자의 로컬 머신이 코드 검토나 특정 작업을 수행하는 AI 에이전트의 실행 환경이 되면서, 로컬 환경이 점차 ‘생산 시스템’의 역할을 수행하게 됩니다. 이는 클라우드에 의존하지 않고 로컬에서 더 많은 작업을 처리하려는 경향과 맞물려 있습니다.
개발자의 미래 역할과 학습 방향
-
개념 전달자로서의 개발자: AI 에이전트의 발전은 개발자의 역할을 코드 작성에서 ‘개념 전달’과 ‘문제 정의’로 전환시킵니다. 개발자는 자신이 만들고자 하는 것을 에이전트에게 명확하게 전달하는 능력이 더욱 중요해집니다.
-
기본 지식의 중요성: HTTP, 시스템 아키텍처, 서비스 간 통신 방법, 테스트 방법론 등 컴퓨터 과학의 근본적인 개념들은 여전히 중요합니다. AI가 코드를 생성하더라도, 개발자는 이를 이해하고 검증할 수 있어야 합니다.
-
학습 방법의 진화: 새로운 기술을 배우는 과정은 여전히 중요하지만, AI 도구를 활용하여 학습 계획을 세우거나 질문을 통해 부족한 부분을 채울 수 있습니다. 전통적인 교육 과정은 여전히 ‘무엇을 질문해야 할지’ 알려주는 데 필수적인 역할을 합니다.