본문 바로가기
기타 학습

[AI] LLM과 LangChain (랭체인 입문 / 기본 개념 / AI 기초/ RAG)

by 비전공자 기록광 2025. 2. 21.
반응형

신규 프로젝트에 들어가며 프롬프트 엔지니어링을 접했다. 
단순히 OpenAI API / 네이버 Clova API를 사용하는 걸 넘어 랭체인도 접목해보고 하다 보니 자세히 이해하지 않고는 못 쓰겠다 싶었다.

계속 미루고 미루다가 신규 기능으로 AI챗봇 개발을 하게 되며 RAG를 보고.. 그러니 진짜 제대로 공부해보고자 마음 먹었다.
작년부터 조금씩 조금씩 input으로 쌓인걸 연결해 이해해보고 있다.


LLM

Large Language Model 대규모 언어 모델 

LLM 은 쉽게말하면 ChatGPT와 같은 AI를 말한다.
딥러닝과 강화학습을 통한 생성형 AI인데 특히 언어에 특화된 기술을 말한다.
딥러닝을 통해 텍스트를 이해하고 생성한다. 그리고 사용자 피드백과 같은 강화학습을 통해 답변을 제공한다.


LLM 으로는 먼저 말한 챗지피티, 네이버 클로바, 구글 제미나이 그리고 중국의 딥시크 등등 너무많다.

 

https://llm-stats.com



LLM은 ML (머신러닝)과 AI 의 하위 분야인 NLP (자연어 처리 / Natural Language Processing) 에서도 언어 특화 기술로 보면 된다.
NLP는 쉽게 말해 컴퓨터가 사람의 말을 이해하고 대답처리하게 하는 기술이다.

 


LLM 을 잘 활용한 서비스도 많이 나오는데
언어 학습 서비스인 듀오링고, 스픽 등이나 영어 문법 교정의 Grammarly 등이 대표로 뽑을 수 있다.

점점 AI 시장이 커지며 큰 기업뿐만 아니라 개인으로도 LLM 기반 서비스에 뛰어들고 있는데

여기서 LangChain이 등장했다.

 

LangChain

랭체인은 쉽게 말하면 LLM 프레임워크이다.
위에서 말하듯 LLM 기반의 애플리케이션을 만들고자 할때 쉽게 가져와 쓸 수 있는 프레임워크이다.

LLM이 다양화되고 선택할 수 있는 모델도 많아졌다.

 

https://www.keywordsai.co/blog/best-llms


이 LLM Ranking을 보면 
long context 부문에서 있기 있는 모델들도 있고,
content creation 부문에서 인기 있는 모델들이 있고,
translation부문에서 인기 있는 모델들도 있다.

내가 만들 서비스가 어떤 긴~ 문서를 번역해서 컨텐츠를 생성해낸다고 할때

이 세 부문에서 뛰어난 모델들 중에서 하나 뽑아 사용할 수도 있지만 여러 모델을 섞어서 사용할 수도 있다.
openAI의 챗지피티와 anthropic 의 클로드를 쓴다고 하면

우리는 각 docs에서 제공하는 것처럼

 

 

pip install openai, anthropic

 

를 해주고, 각자의 사용법에 맞게 사용해야 한다.

 

 

 

간단한 질문에 대한 API 요청이
openAI는 chat.completions.create 을 불러야 하고 프롬프트도 content에 담아줘야 한다.
anthropic 은 messages.create 로 불러야 하고 text 에 담아줘야 한다.


한가지 모델만 사용한다면 몰라도 모델이 여러가지라면,
또 개발이 다 됐는데 모델이 교체되어야 한다면 큰 문제가 된다.


이걸 랭체인으로 해결할 수 있다.

pip install langchain langchain-openai langchain-anthropic

 

패키지를 설치해
각 모델의 키와 정의만 해두고

실행을 invoke 로 하면 된다.

 

 

완전 혁신 😲

 

랭체인으로 단순히 다양한 모델을 하나의 명령으로 쉽게 사용할 수 있다는 것 외에 다양한 핵심 기능들이 존재한다.

  • chat models : LLM 과 연동 구현
  • retrievers : 검색 및 RAG
  • tool : 외부 도구 사용 (API / DB 등)
  • document loader : CSV, PDF 등 문서 로더 + RAG
  • vector stores : 벡터 DB와 연동
  • embedding model : 벡터 변환 처리
  • others

 

 

순서를 정의해 LLM을 호출하는 Chain이나 llm 이 직접 어떤 도구를 사용할지 판단해 실행하는 agent 등도 있다.

 

이 외에도 프로세스를 관리하는 LangGraph나 모니터링 및 운영 관리 최적화 도구인 LangSmith도 같이 쓸 수 있어 요즘 LLM과 가장 필수로 묶여 사용되는 기술이다.

 

RAG

Retrieval-Augmented Generation 검색 증강 생성


사실 이 개념이 가장 아리까리 했다.


GPT를 사용하다보면 전혀 아닌 대답을 그럴듯하게 주던 경험들이 있다.
GPT가 가져오는 대답들의 데이터가 너무 이전의 것이거나 모르는 내용일 때는 그렇다.

 

이걸 할루시네이션 Hallucination 환각효과라고 한다
GPT가 실제로 세상의 모든 지식을 이해하고 추론해내는 게 아니고 학습한 데이터를 토대로 응답을 생성하는 것이다.
단어간의 통계적 패턴과 확률를 학습한 확률 기반 응답이기 때문이다.

이 거짓말하는 언어모델에게 더 고품질의, 특정 도메인 특화된 데이터를 부여하는 게 RAG이다.
할루시네이션 해결하는 기술이라고 이해하면 된다.

 

광고 금융 법률 등의 정확한 전문 지식이 필요한 LLM 기반 서비스등에서는 RAG를 사용해 미리 정보를 체크해 사용한다.
환각 현상을 줄이고 최신 데이터로 응답을 내기 위해서는 필수적이라고 볼 수 있다.

 

 


참고

https://blog.kakaocloud.com/61

 

<지식 사전> Chat-GPT는 왜 거짓말을 할까? 할루시네이션 현상의 원인과 해결 방법

안녕하세요, 여러분! 오늘은 Chat-GPT를 비롯한 대형 언어 모델(Large Language Models, LLMs)의 치명적인 약점으로 지적되는 '할루시네이션(Hallucination)' 현상에 대해 알아보려고 합니다. 도

blog.kakaocloud.com

https://yozm.wishket.com/magazine/detail/2839/

 

10분 만에 랭체인 이해하기 | 요즘IT

시장에는 오픈AI의 챗GPT, 앤트로픽의 클로드, 구글의 제미나이 같은 대표 LLM을 제외하고도 수많은 언어 모델이 거의 매일 새롭게 나타나고 있으며, 각 모델마다 고유한 기능과 전문성을 갖추고

yozm.wishket.com

https://python.langchain.com/docs/introduction/

 

Introduction | 🦜️🔗 LangChain

LangChain is a framework for developing applications powered by large language models (LLMs).

python.langchain.com

 

 

 


GPT를 사용한지는 오래됐지만 GPT의 동작과정이나 기능들에는 사실 나와는 너무 먼 천재들의 이야기라고 생각이 되어 공부를 등한시한 것도 맞다. 직업의식 후두둑.. 하지만 다시 반성하고~ 밀려나지 않으려면 또 뒤쳐지지 말아야지!!!

하다보니 통계학을 다시 공부해야겠다는 마음도 또 들고...

 

뭐든 해보자 💪

반응형

댓글