과학 계산을 위한 장기 실행 Claude
Claude Code를 며칠짜리 자율 에이전트로 돌려 과학 계산 코드를 구현하는 방법을 정리했다.
과학 계산에서는 Claude Code를 대화형 보조가 아니라, 며칠 동안 스스로 일하는 자율 에이전트로 다루는 방식이 유효하다. 작업 범위가 분명하고 성공 기준이 명확한 문제라면, 사람은 세부를 계속 지시하지 않아도 되고 고수준 목표만 주면 된다.
이 방식에선 시작 전에 CLAUDE.md에 프로젝트 목표, 설계 원칙, 정확도 기준을 적어 두는 것이 핵심이다. 작업이 진행되는 동안에는 CHANGELOG.md를 “이동 가능한 장기 기억”으로 써서 진행 상황, 실패한 접근, 남은 과제를 남긴다.
에이전트가 제대로 나아가고 있는지 판단하려면 test oracle이 필요하다. 이 글의 예시처럼 과학 코드에서는 레퍼런스 구현, 명확한 수치 목표, 테스트 스위트가 그 역할을 하며, 필요한 경우 에이전트가 테스트를 더 늘리고 계속 돌리도록 시킨다.
또한 Git은 조정 도구로 쓸 수 있다. 의미 있는 단위 작업이 끝날 때마다 커밋하고, 실패 없이 통과한 테스트만 반영하게 하면, 장시간 작업 중에도 진척이 보이고 중간에 끊겨도 복구가 쉽다.
실행 환경은 SLURM을 쓰는 HPC 클러스터였지만, 핵심 패턴은 어디서나 비슷하다. tmux 안에서 Claude Code를 돌리고, 필요할 때 다시 접속해 지시를 조정하며, “정말 끝났는지” 확인시키는 Ralph loop 같은 오케스트레이션으로 조기 종료를 막는다.
구체적 예로는, JAX로 미분 가능한 우주론 Boltzmann solver를 구현하는 작업이 소개된다. 이 코드는 빅뱅 이후의 잔광인 CMB를 설명하고, 기존의 CLASS와 CAMB 같은 레퍼런스 구현을 기준으로 0.1% 수준의 정확도를 목표로 했다.
중요한 점은, 이 작업이 저자의 핵심 전공 밖에 있었다는 것이다. 그럼에도 Claude는 레퍼런스와 테스트, 진행 로그를 바탕으로 며칠 동안 작업을 이어가며 여러 출력에서 sub-percent 일치에 도달했다.
결과물은 아직 모든 영역에서 production-grade는 아니지만, 잘 정의된 과학 계산 문제에서는 에이전트 개발이 사람의 연구 시간을 수개월에서 수일 수준으로 압축할 수 있음을 보여준다.
이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.
요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.