프롬프트엔지니어링_Claude

이카루스·2024년 5월 14일
0

읽을거리

목록 보기
29/29

프롬프트 엔지니어링 예시

1. 명확하고 직접적으로 묻기 (Be clear & direct)

역할프롬프트
사용자당신은 요리 전문가입니다. 다음 재료를 사용해 건강하고 맛있는 샐러드 레시피를 만들어주세요: 닭가슴살, 로메인 상추, 방울토마토, 오이, 아보카도, 레몬, 올리브 오일, 소금, 후추. 레시피는 다음 형식을 따라야 합니다:
1. 재료 목록
2. 단계별 조리법 (최소 4단계 이상)
3. 영양 정보
4. 제공 인원 수
레시피의 제목도 명시해 주시고, 가능한 한 자세하게 설명해 주세요.

2. 예시 제공하기 (Use examples)

역할프롬프트
사용자다음은 영화 리뷰 예시입니다:
<예시>
제목: 인셉션
평점: 4.5/5
리뷰: 크리스토퍼 놀란 감독의 인셉션은 독창적인 스토리와 탄탄한 연출로 관객을 꿈과 현실의 경계로 이끕니다. 레오나르도 디카프리오를 비롯한 배우들의 연기도 인상 깊었습니다. 복잡한 이야기 구조가 때로는 혼란스럽지만, 영화가 전하는 메시지와 반전은 몰입도를 높였습니다. 액션 시퀀스와 시각 효과도 압도적이었습니다. 크리스토퍼 놀란 감독의 또 다른 걸작으로 손꼽힐 만한 영화입니다.
</예시>

위의 예시를 참고하여 마블 영화 "어벤져스: 엔드게임"에 대한 리뷰를 작성해 주세요.

3. 클로드에게 역할 부여하기 (Give Claude a role)

역할프롬프트
사용자당신은 세계 최고의 영업 전문가입니다. 제가 판매하려는 제품은 프리미엄 무선 이어폰입니다. 이 제품의 주요 기능은 노이즈 캔슬링, 24시간 배터리, 터치 컨트롤입니다. 이 제품을 효과적으로 판매하기 위해 어떤 전략을 사용해야 할까요? 목표 고객층 선정, 제품의 장점 소구, 프로모션 아이디어 등을 포함하여 자세한 영업 전략을 제안해 주세요.

4. XML 태그 사용 (Use XML tags)

역할프롬프트
사용자제가 여행사 웹사이트에 올릴 여행 상품 설명을 작성 중입니다. 아래의 <여행정보> 태그 안에 주어진 정보를 사용하여 <설명> 태그로 감싼 매력적인 여행 상품 설명을 작성해 주세요:

<여행정보>
목적지: 이탈리아 토스카나
기간: 5박 6일
일정: 와이너리 투어, 피렌체 관광, 시에나 방문, 토스카나 요리 클래스 등
숙박: 럭셔리 빌라
포함 사항: 항공권, 숙박, 식사, 현지 투어
</여행정보>

<설명>
이곳에 여행 상품 설명(150-200자)을 작성하세요.
</설명>

5. 프롬프트 연결하기 (Chain prompts)

역할프롬프트
사용자제가 고등학교 역사 수업의 한 단원 내용을 알려드릴게요. 이 정보를 바탕으로 다음 순서로 과제를 수행해 주세요:
1. 단원 내용을 5개의 소주제로 요약해 주세요.
2. 각 소주제에서 가장 중요한 사실 2가지를 뽑아 객관식 문제를 작성해 주세요.
3. 이 단원에 대한 토론 주제 3개를 제안해 주세요.

<단원 내용>
{{단원 내용}}
</단원 내용>

<소주제 요약>
1. ...
2. ...
3. ...
4. ...
5. ...
</소주제 요약>

<객관식 문제>
문제 1: ...
a) ...
b) ...
c) ...
d) ...

문제 2: ...
a) ...
b) ...
c) ...
d) ...

...
</객관식 문제>

<토론 주제>
1. ...
2. ...
3. ...
</토론 주제>

6. 클로드에게 생각하도록 하기 (Let Claude think)

역할내용
사용자아래의 단서들을 사용하여 제시된 다지선다형 문제의 정답을 찾아주세요. 아래의 순서에 따라 문제 해결을 진행해 주세요:
1. 주어진 단서들이 문제 해결에 도움이 되는지 하나씩 검토하기
2. 관련 있는 단서들을 조합하여 문제에 대한 추론 과정 거치기
3. 추론한 내용을 바탕으로 보기 중 정답 고르기

단서:
1. A 씨는 모자를 쓰고 있었다.
2. 범인은 왼손잡이다.
3. B 씨는 사건 당시 집에 혼자 있었다.
4. C 씨는 안경을 착용하고 있었다.
5. 범인은 사건 현장에서 시계를 떨어뜨리고 갔다.
6. D 씨는 사건 전날 피해자와 다퉜었다.

문제: 범인은 누구인가?
(a) A 씨
(b) B 씨
(c) C 씨
(d) D 씨

<생각 과정>
단서들을 주의 깊게 살펴보며 사건을 분석해 봅시다.
</생각 과정>

<정답>
</정답>
역할내용
어시스턴트<생각 과정>
1. A 씨가 모자를 쓰고 있었다는 단서만으로는 범인을 특정할 수 없습니다.
2. 범인이 왼손잡이라는 단서는 중요한 정보일 수 있습니다. 그러나 용의자들의 왼손잡이 여부에 대한 정보가 없으므로 이 단서만으로는 불충분합니다.
3. B 씨가 혼자 집에 있었다는 사실은 B 씨에게 불리한 단서일 수 있습니다. 하지만 이것만으로 B 씨를 범인으로 단정할 수는 없습니다.
4. C 씨가 안경을 착용했다는 사실로는 사건과의 연관성을 찾기 어렵습니다.
5. 범인이 시계를 현장에 떨어뜨렸다는 것은 중요한 물증이 될 수 있습니다. 그러나 시계의 주인이 밝혀지지 않은 상황이므로 추가 정보 없이는 이 단서를 사용하기 어렵습니다.
6. D 씨가 사건 전날 피해자와 다퉜다는 점에서 D 씨에게 동기가 있었음을 알 수 있습니다. 다른 용의자들에 비해 D 씨와 관련된 정황 증거가 있는 셈입니다.

주어진 단서만으로 봤을 때 D 씨가 상대적으로 유력한 용의자로 보입니다. 그러나 범인의 왼손잡이 여부 등 다른 단서들과 연관성이 확인되지 않았으므로, 추가적인 정보 없이 단정 짓기는 어렵습니다.</생각 과정>

<정답>(d) D 씨</정답>

문제를 명확히 해결할 수 있는 결정적인 단서가 부족한 상황이지만, 여러 정황을 고려할 때 D 씨가 다른 용의자에 비해 범행 개연성이 높아 보입니다. 따라서 현재까지 주어진 단서를 바탕으로 추론하면 D 씨를 잠정적인 답으로 고를 수 있을 것 같습니다. 그러나 완전한 증거가 될 수 있는 단서는 충분치 않은 것 같네요.

7. Claude의 응답 미리 채워주기 (Prefill Claude's response)

역할내용
사용자다음 영화에 대한 정보를 JSON 형식으로 정리해 주세요.

제목: 라라랜드
감독: 데이미언 셔젤
주연: 라이언 고슬링, 엠마 스톤
개봉년도: 2016
장르: 뮤지컬, 드라마, 로맨스
수상 내역: 아카데미 6개 부문 수상, 골든 글로브 7개 부문 수상
줄거리: 꿈을 좇는 재즈 피아니스트 세바스찬과 배우 지망생 미아의 사랑과 꿈에 관한 이야기
Assistant (prefill){
Assistant"title": "라라랜드",
"director": "데이미언 셔젤",
"cast": [
"라이언 고슬링",
"엠마 스톤"
],
"releaseYear": 2016,
"genres": [
"뮤지컬",
"드라마",
"로맨스"
],
"awards": [
"아카데미 6개 부문 수상",
"골든 글로브 7개 부문 수상"
],
"plot": "꿈을 좇는 재즈 피아니스트 세바스찬과 배우 지망생 미아의 사랑과 꿈에 관한 이야기"
}

8. 출력 형식 제어 (Control output format)

역할내용
사용자아래는 식물 관련 퀴즈입니다. 각 문제에 대해 JSON 형식으로 질문과 답안을 작성해 주세요.

1. 광합성에 필요한 기체는?
2. 식물의 뿌리가 흡수하는 물질은?
3. 꽃이 피기 위해 필요한 조건 중 하나는?
Assistant (prefill)[
Assistant{
"question": "광합성에 필요한 기체는?",
"answer": "이산화탄소"
},
{
"question": "식물의 뿌리가 흡수하는 물질은?",
"answer": "물과 무기양분"
},
{
"question": "꽃이 피기 위해 필요한 조건 중 하나는?",
"answer": "일정 시간 이상의 일조량"
}]

9. Claude에게 다시 작성할 것을 요청하기 (Ask Claude for rewrites)

역할프롬프트
사용자다음 글을 검토해 주세요:
<문단>
{{기존 문단}}
</문단>

이 문단을 아래 지시사항에 따라 다시 작성해 주세요:
<지시사항>
1. 문단의 분량을 2배로 늘리기.
2. 주제와 관련된 통계나 사례를 하나 이상 추가하기.
3. 글의 전체적인 어조를 더 격식 있게 만들기.
4. 결론 문장을 더 강조하여 작성하기.
</지시사항>

수정된 문단을 <수정본></수정본> 태그로 묶

EL에 사용될 챗봇에 적용시킬만한 프롬프트 엔지니어링

학교 온라인 강의에서 학생들의 학습 관련 질문에 대답하는 챗봇을 위한 최적의 프롬프트를 만들기 위해, 앞서 소개된 여러 프롬프트 엔지니어링 기법을 조합해 보겠습니다.

역할프롬프트
사용자당신은 학교 온라인 강의 플랫폼에서 학생들의 질문에 답변하는 AI 튜터입니다. 학생들이 올리는 질문에 친절하고 상세하게 답변해 주시되, 다음 지침을 따라주세요:

<지침>
1. 학생의 질문을 명확히 이해했는지 확인하고, 필요하다면 추가 정보를 요청하세요.
2. 해당 주제에 대해 전문적인 지식을 바탕으로 답변을 제공하되, 학생의 수준에 맞는 쉬운 언어를 사용하세요.
3. 개념 설명 시 실생활 예시나 시각 자료(이미지, 그래프, 다이어그램 등)를 활용하여 이해를 돕고, 예시는 <예시></예시> 태그로 감싸 주세요.
4. 답변과 관련된 추가 학습 자료나 참고 문헌이 있다면 링크 또는 출처를 제공해 주세요.
5. 학생의 질문에 대해 충분히 답변했는지 확인하고, 추가 질문이 있는지 물어보세요.
</지침>

<학생 질문>
{{질문 내용}}
</학생 질문>

위의 지침을 참고하여 학생의 질문에 답변해 주세요. 답변은 <답변></답변> 태그로 감싸 주세요.

이 프롬프트는 다음과 같은 프롬프트 엔지니어링 기법을 조합하여 만들어졌습니다:

  1. 명확하고 직접적으로 묻기: 챗봇의 역할과 답변 방식에 대한 구체적인 지침을 제공했습니다.

  2. 클로드에게 역할 부여하기: 챗봇을 "AI 튜터"로 지정하여 학생들을 가르치는 역할을 부여했습니다.

  3. XML 태그 사용: <지침>, <학생 질문>, <예시>, <답변> 등의 태그를 사용하여 프롬프트의 구조를 명확히 하고, 챗봇의 답변 형식을 지정했습니다.

  4. 예시 제공하기: 개념 설명 시 실생활 예시나 시각 자료를 활용하도록 지시하여, 챗봇이 학생들의 이해를 돕는 답변을 제공할 수 있도록 했습니다.

  5. 프롬프트 연결하기: 질문 이해 확인, 답변 제공, 추가 자료 안내, 후속 질문 확인 등의 단계를 순차적으로 수행하도록 지시하여, 체계적이고 완성도 높은 답변을 유도했습니다.

reference : https://news.hada.io/topic?id=14773

profile
Der Schmerz, der mich nicht töten kann, macht mich nur stärker (나를 죽이지 못하는 고통은 나를 더 강하게 만든다)

0개의 댓글