업무 파일럿(업무 전문가)를 위한 프롬프트 엔지니어링: 실전 가이드 – 1. 프롬프트 엔지니어링 04 마크다운, 출력형식
출력 형식
한 업무의 결과가 다른 업무의 입력으로 사용되는 경우, 데이터 형식이나 구조에 대한 요구가 있을 수 있습니다. 결과가 생성형 AI에 의해 생성되는 경우 출력 형식을 지정하거나 예시로 작성할 수 있습니다.
- 이전 업무의 생성 결과를 다음 업무에서 소프트웨어 적으로 처리해야 할 경우
- JSON이나 XML과 같은 구조화된 데이터 형식이 적합합니다. 이러한 형식은 데이터의 구조를 명확하게 정의하고, 기계가 쉽게 파싱하고 처리할 수 있도록 설계되었습니다. 데이터의 일관성과 정확성을 유지하는 데 효과적입니다.
- 출력 형식에 대한 요구만 있는 경우, 원하는 형식을 지정해주면 됩니다.
- 다음 회사 직원 정보를 JSON과 XML 두 가지 형식으로 모두 출력해주세요:
– 직원명
– 부서
– 입사일
– 담당 프로젝트 목록
– 보유 기술
- 다음 회사 직원 정보를 JSON과 XML 두 가지 형식으로 모두 출력해주세요:
- 정보 속성에 대한 세부 요구사항이 있으면, 정보 속성에 대한 요구사항도 분명하게 작성합니다.
- 팀 프로젝트 정보를 다음 JSON 구조로 출력해주세요:
-
1234567891011{"projectName": "프로젝트명","duration": "기간","members": [{"name": "이름","role": "역할","tasks": ["작업1", "작업2"]}]}
- 학교 정보를 다음 XML 구조로 작성해주세요:
-
1234567<school><name>학교명</name><departments><department><name>학과명</name>...</school>
- 출력 형식에 대한 요구만 있는 경우, 원하는 형식을 지정해주면 됩니다.
- JSON이나 XML과 같은 구조화된 데이터 형식이 적합합니다. 이러한 형식은 데이터의 구조를 명확하게 정의하고, 기계가 쉽게 파싱하고 처리할 수 있도록 설계되었습니다. 데이터의 일관성과 정확성을 유지하는 데 효과적입니다.
-
-
- 예시로 작성
- 부산의 인구, 면적, 설립 연도를 JSON 형식으로 출력해주세요.
- 출력 형식 예시:
-
12345678```json{"city": "Seoul","population": 9700000,"area": 605.2,"founded": 1392}```
- 예시로 작성
-
- 이전 업무의 생성 결과를 다음 업무에서 사람이 읽고 이해해야 하는 경우(보고서, 문서 등)
- 가독성과 이해도를 높이는 데 중점을 두고, 필요한 경우 표나 그림과 같은 시각적 요소를 추가할 수 있습니다.
- 플레이스 홀더
- 데이터나 변수가 들어갈 자리를 표시하는 기호나 텍스트입니다.
- 지정된 형식에 따라 생성된 데이터 값으로 대체됩니다.
- 일반 텍스트와 명확히 구분되어야 하며, 어떤 값으로 대체될지 명확하게 나타내야 합니다.
- 구분자 사용
- 사용하는 시스템이나 프로그래밍 언어, 혹은 특정 애플리케이션에 따라 관습적인 표기법이 있을 수 있습니다.
- 대괄호
- 명확하게 구분되고 직관적이어서 가장 일반적으로 사용합니다.
- 중괄호, 이중 중괄호가 사용되기도 합니다.
- 대괄호
- 사용하는 시스템이나 프로그래밍 언어, 혹은 특정 애플리케이션에 따라 관습적인 표기법이 있을 수 있습니다.
- 플레이스 홀더가 무엇으로 대체되어야 하는 지를 설명해야 합니다.
- 예시
- [프롬프트 2의 출력(영어 번역)]
- 프롬프트 2의 출력을 영어 번역한 결과로 대체됩니다.
- [프롬프트 2의 출력(영어 번역)]
- 예시
- 구분자 사용
- 마크다운
- 주요 정보를 섹션으로 구분하기 좋습니다.
- # [제목]
## [부제목]
### [소제목] - – 항목1
– 항목2 - 1. 순서1
2. 순서2
- # [제목]
- 마크다운 사용법
- 주요 정보를 섹션으로 구분하기 좋습니다.
- 플레이스 홀더
- 구조와 데이터 형식을 지켜야할 때, 데이터 값이나 형식은 플레이스 홀더로 작성할 수 있습니다.
- 예시
- 제목: [제목]
주요 내용: [내용]
결론: [결론] - 제목: [입력]
작성자: [입력]
날짜: [YYYY-MM-DD]
카테고리: [선택사항: A/B/C]
내용: [입력]
- 제목: [제목]
- 예시
- 특정 조건에 따라 출력 형식이 달라지는 경우, 다음과 같이 조건문으로 작성합니다.
- IF [조건] THEN
[출력 형식 A]
ELSE
[출력 형식 B] - 예시
- IF <numeric_value> > 0 AND <numeric_value> < 100 THEN
“범위 내”
ELSE
“범위 밖”
- IF <numeric_value> > 0 AND <numeric_value> < 100 THEN
- IF [조건] THEN
- 표를 생성해야 하는 경우, 다음과 같이 열 이름과 데이터 값으로 행의 예시를 작성합니다.
- | 열1 | 열2 | 열3 |
|—–|—–|—–|
| 데이터1 | 데이터2 | 데이터3 |
- | 열1 | 열2 | 열3 |
- 공용화 된 포맷 지시어를 사용할 수 있습니다.
- 리스트 형식
<numbered_list>
: 번호 매긴 목록<bullet_points>
: 글머리 기호 목록<comma_separated_list>
: 쉼표로 구분된 목록
- 데이터 유형 지정
<numeric_value>
: 숫자 값<percentage>
: 퍼센트 형식<currency_value>
: 화폐 값<date_format>
: 날짜 형식 (YYYY-MM-DD)
- 텍스트 스타일
<uppercase>
: 대문자<lowercase>
: 소문자<title_case>
: 각 단어의 첫 글자 대문자<camel_case>
: 낙타 등 표기법
- 구체적인 출력 구조
<key_value_pairs>
: 키-값 쌍<table_format>
: 표 형식<markdown_table>
: 마크다운 표<code_block>
: 코드 블록
- 길이 및 상세도 지정
<short_description>
: 간단한 설명<detailed_explanation>
: 상세한 설명<max_words:20>
: 최대 단어 수<min_words:50>
: 최소 단어 수
- 감정 및 톤
<professional_tone>
<casual_tone>
<empathetic_response>
- 특정 도메인 형식
<scientific_notation>
<chemical_formula>
<programming_syntax>
- 예시
-
키는 <numeric_value>
형식을 사용하고, 시장 점유율은<percentage>
형식을 사용하고, 월 매출은<currency_value>
형식을 사용해서 표시해주세요. - 서울에 대해 다음 형식으로 정보를 제공하세요:
-
1234567{"name": <city_name>,"population": <numeric_value>,"founded": <year>,"key_attractions": <comma_separated_list>,"description": <short_description>}
-
- 리스트 형식
- 가독성과 이해도를 높이는 데 중점을 두고, 필요한 경우 표나 그림과 같은 시각적 요소를 추가할 수 있습니다.
- 여기서 이야기한 출력 형식은 관례화된 것으로, 최근 출시된 탑 클라스 생성형 AI 서비스들은 이를 지원합니다.
- 출력 형식을 지정할 때는 선택한 생성형 AI 서비스의 생성 결과를 보고 이를 지원하는지 확인해야 합니다.
마크다운으로 프롬프트 작성
- 프롬프트는 사람과 생성형 AI 모델을 모두 대상으로 하기 때문에 마크다운으로 작성하는 것을 권합니다.
- 마크다운은 섹션으로 작성 영역을 구분할 수 있기 때문에, 프롬프트 핵심 요소를 구조화하는데 효과적입니다.
- 마크다운은 생성형 AI 모델이 정보를 더 효율적으로 처리할 수 있게 해 줍니다.