brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Mar 11. 2024

(책) 랭체인으로 LLM기반의 AI 서비스 개발하기

2024-02

AI 기초 개념에서 랭체인까지 하나씩 설명해 준다.

딱 필요한 것만 설명해 준다.


길벗 출판사에서 책을  제공받아 작성된 서평입니다.


AI서비스에 대해 기본 개념을 잡아주는 책이다.

AI에 대해 확실히 알고자 하는 분에게 추천한다.

이 책의 예제를 모두 해보자.

그리고, 실무에서는 클라우드에서 제공하는 AI서비스들도 배워 익히면 더 좋을 거 같다.



이 책의 요약으로 기본 개념을 잡자.

이 책을 구매해 실습하며 실무능력을 키워보자!


이 책은

<1> LLM 개념을 잡아준다.

<2> LLM의 종류에 대해 알려준다.

<3> LLM과 GAI의 차이를 알려준다.

<4> LLM생성 과정 및 사용법을 알려준다.

<5> LLM 활용 방법을 알려준다.

<6> LLM 활용 시 주의가 필요한 부분도 알려준다.

<7> RAG에 대해 알려준다.

<8> 랭체인과 환경 구성을 알려준다.

<9> 랭체인 주요 모듈을 알려준다.

<10> 랭체인으로 RAG구현하는 법을 알려준다.

<11> 개인 정리

<12> 실습 코드 관련 안내드립니다.




<1> LLM 개념을 잡아준다.




1

LLM은 인공지능의 한 분야로, 대규모 데이터로 학습한 결과를 이용해서 인간의 언어를 처리하고, 생성하며, 맥락을 이해하는 데 사용된다.


2

언어모델(Language Model)?

이제 막 글을 배우는 어린아이에게 글을 가르치듯이 컴퓨터에게 어떻게 말을 하고 글을 쓰는지 가르치는 것과 같다.


3

거대 언어 모델(Large Language Model)?

대규모 데이터로 훈련된, 매우 큰 규모의 인공 지능 기반 언어 모델입니다.




<2> LLM의 종류에 대해 알려준다.



1

GPT-4?

오픈 AI가 가장 최근에 발표한 모델 (2023년 12월)

멀티모달(multimodal)을 제공한다.

멀티모달은 여러 가지 방법을 썩어 쓴다는 뜻입니다.

텍스트, 오디오, 이미지, 비디오등 두 가지 방법을 같이 쓰는 것.


2

팜 2?

구글에서 팜 2(Pathwats Language Model2, PaLM2)를 공개함.

오픈 AI의 Chat GPT-4에 대응하기 위해 만듦.

gpt-4와 언어 모델이 제공하는 기능은 일치한다.



3

라마 2?

라마 2(LLaMA2)는 페이스북 메타에서 개발한 LLM이다.

메타는 라마 2를 오픈소스로 공개함.

오픈소스





<3> LLM과 GAI의 차이를 알려준다.




1

LLM?

LLM은 거대 언어 모델입니다.

대용량의 텍스트 데이터를 학습함으로써 인간의 언어인 자연어를 이해하고 생성하는 작업에 능숙합니다.

GPT-3.5 , GPT-4 , 구글의 팜 2 , 제미나이가 해당됩니다.

LLM은 텍스트를 기반으로 질문에 답하거나 , 글을 작성하고, 대화를 진행하는 언어 관련 작업을 하는 데 사용합니다.



2

생성형 AI(Generative AI, GAI)는

입력 데이터를 기반으로 새로운 콘텐츠를 생성하는 인공지능입니다.

텍스트, 이미지, 음악, 비디오 등 다양한 콘텐츠를 생성할 수 있는 모델들이 포함됩니다.

달리(DALL-E) 2, 와 같이 모델은 텍스트 설명을 바탕으로 이미지를 생성할 수 있습니다.

// 생성형 AI는  데이터를 입력해줘야 합니다!!!!  그러면 콘텐츠를 생성해 줍니다.






<4> LLM생성 과정 및 사용법을 알려준다.


1. 데이터 수집 및 준비

2. 모델 설계

3. 모델 학습

4. 평가 및 검증

5. 배포 및 유지보수




<5> LLM 활용 방법을 알려준다.



파인 튜닝?

파인튜닝(Fine-Tunning)은 기존의 LLM을 특정한 작업이나 상화에 맞게 조금 더 훈련시키는 과정이다.

예를 들어 LLM이 여러 언어를 이해하는 법을 배웠다고 가정해 보자.

이 모델을 의학 분야에서 전문적으로 사용하고 싶다면 의학 관련 문서를 추가로 학습시키는데, 이러한 과정을 파인튜닝이라고 한다.

이렇게 하면 이미 배운 기본 지식을 유지하면서 특정 분야에 더 정확하고 효과적으로 대응할 수 있게 된다.







<6> LLM 활용 시 주의가 필요한 부분도 알려준다.



정보 필터링 - 개인정보는 제거가 필요하다.

법적인 규제 준수 필요.

할루시네이션 주의 - 부정확한 현상을 최소화하기 위해 해야 하는 것.

보안 - 클라우드서비스에서는 프라이빗 엔드포인트, 프라이빗 링크 등으로 내부 통신을 하도록 해야 한다.

편향성과 공정성 필요

투명성 필요 - 왜  그런 대답을 했는지 이유 설명이 부족할 수 있다.

데이터 의존성.

정보의 일반화

오류 가능성 - 잘못된 정보를 기반으로 작성되는 경우.

새로운 정보의 결여.

기업 내 데이터 미활용.




<7> RAG에 대해 알려준다.



1

RAG(Retrieval-Augmentd Generation)는?

자연어 처리분야에서 사용되는 기술로, 정보 검색과 생성을 결합한 인공지능 모델입니다.


RAG는?

LLM이 텍스트를 생성할 때 관련 정보를 찾아보고(rerieval), 그 정브르  활용하여 새로운 텍스트를 만드는 (Generation) 기술이다.






2

RAG구현시 필요한 것?

1) 데이터

2) 벡터 데이터 베이스




1) 데이터


획득한 데이터는 크게 두 가지 방법으로 사용한다.

시맨틱 검색

벡터 검색



임베딩이란?

임베딩(embedding)은 복잡한 데이터를 간단한 형태로 바꾸는 것을 말한다.

사과는 1.0 , 0.0로 변환

바나나는 0.9,0.1로 변환

컴퓨터는 0.1, 0.9로 변환



임베딩 모델?

임베딩을 위해서 임베딩 모델이라는 것이 필요하다.


Word2 Vec

단어를 컴퓨터가 이해할 수 있는 숫자인 벡터로 변환하는 모델.




2) 벡터 데이터 베이스


벡터를 저장하는 저장소.

데이터를 저장, 관리, 검색하는 일도 한다.



벡터 데이터 베이스 종류?

파인콘

밀버스(추천)- 가장 스타가 많다.

쿼드런트

크로마

엘라스틱서치

파이스





<8> 랭체인과 환경 구성을 알려준다.



1

랭체인은 LLM을 활용하기 위해 필요한 모듈(라이브러리)의 모음이자 조합입니다.




환경 구성?



2

아나콘다 환경 구성부터 설명해 준다.

https://www.anaconda.com/download



3

chatgpt  api 유료 사용

구글 계정 가입

11달러 = 1만 5천원


https://platform.openai.com/settings/organization/billing/overview




4

허깅페이스 무료

구글 계정 가입


https://huggingface.co/settings/tokens




<9> 랭체인 주요 모듈을 알려준다.


모델 I/O

데이터 연결

체인

메모리

에이전트/툴




<10> 랭체인으로 RAG구현하는 법을 알려준다.



8가지 서비스를 만들 수 있도록 예제를 알려준다.






<11> 개인 정리



LLM의 개념에서 실제로 사용해 서비스를 만들 수 있도록 해주는 책이다.

기본 개념을 확실히 잡아준다.

서비스 만드는 법을 통해 실제 업무에 적용할 수 있도록 해준다.

가장 명확하게 설명해 주고, 8가지 서비스를 만들어 볼 수 있도록 해주는 책으로 추천합니다.



<12> 실습 코드 관련 안내드립니다.


---------------------------------

랭체인 설치 시 버전을 지정(0.0.35)할 경우 제대로 작동하지 않는 코드를 발견하고 수정했습니다. (2024.3.19)

수정하면서 전체 코드를 재검증하여 업로드하였으니, 이 점 실습에 참고 부탁드립니다.

--------------------------------

이후에도 지속적으로 코드를 관리할 예정이며, 코드 업데이트 관련 사항은 이 책의 길벗 깃허브 페이지에서 확인 부탁드립니다.


길벗 깃허브:

https://github.com/gilbutITbook/080413






같이 보면 좋을 책

https://brunch.co.kr/@topasvga/3835



(모음) 생성형 AI 개발하기-2024


https://brunch.co.kr/@topasvga/3848


감사합니다.


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari