Share
Sign In
프롬프트 & 프롬프트 엔지니어링 자료
Teddy's Note: Additional Material
S
Sujin_Kang
👍
1
안녕하세요. 영상에서 말씀드린 자료들을 이 곳에 정리했습니다.
👉🏻 Livestreaming 사용 PPT 자료
👉🏻 영상에 소개한 Pythonic 프롬프팅에 관한 논문 두 개입니다.
함께, 제 Prompt도 예시로 넣어 두었습니다.
Pythonic Code Prompting
We have found that using code prompts instead of natural language prompts
for LLMs
reduces ambiguity and misinterpretation, which significantly reduces LLM hallucination
during plan generation and refinement.
Pythonic Prompting Example :
Tittle: Identifying Significant Context Changes in Dialogue Turns
아직 멀긴 했지만, 오는 9월 컨퍼런스예요. 봉은사 절이 아닌, 봉은사역 근처 스타트업 얼라이언스 & Space 에서 발표합니다. 주제는 "생성형 AI를 100% 활용하는 방법: 프롬프트 엔지니어링" 입니다. 실제 프로젝트 사례를 소개하는 시간이에요. 관심있으신 분들은 오셔서 이야기 나누어요.
📌 Conference Info :
스타트업 얼라이언스 트렌드 클럽 AI 시리즈 : 2024년 9월 21일
생성형 AI를 100%활용하는 방법: 프롬프트 엔지니어링
장소: 스타트업 얼라이언스 & Space
Google Form Questions ← 못드린 답변 드립니다
1.
프롬프트엔지니어닝 만으로 할루시네이션과 편향성을 잡을수 있을까요?
→ 프롬프트 엔지니어링 만으로 할루시네이션과 편향성을 100% 잡을 수는 없지만, 어느 정도 완화하고 보완하기 위한 방법들은 존재합니다.
2. 프롬프트엔지니어링이 보통 글쓰기 영역에 효과적인 것 같은데 데이터분석에 있어서도 프롬프트 엔지니어링이 효과적일 수 있을까요?
데이터 분석에 있어서도 하고자 하는 Task에 따라, 프롬프트 엔지니어링을 적용할 수 있습니다. Task를 알면, 더 유용한 정보를 드릴 수 있을 것 같아요.
3. "ChatGPT-4o를 활용해 보안 도메인의 회사 제품 매뉴얼을 학습(RAG, 프롬프트 엔지니어링은 포함, 파인튜닝은 일단 배제)시켜 크게 다음 두가지 목표를 이루려고 합니다.

A. 자연어로 지시하면 제품의 기능을 이용하여 원하는 작업 수행
B. 제품 관련된 질문에 대한 답변 얻기
관련해서 질문은 다음과 같습니다.
(A항목 관련) 자연어로 작업을 지시하면 여러단계로 제품의 REST API를 활용하여 고객에게 필요하다면 추가 정보를 수집하여 원하는 동작을 할수 있도록 하기를 원합니다. 그래서 먼저 단위작업에 대해 프롬프트 엔지니어링을 수행해 단위 프롬프트를 구성하고 이 단위작업들을 엮어서 복합 프롬프트에서 단위 프롬프트들을 호출하는 식의 nested 구성을 했으면 하는데 일리가 있을까요?
→ 네, 이것은 Phase 나 Step을 구상하는 방법이 제일 중요할 것 같습니다. 단위 작업들을 체이닝으로 할 수도 있고, 하나의 프롬프트 안에 단계를 나누어 할 수 있습니다.
(B항목 관련) 사람이 매뉴얼을 읽어도 쉽지 않은 작업을 문의했을 때 논리적으로 매뉴얼이나 프롬프트를 잘 조합해서 원하는 답변을 주는게 가능할까요?
→ 매뉴얼의 문서 구조가 어떤지, 어떤 형태로 되어 있는지를 알면 답변을 드릴 수 있을 것 같습니다! 사람이 읽어도 쉽지 않다는건, 문서가 복잡하다는 것일까요? 정보가 많다는 것일까요?
(B항목 관련) 차라리 모른다고 하거나 아니면 적어도 매뉴얼에 근거해서 그럴싸한 답변을 내놓는 것까지는 괜찮은데, 존재하지 않는 링크를 만들어 내거나 얼토당토 않는 대답을 하는 환각 현상을 배제할수 있을까요?"
→ 존재하지 않는 링크 (Reference 제거), 환각 현상(추가 Prompting)으로 어느정도 방지는 할 수 있을 것 같은데요. 이렇게 텍스트로만은 정확한 답을 드리기가 어려울 것 같아요. ^^
5.
요즘은 LLM이 프롬프트 생성도 잘하는 것 같아요. 전문가와 비교한다면 어떻다고 생각하시나요?
생성은 잘 하지만, 품질에서는 저성능이라고 생각해요. 상용화가 목표일때 저는, LLM이 생성한 것은 프롬프트 밑작업 정도로만 이용하고 있습니다.

6. "LLM 이 발전할수록 이전에 쓰여졌던 프롬프트 기술들이 불필요해질 떄가 많습니다.
할루시네이션도 점점 적어지고있는거죠.. 그럼에도 불구하고 변하지 않을 최고의 기법은 무엇일까요? (제로샷/ COT제외)"
발전하더라도 여전히 프롬프트로 새로운 기능을 개발하고, 프롬프트 엔지니어링으로 이전의 비효율을 개선하는 것은 어렵습니다. 그래서 자동화를 하게하는 Automatic Framework 기법은 무용이 되는 속도가 빠른 것 같습니다.

7. 프롬프트로 이런 것 까지 해봤다. 3가지만 부탁드립니다. (웃픈 에피소드)
(1) 프롬프트로 StopWords 로직을 만들어, 불순한? 인풋을 걸러봤었었다 → 잘 안됩니다 ㅎㅎ
(2) 프롬프트로 메타프롬프트 레포지토리를 만들어 프롬프트 자동 Generator 를 만들어봤다 → 굉장했어요.
(3) 프롬프트 90% + Low Code로 46개 학습용 툴/챗봇을 만들어봤다 → 역시 굉장했어요 ㅎ
8. 프롬프트 엔지니어는 문과인가요? 이과인가요?
문/이과 모두 프롬프트 엔지니어입니다.

9.프롬프트 테스트는 어떻게 하시나요?
→ 두 가지 방식으로 합니다. 정성/정량의 방식으로요. 정성적인 방식은 프롬프트 테스트 환경판(영상에서 보여드린)에서 하고 있고, 정량적인 방법은 제가 만든 메트릭스를 가지고 LLM에 의해서 검증하도록 하고 있습니다. 이 테스트와 &평가는 한 번 정리를 하여 전달드리면 좋겠네요.
10.
전문지식은 없고요. 앞으로도 이 프롬프트가 얼마나 유효할까요? 현재의 방향성은 마치 엑셀 문법을 입력하는 느낌이 있는 거 같아요
프롬프트로 할 수 있는 것들이 무궁 무진하다고 생각합니다!
11.
프롬프트를 디자인할때 어떤 식의 접근 방식으로 디자인을 하시나요? 그리고 예전에 어떤 유튜브를 통해 봤을때 xml 형식으로 한다던가 뭔가 프롬프트에 적합한 형식이 있으시다면 좋은 팁 부탁드립니다.
저는 Scaffolded Prompting 접근법으로 기초부터 쌓아올리는 식으로 프롬프트를 작성합니다. 그리고, 구조화를 하는데요. 영상에 나오는 구조화 (Code/ Markdown의 여러 기호)를 사용하고 있습니다.
12.
한글로 프롬프팅을 하다가 논리적인 관계가되는 key word만 영어로 쓰고있습니다. 이에 대한 효과가 입증된게 있을까요?
오! 네, 이걸 바로 Code-Switching 이라 하는데요. 관련해서 제가 쓴 글을 한 번 읽어봐주세요.
13.
one-shot으로 예시를 들때 예시에 의해 편향되는 현상에서 재밌는걸 발견했는데 등을 붙이자(영어로는 etc)를 그렇게 쓰면 일반화를 하는 것을 확인한적이 있습니다. 편향되지 않도록 일반화하는 다른 기법이 있을까요?
좋은 팁이네요. etc. 저는 그래서 one-shot은 전혀 쓰지 않습니다! one-shot을 언제 쓰시나요? 보통!
14.
저의경우는 메인을 미드저니를 활용해 이미지 제작을 하는 상황인데요. 오늘 내용의 주된 예시가 GPT나 Llama 등을 중점하셨는데 이미지의 프롬프트를 뽑기위해서 고민을 하다보면 그 끝은 결국 프로젝트 기획을 이해해야 그 목표에 가장 근접하게 뽑는 것 같습니다. 이에 대해 어떻게 생각하시는지 고견을 어쭙습니다.(기능적으로 묻고 싶은데 생각하다보니 결국 인문학적 요소가 배제가 안되는것 같아 혼란스럽네요 하하..)
듣고싶습니다!
너무 중요한 포인트네요. 그래서 프롬프트 기획단계를 첫 시작으로 하는데요, 이 단계에서 목표 설정과 구현 아이디어를 정하고, 프롬프트를 제작합니다. 귀납/연역의 방식으로 기획을 하는데요. 저는 주로, 경험적 증거 데이터를 보고 기획을 하는 편이에요 ^^
15.
라이브방송 중 채팅에 나온 질문인데요.
기초적인 질문인데 system role에 prompt를 추가하는것과 user role에 적용했을때 성능의 차이가 있나요?"
네, 분명한 차이가 있습니다. 근데 user role 에 user: system prompt 이렇게 넣으시나요? 넣는 방법을 봐야 정확하게 말씀드릴 수 있을 것 같아요.
Subscribe to 'sujin-prompt-engineer'
안녕하세요,
슬래시페이지 구독을 하시면, 이따금씩 발행하는 프롬프트와 프롬프트 엔지니어링에 관한 글을 이메일로 받아보실 수 있어요. 구독하시겠어요? 😊
Subscribe
👍
1
Sujin_Kang
[북콘서트] 프롬프트 엔지니어의 업무일지 자료
안녕하세요. 지난 10월 25일 금요일 <프롬프트 엔지니어의 업무일지> 북콘서트에 와주셔서 감사합니다. 북콘서트에서 사용한 자료를 업로드드립니다. 함께, 슬리도에 올린 질문들은 천천히 모두 답변하여 이 곳에 올려두겠습니다. 슬리도 링크: https://app.sli.do/event/wLqwJgvrwZdatxsZM8t8jc 프롬프트 엔지니어의 일과, 프롬프트 엔지니어링 계속 관심갖고 지켜봐주세요. 감사합니다 😊 강수진 드림
👍
2
Sujin_Kang
[테헤란로클럽 세미나 자료] 100% 프롬프트 엔지니어링을 활용하는 방법
안녕하세요. 강수진입니다. 링크드인 피드글에 많은 관심 주셔서 감사드립니다. 업로드 한 자료는 지난 9월 26일, 스타트업 얼라이언스 테헤란로 클럽에서 진행했던 세미나 자료입니다. 국내에 프롬프트와 프롬프트 엔지니어링 관련 정보 교류가 활성화 되면 좋겠어서, 좋은 취지로 공유드립니다. ❌ 무단 복제 및 타인과의 공유를 삼가주세요 ❌ !슬라이드 내용 중, 학회 발표와 출판 자료에 해당하는 부분은 부분 삭제 했습니다.
👍👏
7
Sujin_Kang
프롬프트 엔지니어링 오프라인 수업 : Self-Study 자료
안녕하세요! 개강 전 공부하면 좋을 학습 자료에 대한 질문을 종종 주시는데요. 자료와 함께, 수업에 대한 안내도 잠깐 드리겠습니다. FAQs ✅ 5주차 수업은 기초부터 심화까지 "프롬프트 엔지니어링"을 다루는 수업이에요. 개강 전 특별히 공부를 하고 오지 않으셔도 큰 어려움 없이 따라 오실 수 있습니다. ✅ 수업은 코드가 없는 프롬프팅과 프롬프트 엔지니어링을 위주로 해요. 정성적 영역의 프롬프팅과 엔지니어링 방식에 중점을 둔 수업입니다. 프롬프트 엔지니어링의 여러 기법을 살펴보고 실습하며, 수업 이후에 각 도메인에서 응용할 수 있는 내용으로 구성했습니다. 따라서 파이썬 코드 작성법이나 LLM 파이프라이닝은 하지 않아요. → 코드 사용시 제가 미리 만든 템플릿을 사용합니다. ✅ 수업에서 다룰 언어 모델은 주로 상용화 모델입니다. 저는 "상용화 모델" 서비스 구축을 위한 프롬프트 엔지니어이기 때문에, 젬마, 미스트랄, llama 계열등의 모델은 크게 다루지 않습니다. 자체 모델을 구축을 위한 프롬프트 엔지니어링은 수업의 중점이 아님을 염두해주세요. 그래도, 선수지식이나 사전 공부를 원하시는 분들은 다음 세 가지를 추천 드립니다. (1)번을 제외하고 (2)/(3)번은 영어 자료인데요. 수업에서 (2)번을 2주 차에 다룰테니 너무 어렵다고 느끼지 않으셔도 될 것 같습니다 : ) (1) 수강 신청 후 제공되는 5시간 분량 VOD