Sign in to save your progressYou can keep reading without an account, but completed lessons won't be saved.
Sign in

많은 콘텐츠를 포함하는 프롬프트를 작성할 때, Claude는 어떤 텍스트 조각들이 서로 연관되어 있는지 또는 서로 다른 섹션이 무엇을 나타내는지 이해하는 데 어려움을 겪을 수 있습니다. XML 태그는 프롬프트에 구조와 명확성을 더하는 간단한 방법을 제공하며, 특히 대량의 데이터를 삽입할 때 유용합니다.

구조가 중요한 이유

20페이지 분량의 판매 기록을 분석해야 하는 프롬프트를 생각해 보세요. 명확한 경계가 없으면 Claude는 여러분의 지시사항과 분석하고자 하는 실제 데이터를 구분하는 데 어려움을 겪을 수 있습니다.

위의 예시는 불명확한 경계가 Claude가 여러분의 의도를 파악하는 것을 얼마나 어렵게 만들 수 있는지 보여줍니다. 판매 기록을 XML 태그로 감싸면 프롬프트의 서로 다른 부분 사이에 명확한 구분을 만들 수 있습니다.

명확성을 위한 XML 태그 사용

XML 태그는 Claude가 프롬프트의 구조를 이해하는 데 도움이 되는 구분자 역할을 합니다. 포함된 콘텐츠를 설명하는 사용자 지정 태그 이름을 만들 수 있습니다:

<sales_records>
{sales_records}
</sales_records>

태그 이름은 공식 XML 사양을 따를 필요가 없습니다. sales_records, data, records와 같이 설명적인 이름을 자유롭게 만들 수 있습니다. 일반적으로 더 구체적인 이름이 일반적인 이름보다 더 잘 작동합니다.

실용적인 예시

XML 태그가 왜 차이를 만드는지 보여주는 명확한 예시가 있습니다. "좋지 않은" 버전에서는 어떤 콘텐츠가 버그가 있는 코드이고 어떤 것이 문서인지 불명확합니다:

개선된 버전은 XML 태그를 사용하여 서로 다른 유형의 콘텐츠를 명확하게 구분합니다:

<my_code>
from datavortex import Pipeline, DataSource

def process_data(input_file, output_file):
    pipeline = Pipeline()
    source = DataSource.from_csv(input_file)
</my_code>

<docs>
# Creating a data source from data vortex
csv_source = DataSource.from_csv("data.csv")
</docs>

이제 Claude는 디버깅이 필요한 코드와 디버깅 과정을 안내해야 하는 문서를 쉽게 구분할 수 있습니다.

프롬프트에 구조 적용하기

삽입된 콘텐츠가 방대하지 않더라도 XML 태그는 여전히 명확성을 향상시킬 수 있습니다. 예를 들어, 식단 계획을 생성할 때 운동선수 정보를 함께 그룹화할 수 있습니다:

<athlete_information>
- Height: {prompt_inputs["height"]}
- Weight: {prompt_inputs["weight"]}
- Goal: {prompt_inputs["goal"]}
- Dietary restrictions: {prompt_inputs["restrictions"]}
</athlete_information>

이렇게 하면 이 블록이 식단 계획 생성에 반영되어야 할 운동선수에 대한 외부 입력을 포함하고 있다는 것이 Claude에게 매우 명확해집니다.

XML 태그를 사용해야 할 때

XML 태그는 다음과 같은 경우에 가장 유용합니다:

  • 대량의 컨텍스트나 데이터를 포함하는 경우
  • 프롬프트에 여러 가지 서로 다른 유형의 콘텐츠가 포함된 경우
  • 서로 다른 섹션 간의 경계를 명확하게 드러내고 싶은 경우
  • 지시사항과 혼동될 수 있는 콘텐츠를 삽입하는 경우

간단한 프롬프트에서는 극적인 개선을 보지 못할 수도 있지만, XML 태그는 Claude가 여러분의 의도를 더 잘 이해하도록 돕는 구분자 역할을 하여 더 일관되고 정확한 응답으로 이어집니다.