본문 바로가기

Rag

프롬프트 엔지니어링 6편 | Tree of Thoughts(ToT), reason&act(ReAct) 딱 한 줄 바꿨을 뿐인데, 답변의 퀄리티가 이렇게 차이난다고? 맞습니다. 똑같은 돈을 내고 AI 모델을 사용하더라도, 어떻게 질문을 하느냐에 따라 얻을 수 있는 결과는 천차만별입니다. 어떻게 하면 AI의 성능을 최대로 끌어내어 정확하고 의미있는 답변을 출력하게 할 수 있을까요? 구글에서 발간한 화제의 백서, “Lee Boonstra의 프롬프트 엔지니어링 백서”를 보면 알 수 있습니다. 원문은 모두 영어로 되어 있는데요. 이번 백서의 내용을 꼼꼼히 공부하고, 직접 실험해보면서 중요한 개념들을 해설하는 시리즈를 기획했습니다. 총 8편에 걸쳐 진행될 예정이며, 구글 백서 원문은 이곳(링크)에서 확인할 수 있습니다. [구글 프롬프트 엔지니어링 백서 파헤치기 시리즈]1편 - LLM의 작동 방식과 config 조정.. 더보기
RAG 개념 원리 | LLM에게 진짜 일 시키기 위해 필요한 기술 #RAG챗GPT에게 일을 시켜본 적 있으신가요? 생각보다 어려울 거예요. 아무리 AI가 지식이 많고 뛰어나다 하더라도, 여러분의 회사나 업무에 관한 전문적인 지식까지 모두 가지고 있지는 않기 때문입니다. 이러한 한계를 극복하기 위해 나온 기술! 오늘 레터에서는 가장 기본적인 RAG의 개념에 대해 소개해드리겠습니다. 라그? 레그? 그게 뭔가요?RAG는 'Retrieval-Augmented Generation'의 약자로, 우리말로 하면 '검색 증강 생성'이라고 할 수 있습니다. 이름 그대로 세 가지 과정을 담고 있습니다:증강(Augmented): AI가 원래 가지고 있지 않은 정보와 지식을 추가해줍니다.검색(Retrieval): 필요할 때 AI가 이 추가된 지식을 찾아볼 수 있게 합니다.생성(Generati.. 더보기
비슷한 것 같으면서도 다른 MCP vs RAG vs AI Agent, 무슨 차이일까? 지난 글에 이어서 씁니다. 이번 글 역시 업스테이지 프라이빗 세미나 2회차 내용을 바탕으로 작성했습니다. 이 세미나는 업스테이지 테크 리드 박준현 님이 나와 “AI Agent/ RAG 기술 동향”을 주제로 강연했습니다. RAGRAG는 검색 증강 생성 기술입니다. 유저가 LLM에게 질문을 하면 만들어 놓은 검색기가 데이터를 검색하고, 이를 LLM에게 넘겨주어 이 정보를 참조하여 답변을 만듭니다. 데이터가 저장된 벡터 스토어, 임베딩 모델, LLM 이 3가지 요소가 어우러져 답변을 만드는 시스템이 가장 간단한 RAG 구조일 것 같습니다. 검색에는 여러 방식이 있습니다. 벡터 검색도 있고, 키워드 검색도 있고요. 사람이 데이터를 찾아서 넣는 방식이나 아이디 값을 조회하는 것도 일종의 검색입니다. LLM은 학습.. 더보기
RAG, AI Agent란 무엇인가 | 지식의 확장과 집중 | 구조화된 데이터 업스테이지 프라이빗 세미나 2회차 AI Agent/ RAG 기술 동향요즘 가장 핫하고 많은 분들이 관심을 가지고 있는 주제, 바로 에이전트와 RAG입니다. 저도 정말 관심이 많은데요. 4월 9일 업스테이지의 프라이빗 세미나(Up-Edu Private Seminar) 2회차에서 “AI Agent/ RAG 기술 동향”을 주제로 기술 소개와 인사이트를 공유했습니다. 1회차 세미나에서는 AGI 시대에 앞으로 어떻게 살아야 할 것인가를 다뤘다면, 이번 회차에서는 AI Agent/ RAG 두 기술의 개념과 차이점, 그리고 이를 구현하는 과정에서 데이터 처리에 대한 내용을 다뤘는데요. 업스테이지 테크 리드 박준현 님께서 나와 현직자의 관점에서 자세히 설명해주셨습니다. 현직자만이 말할 수 있는 풍부하고 생생한 이야기들.. 더보기
[RAG] 인터뷰용 챗봇 만들기 설 연휴 중에 관심을 끄는 공고를 찾았다! RAG 관련한 콘텐츠를 많이 만드는 곳인데 나도 한번 지원해보려고 이력서와 자소서를 쓰던 중... 문득 아이디어가 떠올랐다.내 이력서와 자소서, 각종 문서들을 넣어주고이걸 참조해서 대답하게 하는 챗봇을 만들어서 보여주면 어떨까?특히나 내가 지원한 곳이 RAG를 하는 곳이였기 때문에, 겸사겸사 RAG에 대한 대략적인 이해도도 증명할 수 있겠다 싶었다. 챗봇은 streamlit을 이용해서 써볼 수 있게 하는 방식으로 데모 화면을 준비할 수 있으니, 담당자가 원한다면 챗봇에게 나에 대해 궁금한 것을 마음껏(?) 부담없이 질문하면서 나에 대한 정보를 파악할 수 있다.단, 주어진 시간은 단 3일!!! 성능은 모르겠고, 일단 어떻게든 구현이나 해보자라는 마음에 시작했다. .. 더보기
패스트캠퍼스 Upstage AI Lab 부트캠프 4기, IR 경진대회(feat. RAG) 2024년 막바지를 향해 달리는 중,짧고 굵게 후다다닥 지나갔지만 동시에 배운 것도 정말 많은 IR 경진대회에 대해 리뷰한다. 기간은 단 4일! 월요일에 서버 만들고 데이터 다운로드해서 베이스라인 땅! 시작하고,수요일에 멘토링을 한 번 받은 뒤에, 목요일까지 결과를 제출하고, 금요일에 발표 및 랩업 세미나로 정리하는 타이트하고 빡센 일정이였다.  - "질문"이 들어오면, 질문과 연관된 "적절한 문서"를 찾고, 그 문서를 참조해서 적절한 답변을 생성한다.- 대회에서는 답변을 확인하지 않고, 답변을 위해 참조한 문서 3개(top k)를 뽑아서, 이 3개 문서가 잘 추출됐는지로 평가한다. - 임베딩 생성 모델, 검색 엔진, LLM을 활용할 수 있다. - 학습 데이터로 주어지는 문서와 쿼리 모두 jsonl 형태.. 더보기
랭체인 | 빅뱅이론 쉘든 캐릭터 페르소나를 가진 챗봇 만들기 월요일에 각 팀에서 만든 QA엔진과 챗봇을 발표하는 시간이 있었다. 우리 팀은 QA 엔진을 만들었는데, 다른 팀 발표를 보니 챗봇 만드는 것도 너무 재밌어보였다! 나도 한번 해봐야지 하고 어제 하루종일 붙잡고 있었다. 내가 좋아했던 미드 빅뱅이론에 쉘든이라는 캐릭터를 가지고 챗봇을 만들어 보는 중.. 아직 확실하게 완성된 건 아닌데 일단 물어보면 그럴듯하게 답변이 나오는 것 같아서 깃허브에 ipynb 파일 그대로 냅다 올려놨다. 정리는 아직 못했다.ㅠ 사실 챗 히스토리 부분?이 아직 잘 이해가 안가서 정리가 안됐기도하고. 빅뱅이론이 워낙 인기있었던 미국 드라마라 전체 스크립트를 쉽게 찾을 수 있었다. https://bigbangtrans.wordpress.com/ Big Bang Theory Transc.. 더보기
Github에 소스코드 올리기 | api-key는 환경변수로 설정 혼자 실습할 때에는 API key를 직접 코드 안에 넣는 방식으로 했는데, 깃허브에 올리거나 외부에 공개할 때에는 API 키를 노출하면 안되기 때문에 환경변수에 저장시키는 방식으로 코드를 바꿨다. 그리고 Openai 버전으로 바꿔서 깃허브에 올려봤는데, 자질구레한 실수들이 있어서 기록 1) llm.py 안에 api key를 넣었는데 OPENAI_API_KEY 를 계속 OPEN_API_KEY로 잘못 써서 인식을 못해서 계속 오류남. 이걸 모르고 계속 헛짓거리를.. ^^ from langchain_openai import ChatOpenAIimport getpassimport osdef get_api_key(): if "OPENAI_API_KEY" not in os.environ: api_.. 더보기