EdgeFoundry 소개
EdgeFoundry는 로컬 환경에서 AI 모델을 배포, 모니터링, 관리할 수 있는 통합 DevOps 플랫폼입니다. TinyLlama, Phi-3 Mini 같은 경량 GGUF 모델을 대상으로 단순 실행 이상의 기능을 제공하며, 개발자가 모델 로딩, API 서버 구성, 성능 모니터링 등 번거로운 작업을 따로 신경 쓰지 않아도 되도록 만들어졌습니다. 이 프로젝트의 핵심 가치는 “로컬에서 간단하고 직관적으로 AI 모델을 실행하고 운영할 수 있는 경험”을 제공하는 데 있습니다.
일반적으로 로컬 AI 모델을 활용하려면 다양한 라이브러리 설치, 실행 환경 설정, 대시보드 구성까지 여러 단계를 거쳐야 합니다. 하지만 EdgeFoundry는 이를 하나의 패키지로 묶어 CLI 한 줄 명령어로 모델 배포부터 실시간 모니터링까지 처리할 수 있습니다. FastAPI 기반의 API 서버와 React 기반의 대시보드를 포함해, 개발자가 곧바로 실험과 운영을 시작할 수 있도록 돕는 것이 특징입니다.
EdgeFoundry 플랫폼은 실시간 성능 추적, 모델 전환, 로컬 우선(Local-first) 설계라는 세 가지 키워드를 중심으로 발전하고 있습니다. 이를 통해 클라우드 의존성을 줄이고, 경량 모델 기반의 빠른 응답과 저비용 운영을 가능하게 합니다. 특히 연구, 개인 프로젝트, 기업 내부 테스트 환경 등 다양한 활용 시나리오에서 유용하게 쓰일 수 있습니다.
기존에는 로컬에서 모델을 실행하려면 llama.cpp 같은 경량 실행기와 별도의 모니터링 툴을 조합하거나, 클라우드 API를 활용하는 방식이 주류였습니다. 하지만 이 방식은 설정이 번거롭고 통합 관리가 어렵다는 단점이 있습니다.
EdgeFoundry는 이러한 불편을 해결하기 위해 모델 관리, API 서버, 실시간 대시보드, 텔레메트리(telemetry) 시스템을 한 곳에 통합했습니다. 결과적으로 Docker 기반 배포보다 가볍고, Hugging Face API 기반보다 독립적이며, llama.cpp 단독 실행보다 운영 효율이 높습니다.
EdgeFoundry의주요 기능
-
원클릭 모델 배포: EdgeFoundry는 CLI 명령어 한 줄로 GGUF 모델을 실행 환경에 배포할 수 있습니다. 초기화, 모델 다운로드, 배포까지 모두 일관된 워크플로우로 제공되어 초보자도 쉽게 사용할 수 있습니다.
-
실시간 대시보드: React 기반 대시보드를 통해 지연시간(latency), 초당 토큰 처리량(tokens/sec), 메모리 사용량 등 주요 지표를 실시간 차트로 확인할 수 있습니다. 또한 모델 전환 기능이 내장되어, 실행 중에도 즉시 다른 모델로 변경할 수 있습니다.
-
텔레메트리 시스템: 성능 추적을 위한
telemetry.py가 포함되어 있으며, 장기적인 추세 분석과 성능 비교를 위한 데이터가 자동으로 수집됩니다. SQLite 기반 로컬 데이터베이스를 사용하기 때문에 외부 서버에 의존하지 않고 데이터를 관리할 수 있습니다. -
API 서버: FastAPI 기반으로 구현된
agent.py는 모델 추론(inference), 상태 점검(health check), 모델 전환(switch) API를 제공합니다. 따라서 CLI뿐 아니라 REST API를 통해 다른 애플리케이션과 연동할 수 있습니다.
EdgeFoundry 설치 및 사용
EdgeFoundry 설치는 GitHub 저장소를 복제하여 의존성을 설치하는 방식으로 진행됩니다:
git clone https://github.com/TheDarkNight21/edge-foundry.git
cd edge-foundry
pip install -r requirements.txt
설치 후에는 모델 초기화 및 배포를 진행합니다:
# EdgeFoundry 초기화
python cli.py init
# 예시 모델(TinyLlama 1B) 모델 다운로드
python download_demo_models.py --model tinyllama-1b-3bit
# 다운로드 받은 모델 배포
python cli.py deploy --model ./models/tinyllama-1.1b-chat-v1.0.Q8_0.gguf
배포 후에는 에이전트 및 대시보드를 실행하여 모니터링할 수 있습니다:
# 에이전트 실행
python cli.py start
# 대시보드 설치 및 실행
cd dashboard && npm install && npm start
이제, CLI 및 API 방식으로 위 모델을 호출(inference)하고 결과를 확인할 수 있습니다:
# CLI 방식으로 추론 실행
python cli.py inference "Hello, how are you?"
# REST API를 사용하여 추론 실행
curl -X POST "http://localhost:8000/inference" \
-H "Content-Type: application/json" \
-d '{"prompt": "What is the capital of France?", "max_tokens": 64}'
응답은 다음과 같이 반환됩니다:
{
"response": "The capital of France is Paris. Paris is the largest city in France and serves as the country's political, economic, and cultural center.",
"processing_time": 1.23,
"model_info": {
"model_path": "./models/tinyllama-1.1b-chat-v1.0.Q8_0.gguf",
"runtime": "llama_cpp",
"device": "local",
"max_tokens": 64,
"temperature": 0.7
}
}
지원 모델
TinyLlama 1B와 Phi-3 mini 모델을 지원하고 있으며, 사용자 정의 GGUF 모델을 만들어 실행할 수 있습니다:
| Model | Parameters | Quantization | Context | Use Case |
|---|---|---|---|---|
| TinyLlama 1B | 1.1B | Q8_0 | 2K | Fast responses, low memory |
| Phi-3 Mini | 3.8B | Q4_K_M | 4K | Balanced performance |
| Custom GGUF | Any | Any | Any | Your models |
라이선스
EdgeFoundry 프로젝트는 MIT 라이선스로 공개 및 배포되고 있습니다. 상업적 사용을 포함한 대부분의 활용이 자유롭습니다.
EdgeFoundry 프로젝트 GitHub 저장소
이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. ![]()
파이토치 한국 사용자 모임
이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일
로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)
아래
쪽에 좋아요
를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ ![]()
