본문으로 건너뛰기

구분자로 프롬프트를 구조화하는 방법

구분자로 프롬프트를 구조화하는 방법

구분자(Delimiters)는 데이터 항목을 분리 및 구조화는 문자 및 문자열(여러개의 문자)로, 프롬프트 내 정보를 명확하게 분리하고 구조화합니다.

자주 사용하는 구분자로는 ###, """, ---가 있으며, 이를 활용해 프롬프트 내 정보를 블록 단위로 명확히 분리합니다.

구분자를 활용해 지시문, 맥락, 입력 데이터 구분하기
###지시문###
아래 뉴스 기사를 한 문장으로 요약해 주세요.

###맥락###
요약된 문장은 검색 엔진 최적화(SEO)를 위한 메타 태그로 사용됩니다.

###입력 데이터###
생성형 인공지능(AI) 기술이 급속도로 발전하며
미디어, 엔터테인먼트, 교육 분야에서 혁신적인 변화를 이끌어내고 있다.
특히, 생성형 AI는 자연어 처리와 이미지 생성 분야에서..
(이하 생략)

위 프롬프트 예시는 ### 구분자를 활용해 지시문, 맥락, 입력 데이터를 블록 단위로 명확하게 구분합니다.

이와 같이 구조화된 프롬프트는 AI가 각 정보를 명확히 인식하고 처리할 수 있도록 돕습니다.


자주 활용되는 구분자

구분자는 프롬프트마다 다르게 사용될 수 있으며, 정해진 의미를 갖지는 않습니다.

하지만 프롬프트 엔지니어링에 일반적으로 사용되는 구분자와 그 역할은 다음과 같습니다.

  • ###: 프롬프트에서 큰 제목을 나타낼 때 사용됩니다. 프롬프트 정보 블록의 제목, 섹션의 시작을 표시할 때 주로 사용됩니다.

  • """: 긴 인용문이나 여러 줄의 특별한 주의를 요하는 정보를 묶어서 표시할 때 사용됩니다.

  • ---: 프롬프트에서 다른 부분을 시각적으로 구분하고자 할 때 사용됩니다. 이는 각 섹션을 명확히 나누어 정보를 더 쉽게 이해할 수 있게 합니다.

프롬프트 예시
### 문단 1

"""
여기에는 문단 1의 내용이 들어갑니다.
"""

---

### 문단 2

"""
다음은 문단 2의 내용입니다. AI는 이 부분을 독립적인 단위로 인식합니다.
"""

위 프롬프트는 ###로 문단의 제목을 구분하고, """로 각 문단의 내용을 구분하며, ---로 각 섹션을 시각적으로 구분합니다.

위 3가지 구분자 외에도 프롬프트의 목적에 따라 다양한 구분자를 사용할 수 있습니다.

다른 구분자 활용 예시
아래 영어 문장을 교정하고, 어떤 점이 교정되었는지 2가지 이상 설명해 주세요.

*** 교정할 문장: I am student who live in Korea. Who is you?

교정 결과: <교정된 문장>

1. <교정 내용 1>
2. <교정 내용 2>
...이하 생략

위 프롬프트는 *** 구분자를 활용해 교정할 문장을 구분하고, < > 구분자를 활용해 교정된 문장과 교정 내용을 구분합니다.

이렇게 구분자를 활용한 프롬프트는 AI가 프롬프트의 정보를 명확히 인식하고 처리할 수 있도록 돕습니다.


실습

구분자를 활용한 구조화된 프롬프트와, 구분자를 활용하지 않은 프롬프트의 응답을 비교해 보세요.

구분자를 활용한 구체적 프롬프트 예시
### 요청
방콕을 하루 동안 여행할 계획입니다.
제한된 시간을 고려해서 하루 만에 둘러볼 관광지를 3곳 추천해 주세요.

---

### 응답 형식
[1] <추천 관광지 1> : <선정 이유>

[2] <추천 관광지 2> : <선정 이유>

[3] <추천 관광지 3> : <선정 이유>
구분자를 미사용한 모호한 프롬프트 예시
방콕에서 볼만한 관광지를 추천해 주세요.