brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Jun 23. 2024

AI 1탄-1. 챗GPT 시작하기-2024-1/3

랭체인을 활용한 LLM기반의 AI서비스 개발하기-1/3


대상

AI 기술을 알아보고 싶은분.

AI로 무엇을 만들수 있는지 알고 싶은분.

AI로 무엇을 만들어 보고 싶은분.



(전) 네이버 근무

(전) 네이버 인프라 담당자 7년 , 네이버 DNS 담당자,  네이버 초기 인프라 셋업

(전) 네이버 시스템 운영 1팀 - 네이버 만화, 영화, 뮤직 인프라 담당

(전) 한게임 시스템 운영

(전) 네이버 사내정보 시스템 운영

(전) PSINet이라는 글로벌 ISP - 네트워크 엔지니어로 7년 근무.

현재) 네이버 클라우드 마스터, SK데브오션 프로, 카카오 클라우드 테스터, AWS KRUG 비기너모임, 가비아 협업.

자격증 : AWS PRO , 네이버 클라우드 PRO , 구글 PRO , Azure Admin, CCNP(Cisco Network Pro)



모르는건 바로바로 물어봐 주세요~~~



AI는 원하는 것을 쉽고 빠르게 잘 만들어 주는 것이다.

기술을 이해하고 원하는 것을 만들어 사용하면 된다.

가장 많이 사용하는 챗Gpt 기술을 배워보자.



아래 내용에 대해 이론적으로 한번 설명

실습하며 한번 더 설명 됩니다.



목차


1탄-1. 챗GPT 시작하기

1탄-2. 랭체인을 활용한 LLM AI 구축 2



2탄-1. 나만의 챗GPT 만들기-2024-06

2탄-2. 챗GPT, RAG-2024

2탄-3. PDF에서 데이터 추출-2024

2탄-4. PDF 내용으로 답하는 챗봇-2024

2탄-5. ChatGpt 비용 제한하기-2024

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



3탄-1. ChatGPT 사용-2024-06

3탄-2. ChatGPT API 사용-2024-06

3탄-3. 외부검색과 히스토리를 바탕으로 응답하는 웹 앱

3탄-4. 스트림 형식으로 히스토리를 기반으로 응답 슬랙 앱

3탄-5. 사내 문서 참고해 답변하는 슬랩앱-2024

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




4탄-1. 챗GPT와 랭체인-2024

4탄-2. 랭체인-Model I/O호출 -2024

4탄-3. 랭체인-Retrival-모르는 데이터 다루기

4탄-4. 랭체인-Memory-과거의 대화 기억하기

4탄-5. 랭체인-Chains-프로세스 통합

4탄-6. 랭체인-Agents-외부와 상호작용

4탄-7. 랭체인-Callbacks-다양한 이벤트 처리하기

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



5탄-1. 파이썬 사용, 생성형 AI 개념

5탄-2. 그라디오, 챗봇, 허깅 페이스

5탄-3. 챗봇 업그레이드-2024-07

5탄-4. 음성인식 AI 비서 만들기-2024-07

5탄-5. 챗 PGPT와 스테이블 디퓨전-2024-07

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




6탄-1. 인공지능 프로그래밍 -2024-07

6탄-2. 파이썬 사용, 파이토치, 텐서플로-2024-07

6탄-3. 라마인덱스-2024-07

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



AI 7탄-1. AWS와 네이버 생성형 AI-1/9

AI 7탄-2. AI 개요-2/9

AI 7탄-3.개인이 사용하는 AI도구1-3/9

AI 7탄-4. 개인이 사용하는 AI도구2-4/9

AI 7탄-5.생성형 AI로 할 수 있는 것?-5/9

AI 7탄-6. 기업이 사용하는 AI 도구1-6/9

AI 7탄-7. 기업 레퍼런스 -AWS -7/9

AI 7탄-8. 기업 레퍼런스-네이버-8/9

AI 7탄-9.AWS AI 기술 자료-9/9

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




AI 8탄-1. 네이버,AWS AI-1/3

AI 8탄-2. 구글 AI-2/3

AI 8탄- MS AI,OPENAI,엔비디아-3/3

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



AI 9탄-1. OpenAI API,랭체인 완벽 활용법

AI 9탄-2. OpenAI Whisper로 음성 비서

AI 9탄-3. 이미지를 음성으로 설명 듣기

AI 9탄-4. 랭체인,RAG 사용

AI 9탄-5. PDF파일로 만드는 RAG 챗봇

AI 9탄-6. 유튜브 요약 프로그램

AI 9탄-7. 동화책 만들기

AI 9탄-8. 문서 참고하는 챗봇 제작하기

AI 9탄-9. 주가정보 AI 챗봇

AI 9탄-10. 심리 상담 ChatGPT 만들기

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



AI 10탄-1. 디스코드 가입,미드저니 가입

AI 10탄-2. 미드저니 명령어

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





1탄-1. 챗GPT 시작하기


<1> LLM을 알아보자

<2> LLM 개선?

<3> 검색 증강 생성 (RAG)?

<4> 검색 증강생성에서 필요한 벡터 데이터 베이스

<5> 파인 튜닝 = 추가 학습이다!!

<6> 랭체인은?

<7> 랭체인 주요 모듈 5가지 역할

<8> AI 개발 환경 구축법 4가지

<9> 요약






<1> LLM을 알아보자


1

2

대규모 언어모델 (LLM)이란?


대형 언어 모델(LLM)은 방대한 양의 데이터를 기반으로 '사전 학습된' 초대형 딥 러닝 모델입니다. 

대형 언어 모델은 기본 모델(FM)이라고 한다.  

기본 모델 = 파운데이션 모델이라고 한다.

LLM은 라지 랭귀지 모델 = 대규모 언어모델이라고 한다.

텍스트로 질의하면 답변 준다.


3

동작

4

LLM 모델 생성 과정?


오랜 시간 동안 컴퓨팅 자원을 투자해 생성된다.

데이터 수집, 전처리

모델 설계

모델 학습

평가 및 검증

배포

LLL 모델 생성



5

SLM (Small Language Model)?

비용 효율적으로 요즘 많이 사용하는 추세이다.

SLM은 LLM의 성능을 어느 정도 유지하면서 모델 사이즈를 줄여 실용성에 초점을 맞춘 모델입니다. 가벼운 모델 크기로 추론에 필요한 컴퓨팅 자원이 적고, 빠른 추론 속도를 가져 실시간 응답이 필요한 서비스에 더 적합하다는 장점이 있습니다.

모델의 사이즈가 줄어들면 학습에 필요한 비용도 줄어들지만, 추론에 필요한 비용도 줄어든다는 장점이 있습니다.



6

OPENAI 모델들 ?


일반적으로 gpt-4를 사용한다.

gpt-4o-mini  = SLM

dall-e = 이미지 생성

tts = text를 음성으로

whisper는 음성을 텍스트로




7

LLM에 질의하여 답을 얻습니다.

하지만, LLM은 부족한 부분이 있어, 이 부분에 대해 개선을 진행합니다.

프롬프트 엔지니어링, RAG , 파인튜닝, 재학습





<2> LLM 개선?


프롬프트 엔지니어링?

검색 증강 생성(RAG)?

파인 튜닝?

재학습?


프롬프트 엔지니어링?

프롬프트(질문)으로 좀더 좋은 답을 찾아낸다.

그러나, 한계가 있다.

학습된 기간 이후의 데이터를 알수는 없다.

현재 미국 대통령은???





<3> 검색 증강 생성 (RAG)?


데이터 베이스에서 검색해서  질문에 가까운 정보를 더하여 LLM에 질문하여  답한다.

질문하면 LLM이 답변을 주는 게 FM이다.

그러나, 학습된 데이터에 없거나 전문성 있는 데이터가 필요한 경우는 콘텐츠 저장소를 만들어 질문을 보강하여 질문한다.

벡터 데이터 베이스가 필요하다

FM 모델 자체는 변경되지 않는다.





<4> 검색 증강생성에서 필요한 벡터 데이터 베이스


1

2

벡터 데이터베이스는 벡터를 고차원 포인트로 저장하고 검색하는 기능.

정보는 텍스트 문서, 리치 미디어, 오디오와 같이 비정형 정보.

애플리케이션 로그, 테이블, 그래프와 같이 정형화된 정보가 있다.

검색 증강 생성(RAG)에서 사용하는  벡터 데이터 베이스.

오프소스 벡터 데이터베이스 참고.

AWS에서도 다양한 벡터 데이터 베이스를 제공한다.





<5> 파인 튜닝 = 추가 학습이다!!


모델에 새로운 지식을 학습시키는 것은 파인튜닝.

모델 자체를 다시 쓰는 것은 파인 튜닝 = 튜닝을 하면 엔진이 변경된다~

데이터를 학습/훈련해서 만든 것이 LLM이다.

파인 튜닝은 전문적인 법률 데이터와 같은 내용을 추가 학습 하는 것이다.

기존 LLM에 데이터가 추가되는 것이다. 

엔진이 변경된다. 

변경된 엔진에 사용자가 질문하면 추가 학습된 내용으로 답변을 준다.

튜닝을 위한 학습 비용이 발생한다.




예)

파인 튜닝으로  법률 데이터 학습하는 과정.


1단계

데이터를 학습/훈련한다. 

기본 LLM 생성된다.


2단계

파인튜닝으로 법률 데이터를 추가 학습한다. 

새로운 LLM 엔진이 생성된다.

사용자는 추가 학습된 새로운 LLM에 질문하여 답변을 받는다.




<6> 랭체인은?


1

LLM을 이용한 애플리케이션 개발 프레임워크이다.



2

랭체인은 LLM과 외부 도구를 사슬처럼 결합시켜 주는 것.

외부도구들이 다양한 역할을 한다.

앵무새 = 학습된 데이터를 기반으로 만든 LLM모델.

체인 = LLM과 외부도구(웹사이트, PDF reader, 계산기등)를 체인으로 엮은 것처럼 결합해 주는 SDK.


3

 # 랭체인은 LLM과 외부 툴/에이전트를 결합해 주는 역할을 한다.




<7> 랭체인 주요 모듈 5가지 역할


1

1) 모델 I/O 모듈 기능. - 프롬프트 생성, API 호출, 답변 출력 등 

2) 데이터 연결 기능

3) 체인 기능

4) 메모리 기능

5) 에이전트 기능 



에이전트 기능은  외부와 연계하여 실시간 정보를 가져와 서비스를 할 수 있게 해 준다. 리얼타임이 중요한 경우 연동개발의 필수 요소이다.



<8> AI 개발 환경 구축법 4가지


실습을 위해 개발 환경을 구축해야 한다.

대부분 파이썬을 이용해 개발한다.

파이썬 실습 환경을 구축하는 방법을 알아보자.


1

구글 코랩 가입 


2

Windows PC에 아나콘다(파이썬)설치



3

Windows PC에 파이썬 설치, VSCode 설치



4

AWS Cloud9에 파이썬 설치

(aws에서 cloud9을 더이상 지원하지 않아, aws 신규 계정에서는 cloud9 사용불가)





<8> 요약


LLM이 무엇인지?

프롬프트 엔지니어링?

RAG?  검색해서 보강해서 생성한다.

파인 튜닝?  특징?

랭체인이 무엇인지?

랭체인 기능 5가지

AI 개발환경 구축법 4가지




다음

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


                    

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