<div align="center">
plexe ✨
<img src="https://raw.githubusercontent.com/plexe-ai/plexe/HEAD/resources/backed-by-yc.png" alt="backed-by-yc" width="20%>
자연어 (Natural Language)를 사용하여 머신러닝 (Machine Learning) 모델을 구축하세요.
Quickstart |
Features |
Installation |
Documentation
<br>
plexe를 사용하면 평이한 언어로 모델을 설명함으로써 머신러닝 (Machine Learning) 모델을 생성할 수 있습니다. 원하는 내용을 간단히 설명하고 데이터셋을 제공하기만 하면, AI 기반 시스템이 자동화된 에이전트 방식 (Agentic Approach)을 통해 완전히 기능하는 모델을 구축합니다. 또한 관리형 클라우드 서비스 (Managed Cloud Service)로도 이용 가능합니다.
<br>
YouTube에서 데모를 시청하세요:
</div>
1. Quickstart
Installation
pip install plexe
export OPENAI_API_KEY=<your-key>
export ANTHROPIC_API_KEY=<your-key>
Using plexe
표 형식의 데이터셋 (Parquet, CSV, ORC 또는 Avro)과 자연어 의도 (Natural Language Intent)를 제공하세요:
python -m plexe.main \
--train-dataset-uri data.parquet \
--intent "predict whether a passenger was transported" \
...
from plexe.main import main
from pathlib import Path
...
2. Features
2.1. 🤖 Multi-Agent Architecture (멀티 에이전트 아키텍처)
시스템은 6단계 워크플로우 전반에 걸쳐 14개의 특화된 AI 에이전트를 사용하여 다음을 수행합니다:
- 데이터 분석 및 머신러닝 (ML) 작업 식별
- 적절한 평가 지표 (Evaluation Metric) 선택
- 가설 기반 반복 (Hypothesis-driven Iteration)을 통한 최적의 모델 탐색
- 모델 성능 및 강건성 (Robustness) 평가
- 배포를 위한 모델 패키징
2.2. 🎯 Automated Model Building (자동화된 모델 구축)
단 한 번의 호출로 완전한 모델을 구축하세요. Plexe는 표 형식 데이터 (Tabular Data)를 위해 XGBoost, CatBoost, LightGBM, Keras, 그리고 PyTorch를 지원합니다:
best_solution, metrics, report = main(
intent="predict house prices based on property features",
data_refs=["housing.parquet"],
...
모든 CLI 옵션은 python -m plexe.main --help를 실행하여 확인하세요.
출력물은 work_dir/model/에 위치한 독립형 모델 패키지입니다 (model.tar.gz로도 압축되어 있습니다).
이 패키지는 plexe에 대한 의존성이 없습니다. plexe로 모델을 빌드하고, 어디에서나 배포하세요:
model/
├── artifacts/ # 학습된 모델 + 피처 파이프라인 (pickle)
├── src/ # 추론 예측기 (Inference predictor), 파이프라인 코드, 학습 템플릿
...
2.3. 🐳 Batteries-Included Docker Images
PySpark, Java 및 모든 의존성이 포함되어 미리 구성된 상태로 plexe를 실행하세요.
일반적인 워크플로우를 위한 Makefile이 제공됩니다:
make build
make test-quick
make run-titanic
또는 직접 실행할 수 있습니다:
docker run --rm \
-e OPENAI_API_KEY=$OPENAI_API_KEY \
-e ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY \
...
프로젝트 루트의 config.yaml이 자동으로 마운트됩니다. Databricks Connect 이미지는 다음 명령어로 사용할 수 있습니다: docker build --target databricks .
2.4. ⚙️ YAML Configuration
설정 파일을 통해 LLM 라우팅 (routing), 검색 파라미터 (search parameters), Spark 설정 등을 사용자 정의할 수 있습니다:
max_search_iterations: 5
allowed_model_types: [xgboost, catboost]
...
CONFIG_FILE=config.yaml python -m plexe.main ...
사용 가능한 모든 옵션은 config.yaml.template을 참조하세요.
2.5. 🌐 Multi-Provider LLM Support
Plexe는 LiteLLM을 통해 LLM을 사용하므로, 지원되는 모든 제공업체(provider)를 사용할 수 있습니다:
hypothesiser_llm: "openai/gpt-5-mini"
feature_processor_llm: "anthropic/claude-sonnet-4-5-20250929"
...
[!NOTE]
Plexe는 대부분의 LiteLLM 제공업체에서 작동해야 하지만, 저희는 openai/* 및 anthropic/* 모델을 대상으로만 적극적으로 테스트하고 있습니다. 다른 제공업체에서 문제를 겪으신다면 저희에게 알려주세요.
2.6. 📊 실험 대시보드 (Experiment Dashboard)
내장된 Streamlit 대시보드를 사용하여 실험 결과, 탐색 트리 (search trees), 그리고 평가 보고서를 시각화하세요:
python -m plexe.viz --work-dir ./workdir
2.7. 🔌 확장성 (Extensibility)
WorkflowIntegration 인터페이스를 통해 plexe를 커스텀 스토리지 (storage), 트래킹 (tracking), 그리고 배포 인프라 (deployment infrastructure)에 연결하세요:
main(intent="...", data_refs=[...], integration=MyCustomIntegration())
전체 인터페이스는 plexe/integrations/base.py를 참조하세요.
3. 설치 (Installation)
3.1. 설치 옵션 (Installation Options)
프레임워크별 또는 작업 그룹별로 선택적 의존성 (optional dependencies)을 추가할 수 있습니다:
- 프레임워크 추가 기능 (Framework extras):
catboost, lightgbm, pytorch
- 작업 추가 기능 (Task extras):
tabular (CatBoost + LightGBM), vision (PyTorch)
- 플랫폼 추가 기능 (Platform extras):
pyspark, aws
예시:
pip install "plexe[tabular,pyspark]"
pip install "plexe[pytorch,aws]"
Python >= 3.10, < 3.13 버전이 필요합니다.
3.2. API 키 (API Keys)
export OPENAI_API_KEY=<your-key>
export ANTHROPIC_API_KEY=<your-key>
지원되는 모든 제공업체는 LiteLLM providers를 참조하세요.
4. 문서 (Documentation)
전체 문서는 docs.plexe.ai를 방문하세요.
5. 기여하기 (Contributing)
가이드라인은 CONTRIBUTING.md를 참조하세요. 팀과 소통하려면 저희 Discord에 참여하세요.
6. 라이선스 (License)
Apache-2.0 License
7. 인용 (Citation)
연구에 Plexe를 사용하신다면, 다음과 같이 인용해 주세요:
@software{plexe2025,
author = {De Bernardi, Marcello AND Dubey, Vaibhav},
title = {Plexe: Build machine learning models using natural language.},
...