본문 바로가기

SK네트웍스 Family AI캠프 10기/Monthly 회고

[플레이데이터 SK네트웍스 Family AI 캠프 10기] 4개월차 회고

4개월 차 학습

 

 

1. Fine Tuning

 

DeepSpeed

  • 오픈 소스 딥러닝 최적화 라이브러리
  • 주요 기능
    • Model Scale
      • 대규모 모델 분산 학습
    • Speed
      • 병렬 처리로 학습 속도 향상
    • Scalability
      • 확장 가능한 학습 지원
    • Usability
      • 메모리 중복 제거 등 편의성 제공

 

Accelerate

  • Hugging Face 제공 분산 훈련 설정 및 실행을 간소화하는 라이브러리

 

Prompt

  • AI 모델에게 원하는 응답을 얻기 위한 명령 또는 질문
  • 종류
    • Hard Prompt
      • 명확하고 구체적인 지시
    • Soft Prompt
      • 유연하고 개방적인 지시
    • Prompt Tuning
      • Pre-trained 모델 고정
      • 입력 벡터만 학습
    • Prefix Tuning
      • 모델 파라미터 고정 
      • 문장 앞에 프롬프트 벡터 추가

 

PEFT(Parameter-Efficient Fine Tuning)

  • LLM을 효율적으로 파인튜닝하는 기법
  • 계산량 및 메모리 절약
  • 주요 방식
    • Quantization
      • 모델 가중치 정밀도 감소
    • Adapter Modules
      • 기존 모델에 소형 모듈 삽입
    • LoRA(Low Rank Adaptation)
      • 저차원 행렬 추가
    • QLoRA(Quantized LoRA)
      • LoRA + 4-bit 양자화 적용

 

GGUF(Georgi Gerganov Unified Format)

  • 다양한 프레임워크에서 사용할 수 있는 LLM 저장 통합 포맷

 

PPO(Proximal Policy Optimization)

  • 강화학습 기반 최적화 알고리즘
  • 구성
    • Actor Model
      • 텍스트 생성
    • Critic Model
      • 보상 예측

 

DPO(Direct Preference Optimization)

  • 강화학습 없이도 사용자 선호 반영 학습

 

LLM 평가지표

  • 기계적 평가지표
    • BLEU(BiLingual Evaluation Understudy)
      • 기계 번역 n-gram 일치율 기반 평가
    • ROUGE(Recall-Oriented Understudy for Gisting Evaluation)
      • 요약 결과 정답과의 유사도 평가
    • METEOR(Metric for the Evaluation of Machine Translation Output)
      • 정렬 및 의미 기반 번역 평가
    • BERT Score
      • 문장 의미 유사도 평가
    • Sem Score
      • 의미론적 유사성 평가

 

 

2. 프롬프트 엔지니어링

 

LangChain

  • LLM 기반 애플리케이션 구축 프레임워크
  • 주요 모듈
    • Model I/O
      • LLM 호출 인터페이스
    • Data Connection
      • 외부 데이터 연결
    • Chains
      • 기능 모듈 연결
    • Agents
      • 도구 사용 및 상호작용
    • Memory
      • 대화/정보 저장
    • Callbacks
      • 체인 실행 과정 추적

 

Prompt 구성 요소

  • PromptTemplate
    • 단일 프롬프트 생성
  • ChatPromptTemplate
    • 대화 기반 멀티 프롬프트 생성

 

 

3. RAG

 

RAG

  • LLM에 외부 문서 검색 기능을 결합해 답변의 정확성 향상
  • 특징
    • 확장성
    • 정확성
    • 제어 가능성
    • 설명 가능성
    • 범용성

 

Native RAG

  • Loader
    • 문서 불러오기
    • page_content, metadata를 포함
  • Splitter
    • 문서 분할
      • 토큰 제한 대응
  • Vector DB
    • 임베딩 저장 및 유사도 기반 검색
    • Indexing > Querying > Post Processing의 순서로 동작

 

Advanced RAG

  • Retriever
    • 질문과 유사한 문서 검색
  • Reranker
    • 의미 기반 정렬 최적화

 

Modular RAG

  • LangSmith
    • 앱 테스트/모니터링/배포 도구
  • Tools
    • 명령어로부터 함수 자동 호출
  • LangGraph
    • 상태 유지 및 복잡한 에이전트 흐름 설계 가능

 

 

4. MCP

 

MCP

  • 다양한 컨텍스트를 효율적으로 사용할 수 있도록 설계된 개방형 LLM 프로토콜
  • 여러 툴 및 서비스와 연동 가능

 

 

5. Docker

 

Docker

  • 컨테이너 기반 애플리케이션 구축/배포 플랫폼
  • 구성 요소
    • Client
      • 명령 전달
    • Host
      • Docker 데몬 실행
    • Registry
      • 이미지 저장소

 

Network 모드

  • bridge
    • 동일 호스트 내 통신
  • host
    • 호스트 네트워크 공유
  • overlay
    • 다중 호스트 네트워크 연결

 

Docker Compose

  • 여러 컨테이너를 하나의 서비스로 관리
  • docker-compose.yml 파일로 구성 관리

 

 

6. Linux

 

Linux

  • 오픈소스 유닉스 계열 운영체제
  • 구조
    • Application
    • Shell
      • 사용자 인터페이스
    • Kernel
      • 하드웨어 제어
    • Hardware

 

 

7. HTML

 

HTML

  • 웹 페이지의 구조 정의
  • 구성 요소
    • Element
      • 태그로 감싸진 콘텐츠
    • Tag
      • 시작/종료 표시
    • Content
      • 실제 보여지는 내용

 

 

8. CSS

 

CSS

  • HTML 문서에 스타일과 레이아웃 적용

 

CSS 프레임워크

  • Bootstrap
  • Tailwind CSS

 

 

9. JavaScript

 

JavaScript

  • 웹에 동적인 기능을 부여하는 프로그래밍 언어
  • 사용자 인터랙션, DOM 제어 등에 활용

 

 

10. Django

 

MTV 패턴

  • Model
    • 데이터 구조 및 비즈니스 로직 정의
    • DB와 직접 상호작용
  • Template
    • 사용자에게 보여지는 화면 정의
    • HTML + Django 템플릿 언어 사용
  • View
    • 사용자 요청처리 및 응답 반환 
    • 필요한 데이터를 Model에서 조회 후 Template에 전달

 

Django 동작 원리

  • Client
    • 사용자가 웹 브라우저에서 요청 전송
  • Web Server
    • 정적 파일은 직접 응답
    • 동적 요청은 WAS로 전달
  • WAS Server(Django)
    • View에서 요청 처리
    • Model과 상호작용
    • Template을 통해 결과 생성
  • Database
    • 실제 데이터 저장소

 

 

11. AWS

 

IAM(Identity and Access Management)

  • AWS 리소스에 대한 접근 제어 서비스
  • 구성 요소
    • 사용자(User)
      • 개별 사용자 계정
    • 그룹(Group)
      • 사용자 계정의 묶음
      • 동일한 권한 일괄 부여
    • 역할(Role)
      • 일시적으로 권한을 위임하기 위한 역할
    • 정책(Policy)
      • JSON 형식의 권한 문서
      • 허용/거부 규칙 정의

 

EC2

  • AWS의 대표적인 가상 서버 서비스
  • 리눅스 또는 윈도우 기반 인스턴스 생성 가능
  • 웹 서버, 데이터베이스, 애플리케이션 서버 등 다양한 용도로 활용

 


4개월 차 회고

 

 

Keep

 

  • 꾸준히 운동을 해서 체력을 더 키워야겠다.
  • 빅데이터분석기사 필기 시험을 통과했고, 이제 실기 시험을 준비해야 한다.

 

 

Problem

 

  • 이제 마지막 단위 프로젝트가 시작되고 최종 프로젝트가 남았는데 내가 잘 해낼 수 있을지 걱정이 된다.
  • 나에게 있어서 해야할 일들의 우선순위가 정리되지 않았다.

 

 

Try

 

  • 코딩 테스트 준비를 매일 조금씩 해야겠다.
  • 내가 할 수 있는 최선을 다해서 프로젝트에 참여해야겠다.
  • 나에게 있어서 우선순위를 정해야겠다.