728x90 반응형 전체 글100 [LG AI] 지도학습 - 1 Supervised Learning Overview 지도학습 : 문제-정답 쌍이 주어졌을 때, 어떤 문제를 풀도록 학습시키는 것 예시)- 10가지 카테고리의 이미지를 분류하도록 처리- 텍스트 문장이 긍정인지 부정인지- 문장이 완성되지 않았을 때, 다음에 올 단어를 맞추는 것- 한 언어에 대한 문장을 다른 언어로 번역하여 출력- 다음날이나 몇시간 뒤의 주식정보, 상승 혹은 하강 >> 문제와 정답 쌍으로 이루어진 데이터를 사용= x에 대한 y값이 pair형태로 정해짐 예시)- 이미지가 x로 입력데이터, 분류 클래스 카테고리가 y인 출력데이터가 됨- x는 텍스트 문장, y는 긍정(1) 혹은 부정(-1)- 앞 단어가 x 입력이라면, 그 다음에 올 단어를 y- x는 전 몇일간의 주가 정보, y는 다음날의 주가(.. 2024. 7. 24. [SeSac] LangChain 6 - RAG(Retrieval-Augmented Generation) !pip install -q pypdf!pip install -q langchain_community!pip install chromadbimport osos.environ['OPENAI_API_KEY'] = 'OPENAI_API_KEY'문서 로드from langchain_community.document_loaders import PyPDFLoaderpdf_filepath = 'disable.pdf'loader = PyPDFLoader(pdf_filepath)pages = loader.load()# document 객체의 개수len(pages) 텍스트 분리from langchain.text_splitter import RecursiveCharacterTextSplittertext_splitter = .. 2024. 7. 15. [SeSac] LangChain 5 - Output Parser CSV Parser : 모델의 출력 형태를 csv 형태로 변환한다.from langchain_core.output_parsers import CommaSeparatedListOutputParseroutput_parser = CommaSeparatedListOutputParser()format_instructions_text = output_parser.get_format_instructions()print(format_instructions_text)# Your response should be a list of comma separated values, eg: `foo, bar, baz`> 모델이 출력을 생성할 때 쉼표로 구분된 형식을 반환하라는 지침을 프롬프트에 추가한다.from langchain_c.. 2024. 7. 14. [SeSac] LangChain 4 - 모델 파라미터 주요 파라미터Temperature : 생성하는 텍스트의 다양성을 조정. 반복되는 생성과정에서 값이 작으면 일관된 출력을 하고, 값이 크면 다양한 출력을 한다. Max Tokens : 생성하는 최대 토큰 수. 생성할 텍스트의 길이를 제한한다.Top P(Probability) : 생성과정에서 특정 확률분포 내 상위 P% 토큰만을 고려 (temperature와 유사)Frequency Penalty : 빈도 패널티. 값이 클수록 이미 등장한 단어나 구절이 다시 등장할 확률을 감소시킴(temp와 유사)Presence Penalty : 존재 패널티. 텍스트 내에서 단어의 존재 유무에 따라 그 단어의 선택 확률을 조정(temp와 유사)Stop Sequences : 정지 시퀀스. 특정 단어나 구절이 등장할 경우, 생성.. 2024. 7. 14. [SeSac] LangChain 3 - LLM, ChatModel 모델 클래스 Langchain 모델 유형LLM : 단일요청에 대한 복잡한 출력을 생성하는데 적합하나의 텍스트 문자열을 입력으로 받아 텍스트 문자열로 반환한다. 일반적인 언어 이해 문제나 텍스트 생성 작업에 사용Chat Model : 사용자와의 상호작용을 통한 연속적인 대화 관리에 적합여러 메세지를 리스트로 입력받고 하나의 응답 메세지를 반환한다. 대화형 상황에 최적화(서로 주고 받는 형태)ChatModel은 대화의 맥락을 유지하면서, 적절한 응답을 생성하는데 중점을 둔다.> 두 모델은 서로 다른 특성과 용도를 가지고 있어, 목적에 맞추어 선택하여 사용해야 한다. LLM (Large Language Model) from langchain_openai import OpenAIllm = OpenAI()llm.invok.. 2024. 7. 14. [SeSac] LangChain 2 - 프롬프트 (Prompt) 프롬프트 (Prompt): 언어모델의 입력으로 사용되는, 질문이나 요청 형태의 지시문> 틀을 미리 잘 만들어놓으면, 재사용이 가능하고 수정해서 사용하기 편리하다. 프롬프트 템플릿 (Prompt Template) : 하나의 문장이나 간단한 명령을 입력하여 동일하게 하나의 문장 혹은 간단한 응답을 출력할 때 사용최종적으로 출력은 문자열 형태를 띈다. 파이썬 문자열 포맷팅을 사용하여 동적으로 특정한 위치에 입력값을 포함시킬 수 있다. from langchain_core.prompts import PromptTemplate# 'name'과 'age'라는 두 개의 변수를 사용하는 프롬프트 템플릿을 정의template_text = "안녕하세요, 제 이름은 {name}이고, 나이는 {age}살입니다."# Promp.. 2024. 7. 14. [SeSac] LangChain 1 - 기본 LLM 체인 및 멀티체인 기본체인 (Prompt + LLM) : 사용자의 입력(프롬프트)을 받아 LLM을 통해 적절한 응답이나 결과를 생성하는 구조> 프롬프트를 통한 입력된 지시문을 LLM에게 전달하고, LLM은 전달받은 프롬프트 내용에 맞추어 질문에 대한 답변을 만드는 구조 기본 체인의 구성 요소프롬프트(Prompt) : 사용자 또는 시스템에서 제공하는 입력. LLM에게 작업을 수행하도록 요청하는 지시문LLM(Large Language Model) : GPT나 Gemini등의 대규모 언어모델. 프롬프트를 바탕으로 적절한 응답을 생성 일반적인 작동 방식프롬프트 생성 : 원하는 명령이나 지시사항을 입력하거나, 시스템에게 역할을 부여하거나, 혹은 여러 조건들을 작성해 LLM에게 전달하기 위한 지시문.( 프롬프트를 그냥 gpt같은 생.. 2024. 7. 14. 이코테 2021 - 이진 탐색 순차 탐색 : 리스트 안에 있는 특정한 데이터를 찾기 위해 앞에서부터 데이터를 하나씩 확인하는 방법이진 탐색 : 정렬되어 있는 리스트에서 탐색 범위를 절반씩 좁혀가며 데이터를 탐색하는 방법 이진탐색 >> 정렬된 리스트에서 특정한 데이터를 빠르게 탐색할 수 있도록 하는 알고리즘>> 시작점과 끝점, 중간점을 명시해야 함 EX) 이미 정렬된 10개의 데이터 중에서 값이 4인 원소를 찾기> 중간점의 값이 두개가 될 경우, 소수점 이하를 제거(4.5 → 4)하여 중간점을 설정한다.> 이때, 중간점의 값(8)과 찾고자 하는 값(4)를 비교하여 중간점의 왼쪽 혹은 오른쪽의 값들만 탐색한다.>> 효율 증가 > 왼쪽의 값들을 기준으로 시작/끝 점을 재설정한다. 그러면 중간점도 재설정 되므로 중간점은 2 (1.5 .. 2024. 7. 12. 이코테 2021 - 정렬 정렬 (Sorting) : 데이터를 특정한 기준에 따라 순서대로 나열하는 것일반적으로 문제 상황에 따라서 적절한 정렬 알고리즘이 공식처럼 사용된다데이터의 개수가 적을 때데이터의 개수가 많지만, 데이터의 범위가 특정 범위로 한정되어 있을 때이미 데이터가 거의 정렬되어 있을 때 선택 정렬 : 처리되지 않은 데이터 중에서 가장 작은 데이터를 선택해 맨 앞에 있는 데이터와 바꾸는 것을 반복 EX) 0-9까지 10장의 숫자카드 순서대로 정렬하기 전체 데이터 중 가장 작은 '0'을 선택하여 맨 앞의 데이터 '7'과 자리를 바꾼다. '7'과 자리를 바꾼 '0'을 제외한 나머지 데이터 중에서, 가장 작은 '1'을 선택하여 맨 앞 데이터인 '5'와 자리를 바꾼다. 마찬가지로 이미 정렬이 끝난 '0'과 '1'을 제외한 나.. 2024. 7. 10. 이전 1 2 3 4 5 6 7 8 ··· 12 다음 728x90 반응형