클로드(Claude)의 진화에 발맞춘 애플리케이션 개발 전략: 지능 활용, 불필요한 작업 제거, 경계 설정!

by DD
2개월 전
조회수 18

앤트로픽(Anthropic)은 클로드(Claude)의 발전 속도에 맞춰 애플리케이션 개발 방식도 변화해야 한다고 강조하며, 지속적인 재검토(Frequent Revisiting)의 필요성을 역설함

클로드(Claude)가 잘 이해하는 도구를 활용하고, 불필요한 작업을 줄이며, 에이전트(Agent) 경계를 신중하게 설정하는 세 가지 개발 패턴(Three Patterns) 제시

클로드(Claude)가 코드 실행 도구를 활용하여 자체적으로 액션(Action)을 조정하도록 함으로써, 정확도(Accuracy)와 효율성(Efficiency)을 향상시킴

장기적인 작업(Long-horizon Tasks)을 위해 클로드(Claude)가 자체적으로 컨텍스트(Context)를 유지하도록 하여, 성능(Performance)을 개선함

클로드(Claude)가 이해하는 도구 활용

본문에서는 클로드(Claude)가 잘 이해하는 도구를 활용하여 애플리케이션을 구축하는 방식을 제안한다. 특히, 클로드 3.5 소넷(Claude 3.5 Sonnet) 모델이 Bash(Bash) 도구와 텍스트 편집기(Text Editor) 도구를 활용하여 SWE-bench Verified 벤치마크에서 높은 점수를 달성한 사례를 제시한다.

에이전트 스킬(Agent Skills), 프로그래밍 방식의 도구 호출(Programmatic Tool Calling), 메모리 도구(Memory Tool) 등은 Bash와 텍스트 편집기 도구를 조합하여 만들어짐

클로드(Claude)는 이러한 도구를 조합하여 다양한 문제를 해결하는 패턴을 학습하며, 개발자는 클로드(Claude)가 지속적으로 개선되는 능력(Evolving Capability)을 활용해야 함

결론적으로, 클로드(Claude)가 익숙한 도구를 활용하면 개발 효율성을 높일 수 있으며, 모델의 성능 향상에 따라 애플리케이션의 성능도 함께 개선될 수 있다.

클로드(Claude)에게 불필요한 작업 중단 요청

본문에서는 에이전트(Agent)가 클로드(Claude)가 스스로 할 수 없는 작업을 가정하고 설계되는 경우가 많다고 지적하며, 클로드(Claude)의 능력 향상에 따라 이러한 가정을 재검토해야 한다고 강조한다. 특히, 클로드(Claude)가 코드 실행 도구(Code Execution Tool)를 활용하여 자체적으로 액션을 조정하도록 하는 방식을 제시한다.

기존 방식: 모든 도구의 결과를 클로드(Claude)의 컨텍스트 창(Context Window)으로 전달하여 다음 액션을 결정

개선된 방식: 클로드(Claude)가 코드(Code)를 작성하여 도구 호출 및 로직을 제어, 컨텍스트 창에 불필요한 정보 전달을 최소화

결과: BrowseComp 벤치마크에서 정확도(Accuracy)가 45.3%에서 61.6%로 향상

결론적으로, 클로드(Claude)가 스스로 액션을 조정하도록 함으로써, 토큰(Token) 비용 절감 및 성능 향상을 동시에 달성할 수 있다.

클로드(Claude)의 컨텍스트 관리 및 경계 설정

본문에서는 클로드(Claude)가 장기적인 작업을 수행할 때 컨텍스트(Context)를 효율적으로 관리하고, 애플리케이션의 경계를 신중하게 설정해야 한다고 강조한다. 특히, 클로드(Claude)가 자체적으로 컨텍스트를 유지하고, 경계를 설정하는 방법을 제시한다.

컨텍스트 관리: 오래된 정보를 제거하고, 하위 에이전트(Subagent)를 활용하여 작업 분리

경계 설정: 캐시(Cache)를 활용하여 토큰 비용 절감, 전용 도구(Dedicated Tools)를 사용하여 보안 및 UX(User Experience) 강화

예시: 장기적인 게임(Long-horizon Games)에서 클로드(Claude)가 메모리 폴더(Memory Folder)를 활용하여 학습하고, 전략을 개선하는 사례

결론적으로, 클로드(Claude)의 컨텍스트 관리 능력과 경계 설정을 통해 장기적인 작업의 효율성을 높이고, 사용자 경험을 개선할 수 있다.

캐시(Cache)를 활용한 비용 절감

본문에서는 클로드(Claude) API의 Messages API가 상태 비저장(Stateless) 방식이므로, 에이전트(Agent)는 각 턴마다 모든 컨텍스트를 함께 패키징해야 한다고 설명한다. 이러한 문제를 해결하기 위해, 캐시(Cache)를 활용하여 토큰(Token) 비용을 절감하는 방법을 제시한다.

정적(Static) 콘텐츠를 먼저, 동적(Dynamic) 콘텐츠를 나중에 배치

메시지(Messages) 업데이트 시, 프롬프트(Prompt)를 수정하는 대신 를 추가

모델(Model) 변경 금지: 세션(Session) 중 모델 변경 시 캐시 무효화

도구(Tools) 관리: 도구 추가/제거 시 캐시 무효화, 동적 검색(Dynamic Discovery) 활용

브레이크포인트(Breakpoint) 업데이트: 멀티 턴(Multi-turn) 애플리케이션에서 최신 메시지로 이동

결론적으로, 캐시를 효율적으로 활용하면 클로드(Claude) API 사용 비용을 절감하고, 애플리케이션의 성능을 향상시킬 수 있다.

전용 도구(Dedicated Tools)를 활용한 보안 및 UX(User Experience) 강화

본문에서는 클로드(Claude)가 애플리케이션의 보안 경계(Security Boundary)나 UX(User Experience)를 인식하지 못하므로, 전용 도구(Dedicated Tools)를 사용하여 이를 강화해야 한다고 설명한다. 특히, 보안(Security), UX, 관측 가능성(Observability)을 위해 전용 도구를 활용하는 방법을 제시한다.

보안: 외부 API 호출과 같이 되돌리기 어려운 액션은 사용자 확인을 거치도록 설정

UX: 사용자에게 명확한 질문 제시, 여러 옵션 제공, 사용자 피드백 대기

관측 가능성: 전용 도구의 구조화된 인수를 로깅(Logging), 추적(Tracing), 재생(Replay)에 활용

예시: Claude Code의 자동 모드(Auto-mode)는 Bash 도구에 대한 보안 경계를 제공

결론적으로, 전용 도구를 활용하면 애플리케이션의 보안, UX, 관측 가능성을 향상시키고, 클로드(Claude)의 활용 범위를 넓힐 수 있다.

Harnessing Claude’s intelligence