최근에 회사 프로젝트에서 우리 도메인에 맞게 LLM을 파인튜닝해야 할 상황이 생겨서 처음으로 직접 해봤어요. 처음엔 간단할 거라고 생각했는데 생각보다 신경 쓸 게 정말 많더라고요.
일단 데이터 준비 단계에서 시간을 정말 많이 썼어요. 학습 데이터를 수집하고 정제하는 과정이 예상보다 훨씬 오래 걸렸거든요. 우리 도메인 특성에 맞게 데이터를 구성해야 하는데, 라벨링 품질도 중요하고 데이터 밸런스도 신경 써야 하고... 프롬프트 엔지니어링만 해봤던 사람 입장에서는 정말 다른 차원이었어요. 그리고 처음엔 몇 천 개 데이터면 충분할 줄 알았는데 제대로 된 성능을 내려면 최소 1만 개 이상은 필요한 것 같아요.
학습 자체도 까다롭더라고요. 베이스 모델 선택부터 시작해서 러닝레이트, 배치 사이즈, 에포크 수 같은 하이퍼파라미터 튜닝이 정말 번거웠어요. 같은 데이터로도 파라미터에 따라 결과가 확 달라지니까 여러 번 실험을 해야 했는데, 계산 비용도 생각보다 많이 나왔어요. GPU 시간이 생각보다 비싸더라고요. ㅠㅠ 결국 회사에서 A100 써서 겨우 돌렸는데 개인이라면 쉽지 않을 것 같아요.
그나마 다행인 건 요즘 파인튜닝 라이브러리들이 좋아졌다는 거예요. Hugging Face의 Transformers나 PEFT 같은 도구 쓰니까 처음부터 구현하는 것보다는 훨씬 수월했어요. LoRA 같은 파라미터 효율적인 방법도 있어서 비용을 조금 아낄 수 있었고요. 다음엔 처음부터 LoRA로 시작할 걸 그랬네요.
결국 파인튜닝은 정말 실험과 반복의 연속이라는 걸 느꼈어요. 프롬프트 엔지니어링은 빠르게 결과를 볼 수 있는데, 파인튜닝은 좀 더 체계적이고 긴 호흡으로 접근해야 하는 것 같습니다. 비슷한 거 시도하려는 분 계신가요? 팁이나 경험담 있으면 공유 부탁드려요.