ludwig-ai/ludwig

Low-code framework for building custom LLMs, neural networks, and other AI models

What it solves

Ludwig는 AI 모델을 학습, 파인튜닝 및 배포하기 위해 복잡한 보일러플레이트 Python 코드를 작성할 필요성을 없앱니다. 사용자는 간단한 YAML 설정 파일을 통해 모델 아키텍처, 학습 파라미터 및 데이터 입력을 정의할 수 있어, 깊은 코딩 전문 지식 없이도 딥러닝을 보다 넓은 범위의 작업에 활용할 수 있습니다.

How it works

Ludwig는 선언형 접근 방식을 사용합니다. 사용자는 YAML 파일에 "무엇을"(예: 입력 피처, 출력 피처, 모델 타입)을 지정하고, "어떻게"(학습 루프와 데이터 파이프라인)는 프레임워크가 처리합니다. 프레임워크는 PyTorch 구현, 데이터 로딩, 학습 및 평가를 자동으로 수행합니다. 다양한 백엔드를 지원하여 로컬 실행에서 Ray 클러스터나 다중 GPU 설정으로의 분산 학습으로 최소한의 설정 변경만으로 전환할 수 있습니다.

Who it’s for

Ludwig는 데이터 과학자와 AI 실무자를 위해 설계되어 실험 사이클을 가속화하고, 표형, 멀티모달 또는 LLM 작업에 대해 방대한 코드를 작성하지 않고도 고성능 모델을 구축하려는 비전문가에게도 적합합니다.

Highlights

  • Comprehensive LLM Support: 감독형 파인튜닝(SFT), DPO 및 GRPO와 같은 정렬 기법, 그리고 다양한 PEFT 어댑터(LoRA, DoRA 등)와 양자화 방법을 포함합니다.
  • Multimodal Capabilities: 텍스트, 이미지, 오디오, 숫자, 시계열 데이터 등 혼합 입력을 네이티브하게 처리합니다.
  • Production Ready: REST API, vLLM, Ray Serve, KServe를 통한 모델 서빙 도구를 제공하고, SafeTensors와 ONNX로의 내보내기를 지원합니다.
  • Automated Tooling: LLM 기반 설정 생성기, 최적 모델 조합을 탐색하는 AutoML, Optuna와 Ray Tune을 통한 하이퍼파라미터 최적화를 통합합니다.