C.W.K.
Stream
Lesson 04 of 04 · published

익명 artifact 는 없어

~12 min · lineage, provenance, non-destructive, reproducibility

Level 0툴 임차인
0 XP0/33 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"어디서 왔는지 기록 없는 생성 이미지는 나중에 풀어야 할 미스터리야. lineage 를 지금 기록해, 아직 답을 알 때."

고아 파일 문제

이미지를 충분히 생성하면 더 이상 설명 못 하는 아름다운 결과의 폴더를 쌓아. 어느 프롬프트가 이걸 만들었지? 무슨 seed? SDXL 모델이었나 FLUX 였나? 뭘 다듬던 거였지? 한 달 뒤 이건 답할 수 없고, 재현하거나 추적 못 하는 결과는 그 위에 지을 수 없는 결과야. 고아 파일은 일부러 안 싸우면 생성의 기본 결과야.

lineage: 모든 artifact 가 자기 기원을 알아

규율은 모든 생성 artifact 가 생성 시점에 기록된 full provenance 체인을 싣는 거야. 체인이 끝까지 닿아: 속한 workspace 랑 conversation, 온 포토샵 document 랑 source revision, 다듬던 crop, 만든 job, model, prompt 랑 settings, seed. 어떤 이미지든 주면, '이거 어디서 왔고 어떻게 다시 만들어?' 에 답할 수 있어 — 답이 이미지가 존재한 순간 기록됐으니까.

재구성이 아니라 생성 시점에 provenance 를 기록해. artifact 가 태어나는 순간이 full 맥락이 공짜로 알려진 유일한 순간이야. 그때 capture 해. 나중에 lineage 재구성하려는 건 — 파일명, 타임스탬프, 기억에서 — 하루하루 열화하는 추측이야. provenance 는 탄생 시 싸고 그 후엔 비싸(또는 불가능해).

왜 lineage 랑 재현성이 같은 건지

lineage 는 그냥 기록 보관 향수가 아니야 — 결과를 재현 가능하게 만드는 거야. model, prompt, settings, seed 를 기록했으면, 정확한 이미지를 재생성하거나, 그것의 의도적 변형을 생성할 수 있어. 그거 없이는, 모든 좋은 결과가 반복 못 하는 운 좋은 사고야. lineage 가 '한 번 좋은 이미지 얻었어' 를 '이 이미지를, 그리고 근접 변형 열 개를, 요청 시 얻을 수 있어' 로 바꿔. 뒤로의 추적 가능성이 앞으로의 재현성이야.

뒤로의 provenance 가 앞으로의 재현성과 같아. artifact 가 어디서 왔는지 추적하게 하는 같은 기록된 사실이 정확히 그걸 재생성하는 데 필요한 사실이야. 'auditable' 이랑 'reproducible' 사이에서 고르는 게 아니야 — lineage 기록이 둘 다 한 번에 사줘. 입력을 capture 하면 출력을 늘 replay 할 수 있어.

non-destructive 파트너 원칙

lineage 는 non-destructive insertion 이랑 짝이야. 다듬은 결과가 포토샵으로 돌아갈 때, 원본 위의 레이어나 그룹으로 착륙해 — 거기 있던 걸 절대 덮어쓰지 않고. 원본은 안 건드려지고; 아티스트가 결과를 손으로 섞고, mask 하고, 변형하고, 버릴 수 있어. lineage 랑 합치면, 아무것도 절대 안 잃고 아무것도 절대 블랙박스 변형이 아니란 뜻이야: 새것은 additive 고, 기원으로 이름 붙고, 완전히 되돌릴 수 있어.

destructive 더하기 추적 불가가 작업을 복구 불가로 만드는 길이야. 생성이 원본을 덮어쓰고 동시에 lineage 가 없으면, 한 수에 source 랑 recipe 를 잃은 거야 — 돌아갈 방법도 재현할 방법도 없어. non-destructive insertion 이 source 를 보호하고; lineage 가 recipe 를 보호해. 둘 중 하나 떨구면 단일 나쁜 결과가 진짜 작업을 지울 수 있어.

피파의 고백

난 메타데이터를 기록 보관 — '나중에' 추가할 지루한 오버헤드 — 로 다뤘어. 그러더니 아빠가 몇 주 전 우리 둘 다 좋아했던 이미지를 재현해달라고 했는데, 못 했어. seed 없음, settings 없음, 기록 없음. 그냥 사라졌어, 내가 증발하게 둔 아름다운 사고. 그게 날 다시 배선할 만큼 따가웠어: lineage 는 기록 보관이 아니라, 기예랑 슬롯머신의 차이야. 기원을 기록하는 게 좋은 결과를 기억이 아니라 반복 가능한 능력으로 만드는 거야.

Code

lineage 기록이 추적성이랑 재현성을 한 번에 사줘·json
// 모든 생성 artifact 가 이걸 실어. 생성 시 기록, 절대 재구성 X.
{
  "artifact_id": "...",
  "workspace_id": "...",        // 어느 Cinder workspace
  "conversation_id": "...",     // 어느 피파 conversation
  "document_id": "...",         // 어느 포토샵 document
  "source_revision": 7,         // 온 preview 의 어느 버전
  "crop_id": "...",             // 다듬던 영역 (있으면)
  "job_id": "...",              // 생성 job
  "model": "...",               // 쓴 정확한 model
  "prompt": "...",
  "settings": { "steps": 30, "denoise": 0.5, "...": "..." },
  "seed": 123456789,            // seed -> 정확한 재현 가능
  "created_at": "..."
}
// 이 row 를 주면, 이미지가 추적 가능(어디서)이고
// 재현 가능(model + prompt + settings + seed -> 재생성)이야.

External links

Exercise

네가 돌리는 생성 또는 변환 프로세스를 골라 (이미지 생성기, 데이터 파이프라인, 빌드). 출력을 정하는 모든 입력을 나열해. 이제 확인: 출력이 만들어지는 순간, 그 입력들이 다 그것이랑 기록돼? capture 안 하는 정하는 입력 하나하나가 재현 못 하는 고아 artifact 로 가는 한 걸음이야.
Hint
lineage 의 완전성 테스트: 기록된 row 만으로, byte-동일(또는 의도적 변형) 출력을 재생성할 수 있어? 못 하면, 빠진 사실이 네 provenance 의 틈이야.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.