반응형
250x250
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 |
Tags
- join
- 미니배치
- PYTHON
- 시험데이터
- sqlite3
- max
- 최댓값
- 오차제곱합
- PyQt5
- Next.js
- 신경망
- sigmoid
- Pointwise Convolution
- 밑바닥부터 시작하는 딥러닝
- COUNT
- 합계
- total
- Depthwise Convolution
- 렐루함수
- next.js 튜토리얼
- 교차엔트로피오차
- sum
- AVG
- 평균
- 제약조건
- 수치미분
- MIN
- 학습 구현
- 데이터베이스
- Depthwise Separagle Convolution
Archives
- Today
- Total
우잉's Development
[LLM 기본] 프롬프트 엔지니어링 기본 본문
728x90
반응형
자연어 처리 태스크 TOP 10
- Language Translation : 한 언어에서 다른 언어로 텍스트를 번역하는 작업
- Style Translation : 텍스트의 스타일을 다른 스타일로 변경하는 작업
- Editing and Rewriting : 텍스트의 내용을 명확하게 하거나 의도를 더 잘 전달하도록 문장 또는 문서를 수정하거나 다시 작성하는 작업
- Summarization : 긴 텍스트를 핵심내용을 포함하는 짧은 텍스트로 축소하는 작업
- Named Entity Recognition : 텍스트에서 특정 정보(사람, 장소, 조직, 날짜 등)를 식별하는 작업
- Sentiment Recognition : 긍정적, 부정적, 중립적 등 텍스트의 다양한 감정상태를 판단하는 작업
- Document classification : 텍스트 문서를 사전 정의된 카테고리 또는 클래스로 분류하는 작업
- Topic Modeling : 문서 집합에서 주제를 발견하고 각 문서에 주제를 할당하는 작업
- Similarity Evaluation : 두 개의 텍스트 사이의 유사성을 측정하는 작업
- Question Answering : 주어진 텍스트에서 질문에 대한 정보를 찾아 답변하는 작업
액팅 & 포맷팅
- Expert Prompting
- LLM에게 전문가로서 응답하도록 요청하는 방법
- 배경 지식을 암시적으로 이해하고 답변함으로써 성능이 크게 향상됨
- LLM에게 프롬프트/질문과 관련된 특정분야의 전문가를 찾아달라고 요청하고, 제시받은 전문가인 것처럼 질문에 응답하도록 하여 도메인이 정해지지 않은 서비스에도 제너럴하게 활용 할 수 있음.
-논란의 여지가 있었으나 MIT수학 및 EECS커리큘럼 탐색에 매우 뛰어난 성능을 얻었다고 함. - Formating
- 출력 포맷 지정 : 기본적으로 사용하게 되는 Chat 모델의 경우 기본적으로 장황하게 설명하므로, 결과값으로 자동화하는 등의 목적으로 활용하려면 출력 포맷을 정확하게 지정해 줄 필요가 있음.
- 일반 리스트 : 목록 앞에 '-'를 표시함. 순서가 있는 리스트는 앞에 번호를 붙여줌.
- key-value Pair : key와 value형식으로 표현 ex) 이름 : John / 나이 :30
- 테이블
- 마크다운 : 복잡한 HTML태그 대신 텍스트를 간단한 형식으로 구성해서, 이를쉽게 HTML로 변환할 수 있도록 해주는 텍스트 작성 규칙 -> 매우 간편
- YAML : 데이터 직렬화 언어로, 설정 파일, 데이터 교환, 로딩 데이터등에 사용
기계가 읽을 수 있도록 작성된 형식 중에서는 인간이 읽기 쉬운 형식중 하나여서 간단한 데이터를 표현하는
데 자수 사용됨.
- JSON : 구조화된 데이터를 표현하는데 가장 많이 사용되는 데이터 포맷으로, XML보다 형식이 간단하고 JavaScript
에서 기본적으로 사용할 수 있어, 프로그래밍 언어 혹은 시스템 간에 데이터를 교환하는 데에 준 표준처럼 사
용되고 있음.
프롬프트 체이닝
: 일련의 프롬프트와 그에 다른 응답을 순서대로 연결하여 하나의 지속적인 대화나 여러 하위 태스크로 이루어진 복잡한 태스크를 수행하는 기법
- Self-Consistency, Selection-Inference, Least-to-Most, ReAct등 고수준의 프롬프트 엔지니어링은 거의 모두 프롬프트 체이닝을 사용
1. 단순 프롬프트 연결 (생각하고, 결론내기)
2. 이전 결과에 따른 분기 처리
3. JSON포맷을 이용한 결과 내 유사 체이닝 효과주기
좋은 프롬프트를 만들려면
- 지시문을 명확하게 만든다.
- 적절한 예시를 제공한다.
- 모델에게 생각할 시간을 준다
- 작업을 하위 작업으로 분해한다.
- 적절한 컨텍스트를 제공한다.
- 프롬프트 엔지니어링 기법이 작동하지 않을 수 있다.
- 프롬프트를 구조화하여 작성한다.
성공하지 않아도 아래와 같은 방법을 사용
- 지시문을 반복적으로 사용해본다.
- 지시문이나 컨텍스트 위치를 바꿔본다.
- 지시문의 단어를 다른 단어로 바꿔본다.
반복적으로 개선한느 전략이 필요하고 광범위한 시행착오가 있더라도 포기하지 않는 것이 중요하다.
728x90
반응형
'Deep learning > LLM' 카테고리의 다른 글
[LLM 기본] 프롬프트 요구사항 명세 (0) | 2023.09.06 |
---|---|
[LLM 기본] 모델 선택 기준 & Function Calling (0) | 2023.09.06 |
[LLM 기본] 생성 조건 (0) | 2023.09.05 |
[LLM 기초] 프롬프트 보안 (0) | 2023.08.31 |
[LLM 기초] 프롬프트 엔지니어링 기초2 (0) | 2023.08.31 |
Comments