Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 순환신경망
- 컴퓨터구조
- 데이터베이스
- 데이터분석
- 개발일기
- 컴퓨터비전
- 딥러닝
- 파이썬
- 자바스크립트
- 머신러닝
- 자바스크립트심화
- JSP/Servlet
- 자바 실습
- 디버깅
- c언어
- 중학수학
- 혼공머신
- ChatGPT
- rnn
- SQL
- 상속
- 정보처리기사필기
- html/css
- 자바
- CSS
- JSP
- JDBC
- 중학1-1
- 정보처리기사실기
- 연습문제
Archives
- Today
- Total
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
애플리케이션 개발을 위한 프롬프트 엔지니어링 - 테스트 문제 풀기 본문
3주차까지 공부를 모두 마쳤으니 이제 테스트 문제를 풀려고 한다. 문제를 다 풀어도 어차피 0점으로 나올 것 같지만 나를 위해서 공부하는 거니 채점이 안되어도 괜찮다.
테스트 문제 풀기
1번 문제
한 명이 아니라 여러 명이 담당하게 된다.
- AI 서비스 제작 과정은 매우 복잡하고 다양한 기술 스택이 필요하기 때문에, 일반적으로 한 명의 엔지니어가 모든 파이프라인을 담당할 수는 없다.
- 데이터 수집 및 처리: 데이터 엔지니어
- 모델 설계 및 학습: 머신러닝/딥러닝 엔지니어
- 서비스 배포 및 운영: DevOps 엔지니어
- UI/UX 구현: 프론트엔드 및 백엔드 개발자
- 따라서 AI 서비스를 제작하려면 여러 전문가의 협력이 필요하지, 한 명의 엔지니어가 전체 파이프라인을 담당하는 것은 비현실적이다.
문제 2번
2. 프롬프트를 통한 모델 추론을 ML에서는 "Out-Context Learning"이라고 부른다.
- "Out-Context Learning"이라는 용어는 일반적으로 사용되지 않는다. 대신 "In-Context Learning"이 올바른 용어로, 프롬프트 내에 예시나 정보를 제공해 모델이 학습 없이도 상황에 맞는 답을 생성하는 방식을 말한다.
3. 첫 시도에 가장 완벽한 프롬프트를 작성하는 것이 LLM의 성능을 높일 수 있는 유일한 방법이다.
- 프롬프트는 반복적으로 수정하고 개선해야 더 나은 결과를 얻을 수 있음
- "첫 시도에 완벽한 프롬프트 작성"은 현실적이지 않으며, 프롬프트 엔지니어링 과정에서 지속적인 피드백과 테스트가 필수적임
문제 3번
OpenAI의 ChatCompletion.create 메서드는 대화의 흐름을 정의하기 위해 messages라는 매개변수를 요구하며, 이 messages는 각 메시지를 다음과 같은 구조로 작성해야 한다.
{
"role": "system" or "user" or "assistant",
"content": "메시지 내용"
}
1. role
- role은 메시지의 역할을 나타내며, 다음 세 가지 값 중 하나를 가질 수 있다.
- "system" : 모델의 행동이나 성격을 설정
- "user" : 사용자가 입력한 메시지
- "assistant" : 모델의 응답 메시지
2. content
- content는 실제 메시지 내용을 담고 있다.
- "role" : "system"일 때는 모델의 행동을 정의하는 설명을 넣음
- "role" : "user"일 때는 사용자가 입력한 질문이나 요청을 넣음
문제 4번
1. 합류 시네이션은 정확한 프롬프트 작성으로 완벽하게 방지할 수 있다. (부적절)
- 합류 시네이션(Hallucination)은 생성 AI가 사실과 다르거나 잘못된 정보를 사실처럼 생성하는 현상을 말한다.
- 이는 프롬프트를 정교하게 작성해도 완전히 방지할 수는 없다.
- 합류 시네이션은 모델의 설계와 학습 데이터 자체의 한계에서 발생하기 때문에, "완벽하게 방지"한다는 표현은 부적절함
2. 프롬프트 인젝션이란 언어 모델이 사실과 다른 내용을 마치 사실처럼 이야기하는 현상이다. (부적절)
- 프롬프트 인젝션(Prompt Injection)은 악의적인 입력을 통해 AI 모델이 의도하지 않은 응답을 생성하도록 유도하는 공격 기법을 말한다.
- 이는 합류 시네이션(Hallucination)과는 완전히 다른 개념이므로, 프롬프트 인젝션에 대한 설명으로 적합하지 않음
3. 프롬프트 인젝션을 고려하여 앱 출시 전에 내부에서 실제로 공격을 진행해본다. (적절)
- 프롬프트 인젝션 공격에 대비하기 위해 앱 출시 전에 내부적으로 모의 공격을 진행해보는 것은 적절한 방법이다.
- 이를 통해 보안성을 강화할 수 있음
4. 두 분야 모두 학계에서 연구 중인 분야로, 예방하기 위한 다양한 시도들이 이어지고 있다. (적절)
- 합류 시네이션과 프롬프트 인젝션은 모두 활발히 연구되고 있는 문제로, 이를 완화하거나 예방하려는 다양한 시도가 학계 및 업계에서 진행되고 있다.
문제 5번
각 프롬프트 줄의 의미
- You are a helpful AI assistant, responding to user requests in a polite yet attentive manner.
- 톤앤매너: AI가 어떤 방식으로 응답해야 하는지에 대한 행동 지침을 나타내는 문장이다.
- 예를 들어, "polite yet attentive manner"는 친절하고 주의 깊은 응답 스타일을 지시하고 있다.
- The user will request advice for fashion coordination.
- 목적 및 예상 인풋: 사용자가 어떤 요청을 할 것인지(패션 코디에 대한 조언 요청)가 명확히 정의되어 있다.
- 이는 AI가 응답을 생성할 때 참조할 수 있는 "문맥"이다.
- Make sure your response is relevant to the context, specific enough to be helpful, and at some point, creative.
- 원하는 답변 형태 (기준): 응답의 구체성과 창의성을 요구하며, AI가 준수해야 할 출력 기준을 설명하고 있다.
학습을 마치고
문제를 모두 맞힌 것 같다. 오늘 반나절만에 이 과목 공부를 모두 마치고 테스트 문제까지 다 풀 수 있었다. 정말 뿌듯하고 기쁘다. 사실 오늘 3시 반부터 학습을 시작할때 과연 오늘 하루만에 다 할 수 있을까 의문이었는데 정말 이처럼 달성하다니너무나도 감사하고 놀라웠다.
내가 마음먹고 하면 못할 게 없다는 걸 오늘도 느꼈다.
'인공지능 > 프롬프트 엔지니어링 & 생성형 AI' 카테고리의 다른 글
프롬프트 엔지니어링을 통한 옷 추천 앱 완성 4 - 옷 추천 앱 완성하기 (0) | 2024.12.22 |
---|---|
프롬프트 엔지니어링을 통한 옷 추천 앱 완성 3 - 할루시네이션, 프롬프트 인젝션 (0) | 2024.12.22 |
프롬프트 엔지니어링을 통한 옷 추천 앱 완성 2 - 프롬프트 평가 및 프롬프트 개선하기 (0) | 2024.12.22 |
프롬프트 엔지니어링을 통한 옷 추천 앱 완성 1 - 프롬프트 작성 (0) | 2024.12.22 |
상황에 따른 옷 색상 및 조합 추천 앱 4 - 상황에 따른 옷 색상 및 조합 추천 앱 기본 구조 작성 (1) | 2024.12.22 |