본문 바로가기
728x90
반응형

embedding3

[LangChain] Retrieval, RAG (document에서 검색하기) 저번 포스팅에서 기본적인 LangChain 동작 방식과 여러 옵션들을 알아보았다. 이번에는 Retrieval을 통해서 원하는 document에 질의를 한 후 원하는 답변을 얻어보려고 한다. RAG(Retrieval Augmented Generation) RAG는 검색 증강 생성으로 모델이 답변을 생성하는데 도움을 줄 수 있다. LLM 기초 사용법을 알아보면서 prompt를 생성할 때 배경 context라던가 역할을 부여해주면서 더욱 퀄리티 있는 답변을 얻을 수 있었다. RAG 역시 이와 비슷한 역할을 하는데 모델의 답변을 강화하기 위해서 외부에 있는 데이터에서 검색을 하는 것이다. 추가적인 정보를 제공해주기 때문에 정확도 높은 답변을 얻을 수 있는 것이다. 다음은 검색 과정을 나타낸 그림이다. Docum.. 2023. 10. 23.
[LangChain] Few Shot Prompting, Dynamic Few Shot Prompting https://growth-coder.tistory.com/254 이전 포스팅에서 prompt에 대해서 알아보았다. 이번 포스팅에서는 Few shot prompting에 대해서 알아보자. Prompt Engineering prompt engineering 이란 LLM을 애플리케이션에 효율적으로 사용할 수 있도록 prompt를 최적화하는 기술이다. prompt engineering 기술을 활용한다면 모델에게 구체적인 작업을 지시할 수도 있고 질문, 답변 형식도 원하는대로 바꿀 수가 있다. Zero-Shot Prompting과 Few-Shot Prompting zero shot prompting이란 예시를 주는 것처럼 학습을 하지 않아도 예측을 진행하는 prompting이다. chat gpt에게 다음 문장을.. 2023. 10. 21.
[PyTorch] 긍정 리뷰, 부정 리뷰 분류하기 (1) - 개념 리뷰의 내용이 긍정적인 내용인지 부정적인 내용인지 분류를 해보려고 한다. 본격적인 구현에 앞서 이번 포스팅에서는 분류에 필요한 기본적인 용어들과 개념들에 대해서 알아보려고 한다. 토큰화 (Tokenization) 토큰화는 주어진 텍스트를 토큰 단위로 나누는 작업을 뜻한다. 토큰화를 진행할 때 문자, 단어, 형태소와 같은 기준으로 나눌 수가 있고 spaCy, NLTK, mecab 등등을 사용할 수 있다. NLTK를 설치해서 토큰화를 한 후 결과를 출력해보자. import nltk from nltk.tokenize import word_tokenize nltk.download('punkt') text = 'A man is crossing the road' print(word_tokenize(text)) 출력.. 2023. 9. 15.
728x90
반응형