1. RAG의 기초RAG(Retrieval Augmented Generation,검색 증강 생성): 환각 증상 해결을 위해 고안 LLM에게 어떤 질문을 할 때, 이에 힌트가 될만한 문장을 함께 넣어 줌으로써, 환각 현상 방지 RAG는 문서를 숫자로 변환하여 저장하는 인덱싱, 검색하고 답변을 생성하는 검색/생성 두가지 구조로 나뉜다. 2. RAG 고급 기법2.1. 다중 재정렬, MultiQueryRetriever=사용자 질문의 의도를 LLM이 이해하여 이를 여러 질문으로 재생성2.2 컨텍스트 재정렬, Long-Context ReorderLLM의 컨텍스트 사이즈가 늘어나며, 긴 입력이 가능해졌지만 중간 문서는 잘 찾지 못하는 문제가 있다.문장의 앞, 뒤에 따라서도 정확도(Accuracy)가 달라진다. 2.3..
0. Streamlit 이란?Streamlit은 파이썬 코드만으로 웹 앱의 프론트(화면)을 아주 쉽게 만들 수 있게 도와주는 프레임워크이다. 👉 데이터 분석 결과나 머신러닝 모델을 웹으로 바로 보여주고 싶을 때 유용하다.👉 복잡한 HTML/CSS/JS 없이 터미널에 "streamlit run app.py"만 입력하면 프로그램을 실행한다.예시 코드:# app.pyimport streamlit as stst.title("Hello, Streamlit!")st.write("이건 정말 간단한 웹앱입니다.") 1. 필요한 라이브러리 설치 pip install streamlit pip install langchain_openaipip install langchainpip install -U langchain-..
1. RAG의 필요성1.1. LLM의 한계 딥러닝모델은긴길이의문장을입력받거나출력하는데에어려움이있다.또한 학습된 데이터이외의것을만들어내는것에취약하다는한계점이 있다.1.1.1 환각 현상딥러닝모델은학습된데이터이외의정보에취약하다. 오픈 AI의최신모델인GPT-4o는2023년9월까지, Claude Sonnet 3.5는2024년4월까지의데이터 로학습되어, 이 이후의정보는 알지 못한다.예를 들어, 스프링 시큐리티 6.1 버전이 23년 5월에 출시 되었는데 이에 대해 gpt는 제대로 알지 못한다.1.1.2 기억 불가LLM은 사전 학습시에 받아들인 정보 외의 것은배우지 못한다. 따라서 오늘 나와 대화하고 있는 LLM은 어제 나와 대화했던 내용을 기억하지 못한다.1.1.3 토큰 제한LLM은 입력값의 길이가 길어지면 계산량이..