Hugging Face 생태계 내에서 문서를 깊이 활용하고 논문(papers), 데이터셋(datasets), 클라우드 컴퓨팅(cloud compute)에 접근하여 고품질의 ML 관련 코드를 자율적으로 연구, 작성 및 배포하는 ML 인턴입니다.
git clone [email protected]:huggingface/ml-intern.git
cd ml-intern
uv sync
uv tool install -e .
ml-intern
프로젝트 루트에 .env 파일을 생성하거나(또는 쉘에서 다음 환경 변수를 내보내기 하십시오):
ANTHROPIC_API_KEY=<사용자-anthropic-api-key> # anthropic 모델 사용 시
HF_TOKEN=<hugging-face-token>
GITHUB_TOKEN=<github-personal-access-token>
HF_TOKEN이 설정되지 않은 경우, CLI는 첫 실행 시 붙여넣도록 요청합니다. GITHUB_TOKEN을 얻으려면 여기의 튜토리얼(tutorial)을 따르십시오.
대화형 모드 (채팅 세션 시작):
ml-intern
헤드리스 모드 (단일 프롬프트, 자동 승인):
ml-intern "my dataset에 llama 파인튜닝하기"
옵션:
ml-intern --model anthropic/claude-opus-4-6 "프롬프트 내용"
ml-intern --max-iterations 100 "프롬프트 내용"
ml-intern --no-stream "프롬프트 내용"
┌─────────────────────────────────────────────────────────────┐
│ 사용자/CLI │
└────────────┬─────────────────────────────────────┬──────────┘
│ 작업(Operations) │ 이벤트(Events)
↓ (user_input, exec_approval, ↑ submission_queue interrupt, compact, ...) event_queue
│ │
↓ │
┌────────────────────────────────────────────────────┐ │
│ submission_loop (agent_loop.py) │ │
│ ┌──────────────────────────────────────────────┐ │
│ │ 1. 큐에서 작업 수신 │ │
│ │ 2. 핸들러로 라우팅 (run_agent/compact/...) │ │
│ └──────────────────────────────────────────────┘ │
│ ↓ │ │
┌────────────────────────────────────────────────────┐ │
│ Handlers.run_agent() │ ├──┤
│ │ │ │ │
│ │ ┌────────────────────────────────────────┐ │ │ │
│ │ │ 에이전트 루프 (Agentic Loop) (최대 300회 반복) │ │ │ │
│ │ │ │ │ │ │
│ │ │ ┌──────────────────────────────────┐ │ │ │ │ │
│ │ │ │ 세션(Session) │ │ │ │ │ │
│ │ │ │ ┌────────────────────────────┐ │ │ │ │ │
│ │ │ │ │ ContextManager │ │ │ │ │ │
│ │ │ │ │ • 메시지 기록 (Message history)
│ │ │ │ │ (litellm.Message[]) │ │ │ │ │ │
│ │ │ │ │ • 자동 압축(Auto-compaction) (170k) │ │ │ │ │ │
│ │ │ │ │ • HF에 세션 업로드 │ │ │ │ │ │
│ │ │ └────────────────────────────┘ │ │ │ │ │ │
│ │ │ │ │ │ │ │
│ │ │ │ ┌────────────────────────────────────────┐ │ │ │ │ │
│ │ │ │ │ ToolRouter │ │ │ │ │ │
│ │ │ │ │ ├─ HF 문서 및 연구 (HF docs & research) │ │ │ │ │ │
│ │ │ │ │ ├─ HF 리포지토리, 데이터셋, 작업(jobs), 논문 (papers) │ │ │ │ │ │
│ │ │ │ │ ├─ GitHub 코드 검색 (GitHub code search) │ │ │ │ │ │
│ │ │ │ │ ├─ 샌드박스 및 로컬 도구 (Sandbox & local tools) │ │ │ │ │ │
│ │ │ │ │ ├─ 계획 수립 (Planning) │ │ │ │ │ │
│ │ │ │ │ └─ MCP 서버 도구 (MCP server tools) │ │ │ │ │ │