1. 진행 순서- PDF를 참고해서 답변하는 chatbot을 만들고 싶은데, 답별할 때 해당 정보가 있는 page 번호를 알려줬으면 했다.- 원래 페이지 번호를 정상적으로 가져오는 경우도 있지만, 나의 경우에는 에러가 나서 따로 페이지번호를 추가해줬다.PDF 파일 로드 > 페이지 번호 추가(메타데이터) > 텍스트 분할 (문장) > 임베딩 > 벡터 데이터베이스 저장/로드 > 검색 쿼리 및 결과 출력 > 테스트 2. pdf 파일 로드와 페이지 번호 추가# 1. PDF 로드loader = PyPDFLoader("2021_Guidelines_Beer.pdf")documents = loader.load()# 2. 각 페이지에 페이지 번호 추가for i, doc in enumerate(documents): d..
1. RAG란?- Retrieval-Augmented Generation의 약자로, 텍스트 생성 모델과 정보 검색 시스템을 결합한 AI 기술- 정보 검색(Retrieval)과 생성( Generation)의 단계로 나뉜다.- 데이터베이스 사용 외에도 외부 api를 활용해 "검색"한 결과를 LLM에 전달하고 답을 "생성"하면 RAG라고 할 수 있다. 2. RAG 구현시 사용한 라이브러리# 파일 읽어오기from langchain.document_loaders import TextLoader # 텍스트 파일from PyPDF2 import PdfReader # PDF 파일# 문서를 청크로 분할from langchain.text_splitter import RecursiveCharacterTextSplitte..
1. RAG란?- Retrieval-Augmented Cegeration1) 정보 검색(Retrieval): LLM이 텍스트를 생성할 때 관련 정보를 찾아 보고2) 텍스트 생성(Generation) 그 정보를 활용하여 새로운 텍스트를 만드는 기술 2. 정보 검색1) 질문/키워드 입력(쿼리)2) 해당 쿼리와 관련된 정보를 DB나 인터넷에서 찾음3) 유사도 검색: 검색 엔진이 쿼리와 DB에 있는 문서들 사이의 유사도를 계산- 키워드 검색: 사용자가 입력한 단어나 구를 DB나 인터넷에서 직접 찾는 방식- 시맨틱 검색: 단어의 의미와 문맥을 이해하여 보다 관련성 높은 결과를 제공하는 기술 4) 랭킹처리: 검색 결과를 가장 관련이 높다고 판단되는 문서부터 순서대로 나열- 유사도 계산: 문서나 단어 사이의 관련성이..
1. 언어모델(Large Model)이란?1) 확률/통계적 방법 (n-gram)- 예시: 나는 오늘 점심에 뒤에 "피자를 먹었다" 가 나왔다는 것 => 과거에 "점심에" 뒤에 "피자"가 많이 나왔기 때문- 1-gram(유니그램): 전체 문장을 한 단어씩 나누는 것 => "The / cat / sat / on / the / mat"- 2-gram(바이그램): 전체 문장을 두 단어씩 나누는 것 => "The cat / cat sat / sat on / on the / the mat"- 3-gram(트라이그램): 전체 문장을 세 단어씩 나누는 것 =>"The cat sat / cat sat on / sat on the / on the mat"- 한계: 가능한 모든 n-gram을 DB에 저장하고 있어야 하고, ..
- Total
- Today
- Yesterday
- 다이어트
- 기초
- 30분
- 빅데이터 분석기사
- 실기
- C언어
- 줄넘기
- 미라클모닝
- llm
- 갓생
- 뉴스
- 프로그래머스
- 스크랩
- Python
- 경제
- ChatGPT
- 오블완
- 루틴
- 아침운동
- 운동
- 오픽
- Ai
- 티스토리챌린지
- SQL
- 습관
- 영어회화
- opic
- 아침
- IH
- 고득점 Kit
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |