이전 업데이트를 확인하신 분들을 위해 마지막으로 안내드립니다: https://www.reddit.com/r/LocalLLaMA/comments/1wvyc3e/update_3_post_training_yandexaliceai80ba3b/
프로젝트 요약: ALiceAI-80B-A3B-Base를 에이전트 작업과 대화가 가능한 지시문 기반(instruct)으로 파인튜닝하는 것입니다. 저는 모델에게 사고의 연쇄(chain of thought reasoning)와 대화 능력을 가르치기 위해 qwen 3.8 27b를 medium 위에서 얕은 증류(shallow distill)하고 있습니다. 모든 학습은 3개의 V100s (각 32GB) 로컬 환경에서 진행됩니다. 또한, 모든 학습 데이터는 sftmill을 통해 해당 V100s에서 로컬로 생성되고 있습니다. 지금까지 저는 학습 실행을 하고 그 진행 상황을 라이브 스트리밍 해왔습니다.
음, 제가 라운드 1 SFT를 성공적으로 완료하고 테스트할 수 있게 되었습니다.
좋은 소식: 모델이 사고의 연쇄 추론을 올바르게 습득하고 대화하듯 응답할 수 있는 것 같습니다.
나쁜 소식: 지시문 기반 SFT 데이터가 충분하지 않거나, 제대로 과적합(underfit)되었습니다. 체크포인트 #1은 기술적으로는 작동했지만, 사실상 쓸모가 없습니다. 제가 추정한 초기 5백만 토큰으로는 모델에게 일반적인 대화 능력을 제대로 가르치기에는 폭이 부족했습니다. 따라서 학습 데이터에 정확히 일치하지 않는 모호한 질문이나 프롬프트가 들어오면, 배울 수 있는 모호한 데이터가 충분하지 않아 출력 결과가 뒤섞여 나옵니다.
다음 단계는 무엇일까요?
저는 체크포인트 #1(우리가 1.0 알파라고 부를 것입니다)은 사실상 쓸모가 없기 때문에 공개하지 않기로 결정했지만, 첫 작동하는 버전을 여전히 공개할 예정입니다. 저는 여러 기본 URL에서 데이터를 가져올 수 있는 옵션을 추가하여 로컬 합성 데이터 생성기의 속도를 80tps에서 총 약 240tps로 높였기 때문에 더 많은 증류 데이터가 들어오고 있습니다 [현재 4개의 병렬 워커를 가진 3개의 개별 인스턴스에서 생성 중입니다.
저는 다시 약 5백만 토큰 분량의 추가 데이터셋을 만들 것이지만, 이번에는 원래 코딩 중심 버전이 아니라 훨씬 더 광범위한 일반 지시문 방향으로 분산할 것입니다. 저는 체크포인트 1.0 알파를 기반으로 학습률을 낮춰서 훈련시키고, 좀 더 유능한 버전으로 나올 수 있기를 바랍니다.
훈련 진행 상황에 대해 다시 업데이트하겠습니다. 원하신다면 라이브 스트림을 또 할 수도 있지만, 아직 보여드릴 것이 많지 않다고 생각해서 초기 작동 가능한 체크포인트가 나올 때까지는 이것이 마지막 업데이트가 될 것 같습니다. 하지만 커뮤니티의 관심이 있다면 기꺼이 공유할 의향은 있습니다.
전에 언급한 적이 있지만, 관심 있는 분들을 위한 리소스가 있습니다: 이 프로젝트를 시작했을 때 행동 목표(behavioral goal)로부터 훈련 데이터를 매우 쉽게 생성할 수 있게 해주는 오프폴리시 증류 엔진(off-policy distillation engine)을 만들었습니다. 예를 들어, 일반적인 지시 모델(general instruct model)이 필요하다면 -> 원시 훈련 데이터(raw training data)를 얻을 수 있습니다. 저는 이를 OSS 포크로 만들어 https://github.com/jackjusko/sftmill 에서 공개했습니다.
팔로우해 주셔서 감사합니다!
제출자 /u/jjusko20
[링크] [댓글]