본문 바로가기

Coding210

개인 과제 해설 chunkingchunking은 긴 문서를 더 작고 관리하기 쉬운 부분들로 나누는 과정vectorDB에 chunk단위로 적재하게 된다장점 검색 정확도 향상 : 관련된 정보만 정확하게 검색 가능컨텍스트 제한 : LLM이 처리할 수 있는 컨텍스트 길이 내에서 효율적으로 정보 처리유연한 검색 : 필요한 부분만 선택적으로 검색 가능고려사항청크 크기 : 너무 작으면 문맥이 끊기고, 너무 크면 관련 정보 찾기 어려움중복 : 일부 중복을 허용하여 문맥 유지 필요의미 단위 : 가능한 의미가 완견된 단위로 분할CharacterTextSplitter구분자(seperator)를 기준으로 split하여 chcunk를 나누는 방법separator : 텍스트를 분할할때 사용할 구분자. 기본값은 "\n\n"chunk_size : .. 2024. 11. 20.
베이직반 수업 11-18 코드카타 문제 풀이  1. 홀짝에 따라 다른 값 반환하기 ▼ 문제 : 양의 정수 n이 매개변수로 주어질 때, n이 홀수라면 n 이하의 홀수인 모든 양의 정수의 합을 return하고 n이 짝수라면 n 이하의 짝수인 모든 양의 정수의 제곱의 합을 return 하는 solution 함수를 작성해 주세요.  ▼ 풀이# 풀이 1def solution(n): answer = 0 if (n%2==1) : # n이 홀수라면 for i in range(n, 0, -2) : # ex) 7 -> 5 -> 3 -> 1 answer += i else: # n이 짝수라면 for i in range(n, 0, -2) : # ex ) 10 -> 8 -> ... -> 4.. 2024. 11. 19.
Prompt Engineering 잘 알려진 기법들 ▼ 기법들대표적으로는 Few Shot 그리고 Chain of Thought 이렇게 2가지 기법들이 존재함그 외에도 많이 있는데, 대부분이 Chain of Thought를 기반으로 발전한 기법들LLM처럼 특정 Prompt 방법론이 다른 방법론보다 무조건 더 우위에 있고 그런 경향은 없다.(GPT-4가 GPT3.5 대비 모든 지표에서 더 좋음(물론 비용, 속도 제외), 특정 Prompt 기법 A가 보편적으로 기법 B보다 좋은 케이스는 거의 존재하지 않음.따라서 각 Prompt Engineeringg 기법의 원리를 잘 이해하고 유즈케이스를 잘 판단하는게 매우 중요함. ▼ 주요 기법들 1. Few-Shot참고 할 수 있는 정답 사례들을 Prompt에 추가하여 성능을 높이는 방법이다. ▶ 의미 : 5-shot의 .. 2024. 11. 18.
Prompt Engineering 평가 기준 설정 평가 기준이란? LLM이 어떠한 태스크를 어느 정도의 품질인지 정량적으로 또는 정성적으로 확인 할 수 있는 객관적인 지표  ▼필요한 이유사람마다 기준이 다를 수 있고 기준이 명확하지 않을 수 있다. 또한 실제로 많은 데이터 테스팅 시 아닐 수도 있다.   ▼평가 지표MMLU (Massive Multitask Language Understanding) 여러 분야를 테스트하는 객관식 시험MMLU (5 shot)의 경우 5개의 질문/정답 쌍이 Prompt로 주어졌다는 뜻이다.ARC (Abstraction and Reasoning Corpus) 2차원 pixels grid를 주고 특정 문제 해결  ex: 패턴 주고 일부 비워두고 어떤 색깔로 칠할지 맞추는 문제HellaSwag문장들 주고 이어지는 마지막 문장들로.. 2024. 11. 17.
Prompt Development Cycle Prompt Development Cycle이란?Prompt Engineering 프로세스를 테스트 기반 방법론으로 체계화하여 최상의 성능을 달성하는 방법론  ▼ Prompt Development Cycle 6단계 명확한 평가 기준 설정평가를 진행 할 테스트 케이스 선정 (엣지 케이스 포함 ex: 입력 텍스트가 너무 길거나, 특정 정보가 빠져있거나 등등)Baseline Prompt 선정 (Simple) -> 고도화 과정 후에 비교를 위한 대조군 설정(반복) 테스트 케이스에 대해 평가 진행(반복) Prompt 수정Prompt 완성 -> Baseline 대비 어떤 지표에서 얼마나 개선되었는지 ▼  명확한 평가 기준 설정태스크 정의 요약, Q&A, 코드 생성, 글쓰기 등등. 각 태스크 별로 사용되는 평가 기준.. 2024. 11. 16.
Prompt 실습 다양한 파라미터 적용해보기!response_format모델이 출력해야 하는 형식을 지정하는 객체이다. GPT-4o, GPT-4o-mini, GPT-3.5-turbo-1106 모델에서 호환된다. { "type": "json_object" }를 사용하여 모델이 생성하는 메시지가 유효한 JSON인지 확인할 수 있다. from openai import OpenAIclient = OpenAI()completion = client.chat.completions.create( model="gpt-3.5-turbo-1106", response_format={ "type": "json_object"}, messages=[ {"role": "system", "content": "You are .. 2024. 11. 15.