요즘 혼자 AI 공부하면서 기본적인 프롬프트 엔지니어링은 이해가 되는데, 이제 좀 더 깊게 들어가서 내 데이터로 모델을 파인튜닝해보고 싶거든요. 근데 생각보다 정보가 많아서 어디서부터 시작해야 할지 헷갈리네요.
일단 제가 이해하고 있는 건 LoRA라는 게 파라미터를 줄여서 효율적으로 학습시킨다는 거랑, Hugging Face에서 모델을 다운로드받아서 학습할 수 있다는 정도인데, 실제로 노트북에서 작은 데이터셋으로 파인튜닝을 한 번 해보려고 합니다. 혹시 이 정도 수준에서 꼭 필요한 라이브러리나 프레임워크가 뭔지 궁금해요.
PEFT, Transformers, PyTorch 이 정도를 쓰면 되는 건가요? 아니면 다른 조합이 더 나을까요? 그리고 제 GPU 메모리가 그렇게 넉넉하지 않아서 (RTX 3060Ti 정도) 실제로 파인튜닝이 가능할지도 좀 걱정되네요. 혹시 이 정도 사양으로 성공하신 분 계신가요?
또 하나 궁금한 게 학습할 데이터 포맷이 어떻게 되어야 하는지도 모르겠어요. 그냥 CSV 파일에 텍스트가 들어있으면 되는 건가요, 아니면 특정한 JSON 포맷이 필요한가요?
너무 초보적인 질문이라 미안하지만, 이 분야 경험 있으신 분들 조언 부탁드릴게요. 혹은 좋은 튜토리얼이나 깃허브 레포가 있으면 추천해주셔도 좋겠습니다.
3060Ti면 충분히 가능합니다. 제가 같은 사양에서 해봤는데 배치 사이즈 4 정도로 줄이고 gradient accumulation 쓰면 잘 돌아가더라고요.
라이브러리는 정확히 말씀하신 조합이 맞습니다. PEFT + Transformers + PyTorch면 기본은 커버가 돼요. 다만 학습 편의성 때문에 저는 bitsandbytes 추가해서 int8 양자화도 함께 썼거든요. 메모리 압박이 있으면 고려해볼 만합니다.
데이터 포맷은 보통 JSONL이 많은데, instruction-input-output 구조로 만들어두면 여러 라이브러리에서 바로 적용 가능해요. CSV도 변환하면 되지만 처음부터 JSONL로 구성하는 게 나을 겁니다.