많은 콘텐츠를 포함하는 프롬프트를 작성할 때, Claude는 어떤 텍스트 조각들이 서로 연관되어 있는지 또는 서로 다른 섹션이 무엇을 나타내는지 이해하는 데 어려움을 겪을 수 있습니다. XML 태그는 특히 대량의 데이터를 보간할 때 프롬프트에 구조와 명확성을 더하는 간단한 방법을 제공합니다.
구조가 중요한 이유
20페이지 분량의 판매 기록을 분석해야 하는 프롬프트를 생각해 보세요. 명확한 경계가 없으면 Claude는 여러분의 지시사항과 분석하고자 하는 실제 데이터를 구분하는 데 어려움을 겪을 수 있습니다.

위의 예시는 불명확한 경계가 Claude가 여러분의 의도를 파악하는 것을 얼마나 어렵게 만들 수 있는지 보여줍니다. 판매 기록을 <sales_records>와 </sales_records> 같은 XML 태그로 감싸면, Claude가 프롬프트의 구조를 이해하는 데 도움이 되는 명확한 구분자를 만들 수 있습니다.

실용적인 예시: 코드와 문서
XML 태그가 왜 중요한지 보여주는 더 극적인 예시가 있습니다. Claude에게 제공된 문서를 사용해 코드를 디버깅하도록 요청할 때, 모든 것을 섞어버리면 혼란이 생깁니다:

"좋지 않은" 버전은 무엇이 코드이고 무엇이 문서인지 거의 구분할 수 없게 만듭니다. "더 나은" 버전은 <my_code>와 <docs> 태그를 사용해 명확한 경계를 만듭니다.
사용자 지정 태그 이름
공식 XML 태그를 사용할 필요는 없습니다. 여러분의 콘텐츠에 맞는 설명적인 이름을 만드세요:
<sales_records>는<data>보다 더 좋습니다<athlete_information>은 사용자 세부 정보를 명확하게 식별합니다<my_code>와<docs>는 서로 다른 유형의 콘텐츠를 구분합니다
태그 이름이 더 구체적이고 설명적일수록, Claude는 각 섹션의 목적을 더 잘 이해할 수 있습니다.
XML 태그를 사용해야 할 때
XML 태그는 다음과 같은 경우에 가장 유용합니다:
- 대량의 컨텍스트나 데이터를 포함할 때
- 서로 다른 유형의 콘텐츠(코드, 문서, 데이터)를 혼합할 때
- 콘텐츠 경계를 매우 명확하게 하고 싶을 때
- 여러 변수를 보간하는 복잡한 프롬프트로 작업할 때
짧은 콘텐츠에서도 XML 태그는 프롬프트 구조를 Claude에게 더 명확하게 만들어주는 구분자 역할을 할 수 있습니다.
실제 적용
실제로는 다음과 같이 프롬프트를 구조화할 수 있습니다:
<athlete_information>
- Height: 6'2"
- Weight: 180 lbs
- Goal: Build muscle
- Dietary restrictions: Vegetarian
</athlete_information>
Generate a meal plan based on the athlete information above.이렇게 하면 키, 체중, 목표, 제한사항이 모두 식단 계획을 생성할 때 함께 고려되어야 하는 관련 운동선수 데이터라는 것이 매우 명확해집니다.
간단한 프롬프트에서는 극적인 개선을 보지 못할 수도 있지만, 프롬프트가 더 복잡해지고 더 많은 양의 다양한 콘텐츠를 포함하게 될수록 XML 태그는 점점 더 가치 있어집니다.