배우기 · 6
저장하고 불러오기
체크포인트는 pickle 이 아니라 safetensors 다. 파이썬 borch·numpy· Hugging Face 도구가 같은 바이트를 읽는다 — 우리만 읽는 형식이면 절반을 버리는 것이다.
저장하고 불러오기
save 는 주는 것을 그대로 받아 바이트를 준다 — state dict 하나든,
모델과 옵티마이저와 에폭 수가 든 중첩된 객체 통째든. load 가 그
구조를 되돌린다. 파일시스템은 안 건드린다 — 브라우저에는 없다. 받는 것은
ArrayBuffer 이고, 내려받든 IndexedDB 에 넣든 그대로 load 에
돌려주든 쓰는 쪽 마음이다.
파이썬에서 저장하기
같은 체크포인트를 반대쪽 표면에서 쓴다. 안 바뀐 것을 보라 —
torch.save(sd, path) 가 여기서도 경로를 받는다. 교재가 적는 그대로다.
Pyodide 가 탭 안에서 파이썬에게 가상 파일시스템을 주기 때문인데, 당신 디스크에는
아무것도 안 닿고 코드는 그 사실을 알 필요가 없다.
그 표면의 나머지 — 이름을 어떻게 넘기는지, 불러오는 데 무엇이 드는지, 어디서 멈추는지 — 는 파이썬 페이지에 있다. 1강·2강·4강 은 한 블록에 두 언어를 담고 있으니 거기서 바꿔 가며 견줘 볼 수 있다.