목록전체 글 (35)
어쩌다데싸
지난 한 달 간 LLM 기반 QA 서비스 공모전과 회사 프로젝트를 진행하며 Fine tuning 과 Prompt Engineering, RAG에 대해 공부하는 시간을 가졌습니다. 이번 글에서는 LLM Fine Tuning에 대한 개념과 학습데이터 구성을 통해 Fine Tuning하는 몇 가지 기법들을 알아보려 합니다. 1. Fine Tuning이란? LLM 모델은 대용량 자연어 데이터를 사용하기 때문에, 라벨링을 한 지도학습(Supervised learning)을 하긴 어렵습니다. 그래서 LLM 모델은 자기지도학습(Self-supervised Learning)을 통해 학습이 되게 됩니다. 자기지도학습은 라벨이 없는 데이터에서 스스로 input 내에서 target으로 쓰일만 한 것을 정해서 모델을 학습하는..
"SI 회사는 야근 많고 월급 짜서 절대 가면 안된대" SI 회사에 대해 이야기 할 때면 빠짐없이 나오는 이야기입니다. SI 회사에 대해 검색하면 실제로 많은 사람들, 특히 신입들이 SI회사에 가도 될까요라는 걱정 어린 질문을 하는 걸 볼 수 있습니다. 그렇다면 SI 회사는 정말 절대 가면 안되는 그런 무시무시한 곳일까요? 주니어 데이터 사이언티스트로서 3년 동안 SI 회사에 다니면서 느낀 장단점을 공유해보려 합니다. 1. SI (System Integration) 란? 지금 회사에 합격 연락을 받았을 때까지도 SI 회사가 무엇인지 몰랐습니다. 취업을 하고 한참 뒤에야 제가 지금 다니고 있는 곳이 SI 회사라는 것을 알게 되었습니다. 전세계적으로 사용되는 공식적인 용어는 'IT서비스'이지만, 국내에서 더..
LLM은 놀라운 모델이지만 한계점이 있습니다. 이번 글에서는 LLM의 답변 정확도를 높이기 위해 함께 사용되는 RAG(Retriever Augmented Generation)와 LangChain이란 프레임워크로 RAG를 구현하는 법에 대해 알아보겠습니다. 1. LLM 한계 인터넷 세계의 학습 시점 과거의 데이터를 학습해 지식을 습득하는 LLM은 실제 세계에 대한 인식이 부족하고, 학습시점 이후의 데이터는 알지 못하는 등 학습 방식에 따른 근본적인 한계가 존재합니다. 아래의 4가지는 LLM의 대표적인 한계점으로 언급되는 내용입니다. - Knowledge Cutoff : 모델 학습 이후에 생성된 데이터에 대해서는 학습이 안되어 답변을 못함 - No Access to private data : 회사 내부 기밀..
블로그를 시작할 때는 매일 글을 쓸 수 있을 것처럼 열정이 넘치지만, 생각보다 글을 꾸준히 쓰는 건 정말 어려운 일이다. 글또 활동을 통해 2주에 한 번 글을 쓰고 있지만 아직은 습관보다는 벼락치기 과제하듯 적는 경향이 강해 성윤님의 글쓰기 강의에서 들은 내용을 바탕으로 나의 글쓰기 프로세스를 만들고 습관화 해보려 한다. 글또를 처음 시작했을 때 목표는 '내가 공부한 내용을 비전공자도 알기 쉽게 이해할 수 있는 글로 작성하는 것'이었다. 파워 N답게 온갖 생각이 많아 글감을 정하는 건 어렵지 않지만, 대부분 공부가 선행되고 내가 이해한 뒤 글을 써야 하는 주제이다 보니 초안 작성하는데 시간도 많이 들고 스트레스도 많이 받았다. 가장 걱정되는 부분은 올바르지 않은 정보를 전..
2022년이 열정과 도전의 해였다면, 2023년은 안정과 마무리의 해였습니다. 한 해를 돌아보는 질문 리스트나 기록 다이어리인 '연말정산'을 작성하며 2023년을 돌아봤는데, 그 중 기억에 남는 몇 가지 질문들을 소개하며 저의 2023년을 마무리 해보겠습니다. 1. 올해 가장 잘 한 일은 무엇인가요? 회고를 하다 보면 아쉬움과 후회만 적힐 때가 많아서 이번 회고에서는 자신에 대한 칭찬을 먼저 떠올려 봤습니다. 올해는 기록을 많이 했습니다. 생각도 많고 상상도 자주 하지만 보통은 생각에 그쳐 곧잘 까먹고 했는데 2023년은 흘러가는 생각이 없도록 기록을 자주 하는 습관을 들였습니다. 매 해 다이어리 꾸준히 쓰기, 기록하기를 계획으로 세웠지만 실패했던 이유는 '잘 쓰기'에 대한 강박 때문이었습니다. 생각은 ..
이제는 우리 일상에서 흔하게 접할 수 있는 ChatGPT, Claude 등과 같은 생성형 AI 서비스에는 LLM(Large Language Model)이 자리하고 있습니다. LLM은 단순한 기술을 넘어 다양한 산업과 분야에서 혁신적인 변화를 이끌고 있습니다. AI 챗봇, 번역기, 코딩 보조, 의료 및 법률 상담 등 LLM이 할 수 없는 것을 찾는 게 더 빠를 정도로 굉장히 많은 분야에서 LLM이 활용되고 있습니다. 그렇다면 LLM은 정확히 무엇이며, 왜 이렇게 주목받고 있을까요? 지금까지의 AI 모델과 어떤 차이점이 있는 걸까요?단순히 많은 데이터를 학습했다고 해서 AI가 사람처럼 자연스러운 문장을 생성할 수 있는 것은 아닙니다. 우리가 LLM을 이해하려면, 이 모델이 어떤 방식으로 언어를 학습하고, 문..
현재 운영하고 있는 서비스는 도커를 기반으로 돌아가고 있는데, 도커를 사용했다고 말할 때최소한의 지식은 가지고 있어야 하기 때문에 도커를 차근차근 공부해 보고자 합니다. 1. 도커와 컨테이너저는 도커를 처음 접할 때 환경에 의한 문제 없이 어디서든 프로그램을 구동할 수 있게 만들어주는 기술로써 도커를 이해했습니다. 하지만 알고 보니 이것은 도커보다는 컨테이너 기술에 대한 이해였습니다. 도커는 컨테이너 기술을 사용해서 실행환경, 프로그램 등을 추상화하고 동일한 인터페이스를 제공해서 프로그램의 배포와 관리를 쉽게 만들어주는, 컨테이너 런타임 도구 중 가장 유명한 플랫폼입니다. 그렇다면 컨테이너란 무엇일까요? 컨테이너는 앱이 구동되는 환경까지 함께 감싸서 실행할 수 있도록 하는 격리 기술입니다. 상품을 운송할..
프로젝트를 진행하면서 Git을 통해 코드를 관리해야 하는 경우가 많아 공부를 시작했다.기초적인 개념부터 차근차근 주로 사용하는 개념/코드 위주로 정리해야지1. Git 이란?수정한 소스를 관리하기 위해 필요한 시스템으로, ‘버전관리’, ‘백업’, ‘협업’ 기능으로 크게 분류할 수 있다.* 깃 저장소 : 해당 디렉토리(저장소)에 있는 파일들을 버전관리 할 수 있음. 저장소를 만들고 싶은 디렉터리로 이동해서 깃을 초기화 하면 됨# CLI 에서 깃 저장소 생성mkdir hello-git # 깃 저장소로 사용하기 위한 디렉터리 생성cd hello-git # 해당 디렉터리로 이동git init # 깃 초기화ls -la # .git 이라는 디렉터리 생성 확인2. 스테이지와 커밋버전을 만드는 단계를 이해하기 위해서는 ..