관리 메뉴

너와 나의 스토리

[요즘 우아한 AI 개발] Part 3 내용 및 용어 정리 본문

Data Analysis/LLM

[요즘 우아한 AI 개발] Part 3 내용 및 용어 정리

노는게제일좋아! 2025. 7. 9. 13:58
반응형

 

LLM 기반 ReAct 방법

  • LLM 기반의 프롬프트 설계 기법.
  • 모델이 추론(Reasoning)과 행동(Action)을 반복하며 문제를 해결하도록 설계된 방식.
  • 주로 지식 기반 시스템이나 에이전트 설계에서 사용되며, 모델이 논리적으로 문제를 해결하는 동시에 외부 도구(예: 검색기, 계산기 등)를 활용해 최적의 답을 도출할 수 있도록 한다.
  • LLM 기반 ReAct 방법은 다양한 벤치마크에서 모방 학습과 강화 학습에 비해 더 높은 답변 성능을 보여준다고 한다. 

 

ReAct 방법

  • ReAct 방법은 문제 해결 과정을 위한 순차적 추론 단계(chain-of-thought, COT)와 특정 작업 수행을 위한 도구 또는 행동으로 나뉜다.

 

라고스(Regas)

  • RAG 파이프라인을 평가하는 프레임워크. 
  • 외부 데이터를 사용해 LLM의 컨텍스트를 확장하는 응용 프로그램을 평가하는 데 필요한 다양한 평가 지표를 제공.

 

 

폴라스로 데이터 처리를 더 빠르고 가볍게

Apache Spark

  • 대규모 데이터 처리를 위한 분산 컴퓨팅 프레임워크로, 빠르고 확장 가능한 데이터 처리 및 분석을 지원한다.
  • 스파크는 메모리 내에서 데이터를 처리하여 기존의 하둡(MapReduce)보다 훨씬 빠르게 데이터를 처리할 수 있으며, 데이터 스트리밍, 머신러닝, 그래프 분석 등 다양한 기능을 제공한다.

 

Trio

  • 분산 SQL 쿼리 엔진으로, 여러 데이터 소스에서 데이터를 통합하여 실시간으로 쿼리할 수 있는 기능을 제공한다. 
  • 원래 PrestoSQL로 알려져 있었으며, 다양한 데이터베이스나 데이터 레이크에 걸쳐 효율적인 분석을 수행할 수 있는 오픈 소스 도구이다. 

 

S3(아마존 Simple Storage Service)

  • AWS에서 제공하는 확정성 높은 객체 스토리지 서비스.
  • S3는 데이터를 파일 형태로 저장하며, 무제한의 데이터 저장을 지원하고 안정적인 백업, 데이터 아카이빙, 웹 애플리케이션 호스팅 등의 용도로 사용된다.

 

-> 대용량 분산 처리가 필요한 부분은 트리노나 스파크 기반 SQL을 사용해 1차 전처리를 하고, 이를 테이블 형태 또는 S3 내에 파일 형태로 저장한다.

 

 

폴라스 등장 배경

  • 스파크의 문제점
    • 대용량 데이터가 아닐 때는 오히려 오버헤드 발생(슬로우 스타트 문제)
    • 비용 효율성이 낮다(비싼 리소스)
    • 러닝 커브 존재
  • 즉 데이터를 분석하고 처리하는 데에 있어 판다스는 너무 느리고 무겁고, 스파크는 과함.
  • 원하는 것
    • 로컬 환경에서도 편하게 개발 및 테스트가 가능
    • 별다른 인프라 필요 없음
    • 성능 좋고, 러닝 커브 적은 것
    • 아파치 에어플로 환경 또는 컨테이너 기반으로 잘 패키징해서 운영 데이터 파이프라인에서 문제없이 돌릴 수 있는 것

 

Polars

  • 빠르고 효율적인 데이터 프레임 라이브러리.
  • 특히 대용량 데이터를 처리하는 데 최적화된 성능을 제공한다. 
  • Rust로 작성된 폴라스는 판다스와 비슷한 기능을 제공하지만, 멀티스레딩을 활용해 더 빠른 연산 속도를 자랑하며, 메모리 효율성을 극대화합니다. 
    • 안전한 동시성과 병렬 처리 가능
    • 메모리 캐싱과 재사용성 높음
  • 판다스의 대안으로 주목받고 있으며, 특히 데이터 크기가 클수록 성능 차이가 두드러진다.

 

아파치 애로우(Apache Arrow) 모델

  • 대규모 데이터를 효율적으로 처리하기 위한 칼람 기반 인메모리 형식으로, CPU 캐시 효율을 극대화하고 벡터화 연산을 지원한다.
  • 이를 통해 다양한 시스템과 언어 간 데이터 공유를 빠르게 메모리 복사 없이 할 수 있다.

 

SIMD(Single Instruction, Mltiple Data)

  • 단일 명령어로 여러 데이터를 동시에 처리하는 컴퓨터 아키텍처.
  • 주로 벡터 연산에서 사용되며, 같은 연산을 여러 데이터에 병렬로 수행함으로써 처리 성능을 크게 향상시킨다.

 

Zero-copy

  • 데이터를 복사하지 않고, 동일한 메모리 공간을 여러 프로세스나 시스템이 공유하여 직접 접근하는 방식.

 

 

출처

- [요즘 우아한 AI 개발]

 
반응형
Comments