최근에 지원한 공공기관 계약직 채용에 합격했다. 스스로 밥벌이를 한다라는 점에서 기쁘기도 하지만 걱정이 되는 것도 사실이다. 개발자를 포기한 것이 아니기 때문에 다닐지 말지 고민을 좀 했다. 공공기관에 다니면서 개발 공부를 소홀히 하진 않을까, 직장 다니면서 공부할 체력과 의지가 과연 생길까, 공공기관의 안락함(?)에 젖어 평생 공부해야 하는 개발자를 업으로 삼을 수 있을까... 불경기에 취업시켜준다는데 배부른 걱정만 하는 것 같아서 다니기로 결정했다. 사실 장점만 놓고 보자면, 다니다가 적성에 맞으면 계약 연장/정규직 지원하면 되고, ICT 사업 관련 기관이라 개발 업무와 완전 무관하지도 않아서 훌륭한 기회라고 생각한다. 심지어 연봉도 내가 개발자로서 원했던 초봉보다 높다. 나중에 개발자로 전직할 때..
👉RAG와 LangChain을 활용한 Chatbot 구현(2) 게시물 보러가기 지난 게시물에서 chat history와 few shot을 통해 1. 모델이 대화의 맥락을 파악하여 대답하고2. 답변을 일관된 양식으로 제공하고3. hallucination 가능성을 줄이고 답변의 정확도를 향상시켜 RAG의 전체적인 품질을 높였다. 마지막으로 우리가 작성한 모델에 evaluation(평가)를 추가해서 RAG의 신뢰도와 품질을 더 높이자. RAG Evaluation 추가하기지나치게 강조하는 것 같지만 LLM의 큰 숙적 중 하나는 계속 해서 언급했던 hallucination(환각) 현상이다. 환각으로 LLM이 잘못된 정보를 제공하는것을 최소화하기 위한 기법이 evaluation이다. evaluation을 통해 ..
👉RAG와 LangChain을 활용한 Chatbot 구현(1) 게시물 보러가기 지난 게시물에서 RAG의 개념, RAG를 사용했을 때의 장점, RAG 구현을 위한 프레임워크 langchain의 활용법을 알아보고 질문에 간단하게 답변할 수 있는 RAG를 구축해보았다. 지난 시간에 구축했던 RAG를 좀 더 보강하여 답변 신뢰도와 품질을 좀 더 높여보자. Chat history 추가하기RAG에서 대화 기록(chat history)를 사용해서 이전의 문맥(context)를 토대로 더 자연스럽고 일관된 답변을 생성하는 것이 가능하다. chat history를 사용하지 않을 경우 아래와 같이 비슷한 맥락의 질문임에도 불구하고 답변을 제대로 하지 못한다는 단점이 있다. "1루 주자와 2루 주자가 동시에 베이스를 훔치..
RAG란 무엇인가RAG는 Retrieval Augmented Generation으로 저장소에 저장된 데이터를 기반으로 유저가 입력한 명령(프롬프트)에 부합하는 답변을 생성하는 AI 시스템 구조이다. 우리가 흔히 사용하는 ChatGPT, Claude와 같은 LLM모델을 목적과 용도에 맞게 직접 커스텀, 최적화 해서 사용할 수 있다는 큰 장점이 있다. 왜 쓰는 건데?1. 기존에 학습된 데이터라는 검색 범위의 한계성 극복먼저 GPT-4o 기준으로는 기존에 학습된 데이터만 사용하는 것이 아니라, 유저가 요청한 정보가 최신 정보일 경우 기존에 학습된 데이터 뿐만 아니라 웹 검색을 통해서도 정보를 가져오는 것을 확인할 수 있었다(불과 3시간 전의 뉴스 속보에 대해 질문했는데 질문에 정확하게 답하는 것을 보고 깜짝 ..
크래프톤 정글 핀토스 게시물 이후로 글이 뚝 끊겼는데 블로그 안 접었음... 게시물 안 올리는 동안 크래프톤 정글 핀토스 프로젝트도 하고 정글 마지막 과정 한 달 동안은 나만무(나만의 무기 만들기) 프로젝트 주차여서 정말 시간이 없어서(물리적으로), '아 블로그에 글 써야겠다!'라는 생각 자체가 안 들었던 것 같다. 크래프톤 정글정글 얘기를 좀 해보자면, 정말 괜찮았던 부트캠프였다! 커리큘럼 자체도 꽤 탄탄히 짜여있고, 함께 공부했던 동기들도 열정 넘치는 사람들이 많아서 정말 좋았다. 남한테 이걸 추천하고 싶은가? 라고 생각하면 솔직히... 어떤 사람이냐에 따라 답이 다를 것 같다. 자, 가슴에 손을 얹고 자신에게 솔직하게 질문해 봅시다. '내가 정말 부지런하고 하루 8시간 이상 몰입할 수 있을 정도의..