왜 다들 소프트웨어 작성에 특화된 에이전트를 쓰려고 하는지 이해가 안 감
Don't understand why everyone want to have specific agents to write software
핵심 요약
소프트웨어 개발 시 다중 에이전트 워크플로우가 과잉 설계인지, 아니면 실질적인 이점이 있는지에 대한 논의입니다.
- 과잉 설계 논란 — 복잡한 에이전트 구조보다 단일 세션의 효율성을 선호함
- 컨텍스트 관리 — 에이전트 분리를 통해 LLM의 주의력 분산과 환각을 방지함
- 토큰 효율성 — 작업별로 컨텍스트를 분리하는 것이 전체 컨텍스트 재사용보다 경제적임
- 기술의 짧은 수명 — 모델 성능 향상으로 인해 복잡한 오케스트레이션이 금방 무용지물이 됨
안녕.
난 소프트웨어 엔지니어인데, 요즘 특정 에이전트 워크플로우를 두고 다들 너무 과하게 엔지니어링하는 거 같아서 좀 의문이 들어.
내 동료 몇 명이 여러 에이전트로 아키텍처를 짜서 자기들만의 워크플로우를 만들었거든. 보통 오케스트레이터, 구현자, 리뷰어, 테스터 이렇게 나누더라고.
근데 내 생각엔 이거 완전 불필요한 짓 같거든. 왜 굳이 저렇게까지 하는지 이해가 안 가. LLM은 컨텍스트를 입력값으로 받아야 하잖아. 요즘은 에이전트 스킬이라는 게 있어서 특정 워크플로우(라이브러리나 테스트 방식 같은 거)에 특화된 에이전트를 쓸 수 있단 말이지. 명세서 봐도 메타데이터에 언제 이 스킬을 호출해야 하는지 설명이 다 적혀 있고.
그래서 내 생각엔 그냥 GitHub Copilot의 표준 에이전트 모드에 프로젝트에 필요한 스킬만 적용해서 쓰는 게 훨씬 효율적이야. GitHub Copilot이랑 VS Code 만드는 엔지니어들이 이미 프롬프트부터 결과물 생성까지 모든 워크플로우를 다 고려해서 설계했을 거 아냐.
질문 하나 할게. 내가 멍청한 거야? 아니면 내 동료들이 쓸데없이 과하게 엔지니어링하고 있는 거야?

