프롬프트 엔지니어링이 과거의 유물이 됐다고 했던 거 기억나?
Do you remember when they said prompt engineering was a thing of the past?
핵심 요약
최신 모델이 프롬프트 엔지니어링을 불필요하게 만들 것이라는 기대와 달리, Claude의 성능을 제대로 끌어내기 위해선 여전히 정교한 제어와 검증 과정이 필수적이라는 의견.
- 프롬프트 엔지니어링 — 모델의 게으름을 방지하고 일관된 결과를 얻기 위해 여전히 정교한 지시가 필요함.
- 프로세스 제어 — 단순히 질문하는 것을 넘어 단계별 요약이나 검증 단계를 강제하는 과정이 중요해짐.
- 모델 성능 저하 — 과거보다 모델이 지시를 덜 따르거나 비용 절감을 위해 지름길을 택하는 경향이 생김.
- CLAUDE.md 활용 — 에이전트 파일에 규칙을 명시해도 모델이 이를 무시하는 경우가 많아 실효성 논란이 있음.
얼마 전까지만 해도 최신 모델들이 프롬프트 엔지니어링을 거의 쓸모없게 만들 거라는 이야기가 많았어. 최적의 성능을 얻기 위해 복잡한 프롬프트를 짤 필요가 없다는 거지. 그냥 원하는 걸 말하면 모델이 작업을 충분히 이해하고 제대로 수행할 거라는 기대였어.
그런데 Claude를 쓰다 보면 오히려 정반대라는 느낌이 들어. 모델이 네가 요청한 것 중 가장 게으르고 기술적으로만 방어 가능한 결과물을 내놓지 못하게 하려면, 오히려 작업 주위에 단단한 울타리를 쳐야 할 때가 많아.
분명히 좋은 결과를 얻을 수는 있어. 하지만 모델이 철저하게 작업하도록 끊임없이 미리 상기시켜야 할 때가 많아. 그것도 처음에 한 번만 하는 게 아니야. 작업 내내 계속 상기시켜야 해.
그냥 읽으라고 시키고 정보가 머릿속에 남을 거라고 가정할 수 없어. 정보를 유지하고 활용하게 하려면, 진행하면서 각 파일이나 섹션을 요약하게 만들어야 해. 그렇지 않으면 앞부분만 대충 훑고는 다 이해했다고 판단해서, 반쯤 완성된 이해도를 바탕으로 구현을 시작해버리거든.
디렉토리 전체의 변경 작업도 마찬가지야. 그냥 '디렉토리 내 모든 파일에서 이 패턴을 바꿔줘'라고 말하고 실제로 모든 파일을 다 처리할 거라고 믿을 수 없어. '작업이 끝났다고 생각되면, grep으로 이전 패턴을 찾아봐. 만약 남아있는 게 있다면 아직 끝난 게 아니야'라고 명시적으로 말해야 해.
그게 바로 나한테는 프롬프트 엔지니어링으로 느껴져. 어쩌면 예전처럼 교묘한 문구 작성보다는 프로세스 제어, 검증 단계, 그리고 모델이 요령 피우지 못하게 강제하는 것에 더 가까울지도 모르지. 하지만 여전히 프롬프트 엔지니어링이야. 어떤 면에서는 예전보다 더 필요하게 느껴지기도 해.
