원문 캡처 · huggingface.co
원문 캡처 · huggingface.co

허깅페이스 블로그의 유브라지 샤르마(Yuvraj Sharma)와 아부바카르 아비드(Abubakar Abid)는 HuggingChat의 ML Intern 모드를 이용해 며칠 동안 맞춤형 모델 6종을 만들었다. 데이터 준비와 학습, 평가, 허깅페이스 허브 공개까지 맡긴 결과 총 컴퓨팅 비용은 약 103달러였다고 소개했다.

글의 사례에서는 감귤 병해 진단 모델, 캐릭터 그림 생성용 LoRA, 이미지의 시점을 바꾸는 LoRA, 낙서 자리에 물체를 채우는 LoRA, 작은 이미지 프롬프트 재작성 모델, 네 단계로 이미지를 만드는 모델을 다룬다. 이는 블로그 글에 소개된 제작 사례와 평가 결과이며, 다른 환경에서도 같은 결과나 비용이 나온다는 보장은 제시하지 않는다.

글에 따르면 Qwen-Image 2.1에 포함된 프롬프트 재작성 모델은 9B 규모로 메모리 약 20GB가 필요하고, 한 문단을 출력하기 전에 수천 토큰을 처리한다. 허브에서 찾을 수 있었던 것은 같은 9B 모델을 압축한 사본뿐이었다. 이에 ML Intern에 작은 버전을 요청했고, 다음 날 CPU에서 실행되는 0.8B 모델을 만들었다. 이 모델은 99.7%의 비율로 유효한 출력을 냈고, 교사 모델 토큰의 약 4분의 1을 사용했다. 9B 모델이 예시 요청 8,797건에 라벨을 붙이는 작업을 포함해 전체 컴퓨팅 비용은 16달러였다고 설명했다.

ML Intern은 작업 계획을 세우고 지출 전에 예산을 물으며, 본 작업에 앞서 소규모 테스트를 수행한 뒤 학습·평가·공개를 진행한다. 이 과정은 허깅페이스의 하드웨어에서 이뤄졌다.

프롬프트와 비용 관리

샤르마는 첫 요청문을 작성하는 데 가장 많은 노력을 들였다고 설명했다. 감귤 모델의 첫 프롬프트는 약 450단어였고, 여섯 번째 프로젝트에서는 앞선 작업에서 배운 내용을 반영해 약 2,000단어로 늘었다. 일곱 개 프로젝트에 사용한 프롬프트는 GitHub 저장소에 원문 그대로 공개했다.

프롬프트에는 먼저 아이디어와 만들려는 이유를 한 줄로 적고, 사용할 데이터셋·기반 모델·학습 스크립트 등 구체적인 구성 요소를 지정한다. 이미 확인한 사실은 ‘Verified facts, do not re-derive’라는 제목 아래 적어 에이전트가 알고 있는 사실을 다시 확인하는 데 예산을 쓰지 않도록 했다. 카메라 시점 LoRA 요청에는 투명 이미지 지원을 막 추가한 학습 도구와 대체 도구를 위험하게 만드는 GitHub 미해결 이슈를 적었다.

샤르마는 모든 학습 전에 기준 성능을 측정하도록 요청하는 것이 중요하다고 강조했다. 감귤 모델 프롬프트에는 “학습 전 같은 지표에서 기반 모델의 제로샷 점수도 보고해 향상 정도를 확인하라”는 지시가 있었다. 이 기준이 없으면 모델을 학습하고도 기존 모델보다 나아졌는지 알기 어렵다는 설명이다. 이미지 LoRA에는 본 학습에 앞서 50단계만 학습하는 스모크 테스트를 요청하고, 저장된 가중치가 실제로 바뀌었는지 확인하도록 했다.

프롬프트 끝에는 결과물과 비용 상한을 적었다. 모델 카드에 담을 내용을 지정하고, “총 지출을 12달러로 제한하고 이를 넘기기 전에 내게 물어보라”는 식으로 요청했다. ML Intern은 모든 작업을 0달러 예산으로 시작하며 유료 작업을 실행하기 전에 허가를 받아야 한다. 예산을 정하지 않으면 프로젝트 규모에 맞는 방법 몇 가지를 제안하고 선택을 요청한다.

첫 시도부터 모든 항목을 넣을 필요는 없었다. 감귤 모델 요청에는 확인된 사실을 따로 정리하지 않았지만, ML Intern은 Qwen3.5-2B의 정확도를 세 배 넘게 높인 모델을 만들었다고 글은 전한다. 이어지는 사례의 수치와 결과는 해당 프로젝트에서 보고한 내용이다.

감귤 병해와 캐릭터 모델

일반적인 비전 모델은 잎이 노랗게 변한 감귤나무를 묘사할 수 있지만, 원인이 응애인지 마그네슘 부족인지 구분하고 유기농·비유기농 대처법까지 알려주기는 어렵다. 샤르마는 Claude를 사용해 허깅페이스 허브의 Project-AgML 조직이 제공한 세 데이터 소스에서 학습 데이터를 구성했다. 결과물인 citrus-disease-vlm-instruct 데이터셋은 21종의 해충·질병·영양 결핍·치료 접근법을 담은 주석 이미지 3,017장으로 이뤄졌다.

ML Intern은 이 데이터로 Qwen3.5-2B를 미세조정하고, 학습 전에 기반 모델의 성능도 측정했다. 시험 사진 335장 가운데 문제의 원인을 맞힌 비율은 기반 모델에서 14.9%, A10G 한 대로 두 에포크를 학습한 모델에서 52.8%였다. 컴퓨팅 비용은 약 1.90달러였다. 모델, 데이터셋, Citrus Doctor 앱을 공개했다.

이미지 모델은 여러 캐릭터를 알고 있지만, 허깅페이스 브랜드 그래픽의 평면 스타일로 그린 캐릭터 Huggy는 알지 못했다. 이에 FLUX.2 klein base 4B용 LoRA를 만들도록 요청했다. 학습 데이터는 Chunte/huggy_for_training 데이터셋의 설명이 붙은 그림 84장이었다.

에이전트는 100단계마다 체크포인트를 저장하고, 각 체크포인트로 같은 프롬프트를 생성했다. 200단계에서 Huggy가 모델의 스타일에 제대로 반영되기 시작했고, 500단계부터는 Huggy와 무관한 프롬프트에도 그 스타일이 나타났다. 학습한 LoRA는 4단계로 실행되는 증류 klein 모델에서도 작동했다. 컴퓨팅 비용은 약 7.60달러였다. 모델, 데이터셋, Huggy Generator 앱에서 결과를 확인할 수 있다.

이미지 편집과 시점 변경 LoRA

카메라 시점 LoRA는 앞선 Qwen-Image 모델에서 인기가 높은 커뮤니티 추가 기능 가운데 하나다. 물체 사진을 넣고 왼쪽에서 45도 각도로 본 모습으로 바꾸도록 요청하는 식이다. Qwen-Image 2.1이 출시된 지 며칠 뒤에도 이런 기능을 하는 모델이 없자, 샤르마는 ML Intern에 제작을 맡겼다.

ML Intern은 Google Scanned Objects의 스캔 가정용 물체 1,030개를 24개 각도에서 렌더링해 투명 이미지 24,722장을 만들었다. CPU 작업 비용은 몇 센트였다. 이후 학습용 물체 461개와 시험용 물체 40개를 정하고, 23가지 카메라 지시문에 고르게 나눠진 전후 이미지 쌍 1,844개를 만들었다. 학습은 A100 한 대에서 2,000단계를 약 90분 동안 진행했고 비용은 약 3.75달러였다.

실패한 작업과 누락된 패키지·잘못된 경로 때문에 재제출한 작업까지 포함해 프로젝트에는 반나절가량과 작업 48건이 들었다. 총 컴퓨팅 비용은 약 16달러였다. 모델, 데이터셋, Viewpoint Orbit 앱을 공개했다.

또 다른 아이디어인 Doodle-in LoRA는 사진에 자홍색 낙서를 한 뒤 물체 이름을 짧은 프롬프트로 입력하면, 원래 조명과 구도를 유지하면서 낙서를 해당 물체로 바꾸는 기능이다. 이를 위한 데이터셋이 없어 프롬프트에 생성 절차를 설명했다. Open Images의 실제 사진에서 LaMa 인페인팅 모델로 물체 하나를 지우고, 그 자리에 낙서를 그린다. 수정 전 원본 사진은 목표 이미지로 사용한다.

ML Intern은 CPU 샌드박스에서 이미지 쌍 생성 스크립트를 작성하고 시험한 뒤 GPU 작업으로 실행했다. 각 원본 사진의 작성자와 라이선스도 기록했다. 학습 쌍 6,042개와 시험 쌍 160개를 만들었으며, 시험 데이터 중 40쌍은 학습에서 완전히 제외한 23개 물체 종류에서 가져왔다.

학습 전에는 기반 모델과 Viggle turbo LoRA를 결합한 모델의 성능을 각각 측정했다. 이미지 편집을 묶음으로 실행해도 결과가 같다는 점도 확인해 평가 비용을 낮췄다. A100 한 대에서 2,000단계를 1시간 38분 동안 학습하는 데 약 4달러가 들었다. 시험 쌍 48개에서 체크포인트를 비교해 500단계를 선택했다.

Viggle turbo LoRA와 함께 6단계로 실행했을 때 낙서한 자리에 물체가 생성된 비율은 67.5%였고, 편집 한 번에 4.7초가 걸렸다. 학습에 없던 23개 종류도 나머지 종류와 비슷한 비율로 생성됐다(65.0% 대 64.2%). 프로젝트는 하루를 조금 넘게 걸렸고 작업은 59건이었다. 총 컴퓨팅 비용은 약 24달러였다. 모델, 데이터셋, Doodle-in 앱을 제공한다.

작은 기기에서 실행하는 모델

첫 번째 사례인 Pocket Rewriter는 작은 지시형 모델을 Inference Providers로 실행해 짧은 이미지 요청 8,797건을 생성하는 것으로 시작했다. 프롬프트에서 사진·포스터·로고·인포그래픽 등을 섞도록 정했으며, 약 3분의 1은 따옴표 안의 정확한 문구를 요구했고 다수는 영어가 아닌 언어로 작성됐다. 이후 9B 교사 모델이 A100 한 대에서 2시간 37분 동안 모든 요청을 다시 썼다. 비용은 약 6.50달러였다. 품질을 걸러 학습 데이터 1,840건을 골랐다.

0.8B와 2B 학생 모델을 학습하는 데 A10G에서 각각 12분, 18분이 걸렸고 두 모델을 합친 비용은 0.75달러였다. 0.8B 모델은 CPU 실행용 812MB GGUF 파일로도 제공된다. 프로젝트에는 약 11시간과 작업 24건이 들었으며 전체 컴퓨팅 비용은 약 16달러였다. 0.8B 학생 모델, 2B 학생 모델, 데이터셋, Pocket Studio 앱, Rewriter Arena 비교를 이용할 수 있다.

두 번째는 Agate-Preview-002-4step이다. Logolabs의 Agate Preview 002는 매개변수 2억 6,000만 개의 텍스트-이미지 모델로 브라우저에서 실행할 만큼 작지만, 가이던스를 사용하면 이미지 하나를 만드는 데 50단계, 즉 네트워크 통과 100회가 필요하다. 샤르마는 이를 네 번의 통과로 줄여 달라고 요청했다.

첫 학습에서는 이미지 15만 5,000장의 잠재 표현을 캐시하고 가이던스를 모델에 반영한 다음, A100에서 단계를 16·8·4로 차례로 줄였다. ML Intern이 보고한 평가에서 네 단계 학생 모델은 같은 네 단계로 실행한 교사 모델보다 GenEval과 FID 점수가 좋았다. 이후 브라우저에서 실행할 수 있도록 ONNX로 내보냈다. 첫 학습에는 약 13시간과 22달러가 들었다.

두 번째 학습에서는 네 단계 학생 모델을 더 개선하도록 요청했다. 교사 모델을 16단계로 실행해 이미지 쌍 2만 4,000개를 추가 생성하고, 이를 사용해 학생 모델을 약 한 시간 동안 미세조정했다. GenEval 점수는 0.509에서 0.536으로 올랐다. 교사 모델은 50단계에서 0.563을 기록했다. 학생 모델은 연산량의 4분의 1로 네 단계만 실행했다. ML Intern은 브라우저용 모델도 다시 내보냈다. 두 번째 학습에는 약 8시간이 걸렸고, 두 차례 학습의 컴퓨팅 비용은 총 약 37달러였다. Agate 4-step 모델, 데이터셋, 브라우저에서 실행하는 데모, Agate 4-step LIVE에서 결과를 볼 수 있다.

프로젝트별 컴퓨팅 비용

모델기반 모델컴퓨팅 비용
Citrus DoctorQwen3.5-2BUSD 1.90
Huggy LoRAFLUX.2 klein base 4BUSD 7.60
Pocket rewriter (0.8B and 2B)Qwen3.5-0.8B and 2BUSD 16.05
Viewpoint Orbit LoRAQwen-Image 2.1USD 16
Doodle-in LoRAQwen-Image 2.1USD 24.30
Agate 4-step (two runs)Agate Preview 002USD 37
합계약 USD 103

비용은 각 세션에서 보고된 GPU·CPU 작업 요금이다.

ML Intern을 사용하려면 HuggingChat에서 ML Intern 모드를 켜고 프롬프트를 입력하면 된다. 시작점이 필요하면 예시 프롬프트를 복사해 사용할 수 있다. 만들고 싶은 모델과 보유했거나 설명할 수 있는 데이터셋을 정하고, 작은 예산과 기준 성능 측정, 스모크 테스트를 요청한 뒤 결과를 확인하고 나서 비용 상한을 높이는 방법을 제안했다.