본문 바로가기

Coding210

Prompt Engineering 기초 prompt란?ChatGPT의 출력을 원한는 방향으로 유도하기 위한 입력 텍스트. prompt는 보통 질문 또는 지시 형태를 나타낸다. ▼ Role (역할)크게는 사용자를 뜻하는 User, ChatGPT를 뜻하는 Assistant 그리고 System이 존재한다. system은 사용자 prompt 이전에 입력하는 성능 개선 용도의 prompt이다. Response (or Output) : 사용자의 prompt에 대한 LLM의 출력값이다.  ▼ 원리 (ChatGPT가 말을 하는 방식)Next Token PredictionChatGPT같은 LLM또는 대규모 언어 모델들은 기본적으로 정해진 수의 단어들을 알고 있다. (예를 들어 메타의 라마2 7B는 32000개, 구글의 젬마 7B는 256000개를 알고 있다... 2024. 11. 14.
prompt engineering vs RAG vs Fine-tuning prompt engineering 모든 대규모 언어 모델과 상호 작용하는 가장 기본적인 방법. 마치 지시를 내리는 것과 같다. 모델에 어떤 종류의 정보를 제공하고 싶은지 알려주는 것이다. 가장 좋은 답변을 얻기 위해 올바른 질문을 하는 방법을 배우는 것과 비슷하다. 하지만 모델이 이미 학습을 통해 알고 있는 것만 제공할 수 있다는 한계가 있다. 장점은 매우 간단하다는 것. 하지만 모델의 원래 학습에 크게 의존하기 때문에 항상 필요한 최신 또는 가장 구체적인 정보를 제공하지 못할 수도 있다. 일반적인 주제를 다루거나 너무 많은 세부 사항을 다루지 않고도 빠른 답변이 필요할 때 가장 좋다.  ▼ 장점 사용 편의성 : 사용자 친화적이며 고급 기술 능력이 필요하지 않아 광범위한 대상에게 접근 가능하다비용 효율성.. 2024. 11. 13.
파이썬 코딩 컨벤션 파이썬 프로그래밍의 대표적인 코딩 컨벤션은 PEP8 (Python Enhancement Proposal 8)이다. PEP 8은 파이썬 코드의 스타일 가이드로, 코드의 일관성, 가독성, 유지보수성 등을 높이기 위해 권장되는 규칙들을 제시한다.PEP 8은 파이썬 커뮤니티에서 사실상 표준으로 자리 잡고 있으며, 대부분의 파이썬 프로젝트에서 이 규칙을 따른다.  ▼ 인덴트 (들여쓰기)스페이스 4칸 or 탭을 사용하여 들여쓰기를 한다. 일관성을 유지하는 것이 중요하다. 한 파일 내에서는 스페이스 또는 탭 둘 중 하나만을 사용해야 한다.   ▼ 줄 바꿈과 공백최대 79자로 한 줄을 제한하는 것이 좋다. 긴 문장을 여러 줄로 나누어야 할 때는, 각 줄을 4칸 들여쓰고 가독성이 좋도록 적절히 나눈다. some_func.. 2024. 11. 13.
OpenAI Playground OpenAI Playground 란?Playground는 OpenAI에서 제공하는 웹 기반의 실험 환경으로, GPT모델을 자유롭게 활용해보고 프롬프트 실험을 할 수 있는 플랫폼이다. 프롬프트를 입력해 보고, 응답을 실시간으로 확인할 수 있고, 다양한 파라미터 설정을 통해 모델의 동작을 제어할 수도 있다. 주로 프롬프트 엔지니어링 실습, AI 모델의 응답 패턴을 이해하는 데 유용하다.  ▼ 주요 목적프롬프트 테스트 : 입력 프롬프트에 따른 결과 확인모델 성능 평가 : 다양한 설정을 변경해가며 모델의 성능을 평가텍스트 생성 실험 : 실시간으로 텍스트를 생성하고 이를 통해 언어 모델의 동작 방식을 이해 ▼ 주요 활동텍스트 생성Playground에서는 사용자가 입력한 프롬프트를 바탕으로 GPT 모델이 답변을 생.. 2024. 11. 13.
RAG, Vector DB, LangChain RAG (Retrieval-Augmented Generation) 란?검색기반 생성 기법이다. LLM은 많은 데이터를 학습했음에도, 최신 정보나 특정 도메인 지식에 대한 한계를 가질 수 있다. 이를 보완하기 위해 RAG는 LLM이 직접 답을 생성하는 대신, 외부 데이터베이스나 문서에서 관련 정보를 검색한 후, 그 정보를 바탕으로 답변을 생성하는 방식이다.   ▼ 동작 원리질문 입력 사용자가 질문을 하면, RAG 시스템은 질문에 맞는 답변을 생성하기 전에 검색 단계를 거친다.문서 검색 (Retrieval)벡터DB나 기타 정보 저장소에서 질문과 관련된 문서를 검색한다. 이때 사용되는 검색 방법은 텍스트를 벡터화하여 의미적으로 유사한 문서를 찾는 것이다. 답변 생성 (Generation)검색된 문서를 바탕으로.. 2024. 11. 13.
LLM (Large Language Model) LLM 이란?대규모 텍스트 데이터를 학습하여 자연어를 이해하고 생성할 수 있는 AI모델이다. 기본적으로 자연어 처리(NLP)의 다양한 작업, 예를 들면 번역, 질문 응답, 텍스트 생성(소스코드 등) 등을 할 수 있다.    ▼ 주요 기능자연어 이해(NLU) : 질문이나 명령을 이해하고 적절히 응답하는 능력텍스트 생성 : 기존 데이터를 바탕으로 자연스러운 텍스트를 생성번역 및 요약 : 다른 언어로 번역하거나 긴 텍스트를 요약 질문 응답 시스템(Q&A) : 사용자의 질문에 정확하게 답변하는 기능  ▼ 동작 원리학습 (Training)LLM은 대규모 텍스트 데이터셋을 이용해 학습한다. 여기서 중요한 것은 '패턴 인식'이다. 수많은 텍스트에서 단어와 문장의 패턴을 찾아내어, 새로운 문장이나 답변을 생성할 때 그.. 2024. 11. 13.