전문화된 AI 에이전트 생성하기
거대한 AI 에이전트 하나를 만드는 것은 쉬워 보입니다. 코드 작성, 테스트 실행, 보안 검토, 문서 업데이트를 위해 단 하나의 프롬프트만 주면 되니까요.
데모용으로는 작동하지만, 실제 엔지니어링에서는 실패합니다.
소프트웨어 작업은 서로 다른 사고 방식을 요구하기 때문에, 단일 에이전트는 종종 성능이 저하됩니다. 코드를 작성하는 것은 테스트하는 것과 같지 않습니다. 코드를 검토하는 것은 문서화하는 것과 같지 않습니다.
실제 엔지니어링 팀은 이러한 작업을 분리합니다. 여러분의 AI 아키텍처도 마찬가지여야 합니다.
전문화된 에이전트는 역할이 한정되어 있기 때문에 더 잘 작동합니다. 한정된 역할은 정의하기 쉽습니다:
- 읽을 수 있는 것
- 수정할 수 있는 것
- 실행할 수 있는 명령
- 중단해야 하는 시점
전문화된 팀을 구성하는 방법은 다음과 같습니다:
• Developer Agent 역할은 작고 안전한 코드 변경을 수행하는 것입니다. 엄격한 수락 기준(acceptance criteria)을 따르며 허용된 파일만 수정합니다.
• Tester Agent 역할은 무언가를 망가뜨리는 것입니다. 코드를 보기 좋게 만들려고 애쓰지 않습니다. 동작이 제대로 작동함을 증명합니다. 훌륭한 테스터는 검증할 수 없었던 사항을 보고합니다.
• Reviewer Agent 역할은 마찰을 일으키는 것입니다. 이름이 명확한지, 로직이 중복되었는지, 혹은 변경 사항이 너무 큰지 확인합니다.
• Security Agent 역할은 회의적인 태도를 유지하는 것입니다. 권한 격차, SQL 인젝션 또는 민감한 데이터 유출을 탐색합니다. 조용히 검증되지 않은 변경이 일어나는 것을 방지하기 위해 읽기 전용(read-only)이어야 합니다.
• Documentation Agent 역할은 코드 변경 사항을 사람이 이해할 수 있는 가이드로 변환하는 것입니다. README 파일, API 예제, 변경 로그(changelog)를 업데이트합니다. 이는 종종 사람이 가장 먼저 잊어버리는 작업입니다.
• Orchestrator Agent 역할은 워크플로우를 관리하는 것입니다. 작업을 분할하고, 에이전트를 할당하며, 컨텍스트를 전달하고, 승인을 확인합니다. 직접 작업을 수행하는 것이 아니라 작업을 지시합니다.
에이전트들이 서로 작업을 전달할 때는 긴 문단 대신 구조화된 데이터를 사용하십시오. JSON이나 타입이 지정된 아티팩트(typed artifacts)를 사용하십시오. 이렇게 하면 다음 에이전트가 행동하기 쉬워지고, 여러분이 작업 내용을 검사하기도 용이해집니다.
작고 집중된 에이전트들은 하나의 거대한 모델보다 제어하기 쉽습니다. 전문가 팀이 프로덕션 환경에서도 제 역할을 다합니다.
Source: https://dev.to/nazar_boyko/creating-specialized-ai-agents-developer-tester-reviewer-documenter-4ac2
Optional learning community: https://t.me/GyaanSetuAi
