데이터 노트

[LLM & RAG & AI Agent] 각각의 정의, 특징, 구성요소 및 작동 방식을 이해해보자. 본문

AI & ML

[LLM & RAG & AI Agent] 각각의 정의, 특징, 구성요소 및 작동 방식을 이해해보자.

돌돌찐 2024. 11. 26. 23:14

회사에서 LLM을 위한 ETL 파이프라인을 만드는 프로젝트에 참여하게 되었다.

아직은 시작 단계는 아니지만, 관련 용어들에 대한 기본적인 정의가 부족한 듯 하여, 내용을 정리하게 되었다.


LLM

정의

  • LLM(Large Language Model) : 대규모 언어 모델
  • 방대한 양의 텍스트 데이터를 학습하여 인간의 언어를 이해하고 생성할 수 있는 AI 모델

특징

  • 대규모 데이터 학습 : 수십 테라바이트의 텍스트 데이터로 학습된다.
  • 언어 이해 및 생성 : 자연어를 이해하고 생성할 수 있다.
  • 다목적성 : 다양한 언어 관련 작업을 수행할 수 있다.

작동 방식

  • 트랜스포머 아키텍처
    • LLM은 주로 트랜스포머라는 신경망 아키텍처를 기반으로 한다.
  • 자기 주의 메커니즘 (self-attention 메커니즘)
    • 트랜스포머 모델은 자기 주의 메커니즘을 사용하여 텍스트의 맥락을 이해한다.
  • 딥러닝
    • 여러 층의 신경망을 통해 데이터 패턴을 학습한다.
  • 확률적 예측
    • 학습한 패턴을 바탕으로 다음에 올 가능성이 높은 단어나 문장을 예측한다.
  • 파인튜닝
    • 특정 작업에 맞게 추가 학습을 통해 성능을 최적화한다.

⇒ 그런데 AI 모델이란 대체 뭘까?


AI 모델

정의

  • 대량의 데이터를 학습하여, 특정 작업을 수행하거나 예측을 생성하는 알고리즘 기반 시스템.
  • 인간의 개입 없이 자율적으로 패턴을 인식하고 결정을 내릴 수 있다.

구성

데이터 모델 학습에 사용 되는 대규모 데이터 세트
알고리즘 데이터를 처리하고 패턴을 학습하는 수학적 로직
학습된 패턴 알고리즘이 데이터에서 추출한 특정 패턴이나 규칙
파라미터 모델의 성능을 조정하는 변수들

 

작동 방식

  1. 데이터 입력 : 대량의 데이터를 모델에 입력한다.
  2. 패턴 인식 : 알고리즘이 데이터에서 패턴과 관계를 파악해낸다.
  3. 학습 : 인식된 패턴을 바탕으로 모델이 학습을 수행한다.
  4. 예측 또는 의사결정 : 학습된 내용을 바탕으로 새로운 데이터에 대한 예측이나 결정을 수행한다.

유형

머신러닝 모델 (ML 모델) 데이터를 기반으로 학습하여 예측이나 결정을 수행.
딥러닝 모델 (DL 모델) 심층 신경망을 사용하여 복잡한 패턴을 학습.
규칙 기반 모델 미리 정의된 규칙에 따라 결정을 내린다.

 

⇒ 그럼 이제 LLM 모델과 같이 많이 나오는 용어, RAG에 대해 알아보자.


RAG

정의

  • RAG(Retrieval-Augmented Generation)
  • LLM의 성능을 향상시키기 위해 외부 지식을 활용하는 기술

구성 요소

Query/Prompt 사용자의 입력 쿼리나 프롬프트
Retriever 지식 베이스에서 관련 정보를 검색하는 컴포넌트
Knowledge Base 검색될 정보를 포함하는 외부 데이터 소스
LLM 쿼리와 검색된 정보를 바탕으로 출력을 생성하는 강력한 언어 모델

 

작동 방식

  1. 사용자의 쿼리를 받는다.
  2. Retriever가 지식 베이스에서 관련 정보를 검색한다.
  3. 검색된 정보와 원래 쿼리를 LLM에 입력한다.
  4. LLM이 이 정보를 바탕으로 응답을 생성한다.

⇒ 그럼 모든 것과 연관 혹은 기반이 되는 생성형 AI에 대해서도 정리해보자.


생성형 AI

정의

  • 텍스트 뿐만 아니라 이미지, 음성, 음악 등을 생성해내는 AI 모델 통칭
  • 모든 생성형 AI가 텍스트를 입력값 / 출력값으로 가지는 것은 아니다.

주요 용어

  • 프롬프트
    • 질문.
    • 어떻게 질문을 잘하느냐에 따라 출력값이 달라지기 때문에 ‘질문. 프롬프트’가 중요.
  • 파라미터 (매개변수)
    • 모델들이 얼마나 정교하고 다양한 질문에 대답을 해주는지 가늠을 해주는 중요한 지표
    • 파라미터 개수가 많을수록 다양한 질문에 대해 정교하게 상황에 맞는 최적의 답변을 해준다.
    • 예시로, GPT3이 1750억, GPT4가 1조개 이상, 라마 80/800/4000억 …
    • 10억 = Billion → 80B, 70B, 400B 로도 표한한다.
  • 토큰
    • AI 모델 입장에서 이해하는 가장 작은 텍스트 단위
    • 가장 기본적인 과금 단위
  • 파운데이션 모델 / 파인튜닝
    • 파운데이션 모델 : LLM 그 자체.
    • LLM 이다 하면 파운데이션 모델이 기반이 된다.
    • 질보다는 많은 양과 시간이 중요. GPT3 자체가 파운데이션 모델.
    • 만드는데 비용도 비싸고 시간도 많이 소요 된다.
    • 파인 튜닝은 파운데이션 모델을 기반으로 특정 목적에 맞게 추가 학습을 시킨 모델.
    • 모델 뒤에 ~instruct라고 붙는 경우가 많다.
    • gpt3가 파인튜닝이 되어서 chat gpt.
    • 빠르면 하루 만에도 만들 수 있음.
  • 컨텍스트 길이
    • LLM이 입력값으로 받아들일 수 있는 최대 토큰 수.
    • 예를 들어, chatgpt 같은 경우, 1번 채팅방에서 내이름을 알려주고 그 다음 질문을 하면 대답을 해주는데 그것은 학습된 것이 아니라 chatgpt가 동작할 때 앞의 대화 내용까지 다 문맥 전체를 인풋으로 주기 때문에 가능한 것. 2번 채팅창에서 내 이름 뭐야라고 질문하면 답 못함.
    • 입력값이 받아들일 수 있는 토큰 수가 많을 수록 더 최적화된 답변을 해 줄수 있다.

그래서 초반에는 파인튜닝으로 LLM 자체를 정교하게 하는 것에 집중했다면, 그건 시간과 비용도 많이 들기 때문에 컨텍스트 길이를 늘려 입력값을 풍부하게 하려고 하고 있고, 그 다양한 방법 중 대표적인데 RAG.

 

⇒ 그럼 AI Agent라는 것은 뭘까?


▪︎ AI Agent

정의

  • 인공지능 기술을 활용하여 자율적으로 작업을 수행하고 의사결정을 내릴 수 있는 지능형 소프트웨어 시스템

특징

  • 자유렁 : 인간의 직접적인 개입 없이 독립적으로 의사결정하고 행동할 수 있다.
  • 환경 인식 : 센서를 통해 주변 환경을 인식하고 데이터를 수집한다.
  • 목표 지향성 : 주어진 목표를 달성하기 위해 계획을 수립하고 실행한다.
  • 학습 능력 : 경험을 통해 지속적으로 학습하고 성능을 개선한다.

구성 요소

센서(Sensors) 환경으로부터 데이터를 수집하는 인터페이스
프로세서(Processors) 수집된 데이터를 처리하고 의사결정을 수행
액추에이터(Actuators) 결정된 행동을 실제로 실행하는 구성요소
지식베이스(Knowledge Base) 에이전트가 보유한 정보와 경험을 저장

 

작동 방식

  1. 인식 : 데이터 피드, 사용자 입력, 센서 등을 통해 주변 환경을 감지합니다1.
  2. 의사결정 : 인식한 데이터를 기반으로 AI가 의사결정을 내립니다1.
  3. 실행 : 결정이 내려지면, 직접 이메일을 보내는 등 실제 액션을 취합니다

예시

아래 글 내에 기재되어있는 예시들을 보면 AI 에이전트에 대해 보다 이해하기 좋았다.

https://app.dalpha.so/blog/ai-agent/

 


LLM, RAG, AI Agent를 이해하고 이에 필요한 데이터를 적재하기 위한 데이터 플로우를 만드는 것에 대해 공부해나가자.