개발자 콘솔에서 더 나은 프롬프트 생성하기

Claude는 이제 프로덕션 수준의 프롬프트 템플릿을 생성하여 개발자가 효과적인 프롬프트를 더 빠르게 만들 수 있도록 돕습니다.

  • 카테고리: 제품 발표
  • 제품: Claude 개발자 플랫폼
  • 게시일: 2024년 5월 20일
  • 읽기 시간: 약 5분

이제 Anthropic 콘솔에서 프로덕션 수준의 프롬프트 템플릿을 생성할 수 있습니다. 달성하고자 하는 바를 설명하면, Claude는 생각의 사슬 추론(chain-of-thought reasoning)과 같은 프롬프트 엔지니어링 기법을 사용하여 효과적이고 정확하며 신뢰할 수 있는 프롬프트를 생성합니다.

이 기능은 프롬프트 엔지니어링을 처음 접하는 사용자를 돕고, 숙련된 프롬프트 엔지니어의 시간을 절약하도록 설계되었습니다. 수행하려는 작업과 원하는 출력 형식에 대한 자세한 정보를 프롬프트 생성기에 제공하면 최상의 결과를 얻을 수 있습니다.

생성된 프롬프트가 항상 완벽한 결과를 내는 것은 아니지만, 프롬프트 엔지니어링 초보자가 직접 작성한 프롬프트보다는 성능이 뛰어난 경우가 많습니다. 또한 생성된 프롬프트 템플릿은 편집이 가능하므로, 최적의 성능을 위해 빠르게 수정할 수 있습니다.

콘솔에서 프롬프팅 도움받기: 콘텐츠 조정

프롬프트 작성 모범 사례

이 새로운 기능으로 생성된 프롬프트 템플릿은 당사의 프롬프트 엔지니어링 모범 사례 중 다수를 활용합니다. 그러한 관행 중 하나는 역할 설정으로, Claude가 선택한 작업의 전문가로서의 특성을 갖도록 장려하는 것입니다. 콘텐츠 조정 예시에서 역할 설정은 다음과 같습니다:

당신은 콘텐츠 조정자로서 제공된 콘텐츠 조정 정책에 따라 채팅 기록을 승인 또는 거부로 분류하는 역할을 맡게 됩니다.

또 다른 관행은 생각의 사슬 추론으로, Claude가 답변하기 전에 생각을 정리할 시간과 공간을 주는 것입니다. 이를 통해 복잡한 질문에 대해 더 철저하고 논리적인 답변이 가능해집니다. 고객의 이전 거래 내역을 기반으로 제품을 추천하는 프롬프트를 생성하도록 요청했을 때, 이는 다음과 같이 구현됩니다:

<scratchpad> 안에서, 이 고객의 거래 내역을 바탕으로 제안할 수 있는 3가지 제품 추천을 브레인스토밍하세요. 각 잠재적 추천에 대해, 왜 이것이 이 고객에게 적합하다고 생각하는지 설명하는 간단한 근거를 제공하세요.

또한, 템플릿은 종종 사용자 지정 데이터를 삽입할 수 있는 입력 필드인 "변수(variables)"를 XML 태그 사이에 배치합니다. 이는 명확한 구조를 제공하여 프롬프트의 다른 부분을 명확히 구분하는 또 다른 핵심 모범 사례를 따르는 것입니다. 코드를 Python으로 번역하는 프롬프트를 요청했을 때, 더 길고 모호한 {{CODE}} 변수는 XML 태그로 표시되지만, 단순한 {{LANGUAGE}} 변수는 인라인으로 배치되는 것을 볼 수 있습니다.

당신의 과제는 다른 프로그래밍 언어로 된 코드 조각을 Python으로 번역하는 것입니다. 

번역할 코드는 다음과 같습니다:

<code>
{{CODE}}
</code>

이 코드는 {{LANGUAGE}}로 작성되었습니다.

경우에 따라 Claude가 자신이 원하는 답변 유형에 대한 명확한 방향을 제시하기 위해 예시 입력 및 출력을 작성하는 것을 볼 수 있습니다. 이러한 예시를 편집하여 원하는 출력 형식에 맞출 수 있습니다.

이면의 작동 원리

프롬프트 생성기는 그 자체로 이미 언급된 많은 기법을 사용하는 긴 프롬프트를 기반으로 합니다.

  • Claude에게 작업 설명에서 프롬프트 템플릿으로 변환하는 방법을 보여주기 위해 수많은 작업 설명 및 프롬프트 템플릿 예시가 포함되어 있습니다.
  • Claude가 템플릿을 작성하기 전에 생성할 템플릿의 구조를 계획하도록 장려하여, Claude가 생각을 정리할 시간을 제공합니다.
  • 가독성을 높이기 위해 각 섹션의 시작과 끝을 표시하는 XML 태그로 구성된 강력한 "뼈대(spine)"를 가지고 있습니다.

Colab 노트북에서 전체 프롬프트를 확인할 수 있습니다.

평가 도구로서의 프롬프트 템플릿

프롬프트 생성기에서 얻게 될 템플릿의 변수는 앞서 언급한 콘텐츠 조정 예시와 같이 핸들바(handlebars) 표기법으로 되어 있습니다:

Unknown block type "codeBlock", specify a component for it in the `components.types` option

이 예시에서는 콘텐츠 정책과 다양한 채팅 기록을 업로드하여 Claude가 어떻게 행동하는지 확인할 수 있습니다. 이 과정을 통해 애플리케이션이 다양한 상황에서 적절하게 응답하는지 확인할 수 있습니다.

콘솔에서 프롬프팅 도움받기: 이메일 우선순위 분류

고객 스포트라이트: ZoomInfo

Go-to-market 플랫폼인 ZoomInfo는 Claude를 사용하여 실행 가능한 제안을 하고 고객에게 가치를 제공합니다. 이들은 프롬프트 생성을 사용하여 RAG 애플리케이션의 MVP를 구축하는 데 소요되는 시간을 크게 단축하면서도 출력 품질을 향상시켰습니다.

ZoomInfo의 수석 데이터 과학자인 Spencer Fox는 다음과 같이 말했습니다.

Anthropic의 새로운 프롬프트 생성기 기능을 통해 프로덕션 수준의 결과물에 훨씬 더 빨리 도달할 수 있었습니다. 이 기능은 제가 성능을 높이기 위해 사용하지 않았던 기법들을 강조해 주었고, 앱을 튜닝하는 데 드는 시간을 상당히 줄여주었습니다. 우리는 며칠 만에 새로운 RAG 애플리케이션을 구축하고 MVP에 도달했으며, 프롬프트를 개선하는 데 걸리는 시간을 80% 줄였습니다.

시작하기

Claude와 함께 프로덕션 수준의 프롬프트 구축을 시작하려면 Anthropic API를 방문하세요.