KT에이블스쿨/수업 복습 정리

생성형AI (6일차) [KT 에이블스쿨] 2025.04.25(금)

PaperDrop 2025. 4. 25. 20:14

2025.04.25 (금)

 

 

 

오늘은 생성형 AI 마지막 날 !

마지막 날에는 LangChain과 RAG에 대해 배웠습니다.

 

이전에 말씀해주셨던 것처럼, 

초급은 엑셀, VBA code를 출력하는 것과 데이터 분석을 하는 AI를 생성하는 것,

중급은 GPTs 제작, Zapier/SerpAPI를 이용한 AI를 생성하는 것,

그리고 오늘 배우는 내용이 고급으로 이어지는 내용이라고 하셨습니다 ! 

 

근데 역시나.. 고급 내용은 너무 어려웠습니다.. 

오늘 내용은 LLM을 활용한 애플리케이션 개발을 쉽게하는 프레임 워크와

검색과 생성을 동시에 진행하여 응답 생성을 신속하게 해주는 툴을 배웠습니다 ! 

 

생소한 단어도.. 과정도 너무나도 많았던 힘든 시간이었습니다 .... 

너무나도 열심히 복습하고 싶지만,

내일 시험인 관계로.. 조금만 미뤄보겠습니다 ... ㅠ.ㅠ...

진짜 오늘 배운 내용은 ... 모든 개념과 과정부터 .. 

하나하나 찾아보고 공부해야 할 것 같은 느낌입니다...ㅎㅎㅎ.. 

 

그러면 그래도 개요만 먼저 ! 

복습해보겠습니다 ! :D

 

 


 

<LangChain>

1. LangChain 개요

○ LangChain

  : 대규모 언어 모델(LLM)을 활용한 애플리케이션 개발을 쉽게 만들기 위한 프레임워크

    → LLM 기반의 애플리케이션 설계, 구축, 운영 및 배포가 가능 ( 3단계 : 개발, 생산화, 배포)

 

1) Model I/O

  : LLM과의 기본적인 인터페이스 역할을 수행, 사용자가 입력한 프롬프트를 전달하고 이를 기반으로 응답을 생성

    → LangChain에선 OpenAI, Hugging Face, Claude 등 다양한 LLM 호출 가능

 

2) Memory

  : LangChain의 대화 상태 관리를 주관하는 역할 수행

    → Memory를 이용해야지만 이전 대화를 기억할 수 있음

 

3) Chain

  : 여러 개의 처리 단계를 하나의 체인으로 연결하여 자동화된 AI 워크플로우를 구축하는 개념

    → 단일 프롬프트 보다 툴을 조합해 정교한 응답 생성 가능

 

4) Tool

  : LLM이 단순한 텍스트 기반 응답을 넘어 실제 작업을 수행할 수 있도록 외부 API, DB 등과 연동하여 기능 확장을 지원

 

5) Agents

  : LLM이 단순한 체인 실행을 넘어 상황에 맞게 Tool을 선택하고 실행하여 복잡한 작업을 수행할 수 있도록 하는 기능

    → Tool을 동적으로 결정하고 활용하는 AI 시스템을 의미

 

6) Callbacks

  : LangChain 실행 과정을 실기간으로 추적하고 로깅하는 기능, LLM의 동작을 모니터링하고 성능을 분석하는 역할

 

※ 로깅(logging)

  : 정보를 제공하는 일련의 기록인 로그(log)를 생성하도록 시스템을 작동하는 활동

 

2. Model I/O

1) LLM 호출 기능 

  : 프롬프트 템플릿 활용, 응단 최적확를 위한 체인 구성, 메모리 활용

 

2) Message

  : AI 모델과의 대화에서 주고 받는 메시지 객체를 의미

 

① AIMessage : AI가 생성한 응답 메시지로 채팅 모델에서 반환된다.

     Ex) AIMessage(content='{ChatModel의 답변인 자기소개}') → 이후 추가 역할 수행을 위해 이 단계에서 대답 출력을 지정

② SystemMessage : 모델의 행동을 지정하는 역할을 한다.

     Ex) SystemMessage(content="당신은 인공지능 챗봇이 아니라, 내 친구 Alglue입니다.") → 이 역할로 대답을 생성한다.

③ HumanMessage : 사용자가 입력하는 질문(프롬프트)을 지정할 때 사용한다.

     Ex) HumanMessage(content="너는 누구니?") → AI가 이 질문에 대한 대답을 출력한다.

④ ChatMessage : 역할(role)을 지정하여 사람/AI 모두 사용할 수 있는 메시지이다.

→ 각 단계 별로 어떤 순서로 써야할지 잘 알고 있어야 한다.

 

3) Output Parser

  : LLM의 출력을 원하는 데이터 형식으로 변환하는 기능을 제공

    → 기본적으로 AI 모델의 응답은 자연어 텍스트(String) 형태로 제공되지만, 이를 JSON, 리스트, 숫자, Pydantic 모델 등의 형태로 변환하여 필요할 경우가 있음

    → 특히 API 응답 처리, 자동화 시스템 구축, 데이터 파이프라인에서 강력한 성능을 발휘

 

 

 


 

 

아 정말 어려운 수업이었습니다 ... 

앞 내용은 그래도 전문 지식이 별로 필요가 없어서 수월하게 들었는데,

역시 고급 과정으로 오니까 프로그래밍 지식이 많이 필요한거 같습니다..! 

 

그래도 천천히 복습하면서 최대한 잘 다루기 위해 노력해보려 합니다 ! :D

 

데이터 분석을 배우는 비전공자 분들 모두 어려우실 거라고 생각합니다 ..ㅠㅠ 

다들 화이팅 !! 

 

저는 이만 다른 개념 정리하러 가보겠습니다 .. ㅎㅎㅎ..