시드 트레인과 계보의 시작을 모델링하기
📍 현재 위치: 제III부 · 모델링된 업스트림 — 제10장. 레시피는 공장 현장에 있습니다. 이제 정보가 행동이 됩니다. 바이알 하나가 해동되고, 세포가 자라며, 바로 이 특정 배치의 계보가 엣지 하나하나씩 쓰이기 시작합니다.
제II부는 지식 — 분자, 세포주, 설계 공간, 이식 가능한 레시피 — 을 모델링했습니다. 제III부는 사건(event)을 모델링합니다. 한 배치를 실제로 만들어 내는 일, 그리고 그 배치 고유의 구체적인 계보 말입니다. 그 시작은 극적이지 않습니다. 기술자가 WCB-CHO-001 바이알 하나를 해동하고, 그 몇백만 개의 세포를 점점 더 큰 용기들을 거쳐 생산 바이오리액터(production bioreactor)를 접종하는 데 필요한 수십억 개로 어르고 달래 키워내는 일이죠. 이 시드 트레인(seed train)은 은행에 보관된 세포주에서 생산으로 이어지는 다리이며, 이 책 전체가 가리켜 온 캠페인의 첫 번째 진짜 derivedFrom 엣지가 마침내 놓이는 곳입니다.
씨앗 하나로 솥을 채울 수는 없습니다. 컵에서 모종을 키우고, 화분으로 옮기고, 그다음 모판으로, 그리고 밭으로 옮깁니다. 옮김 하나하나가 전과 후가 있는 진짜 단계이고, 밭의 식물들은 모판과 화분을 거쳐 그 첫 모종까지 거슬러 올라갑니다. 시드 트레인(seed train)은 세포를 위한 그 단계적 키우기이며, 그것을 모델링한다는 것은 옮김 하나하나를 한 용기의 세포를 다음 용기의 세포로 바꿔 놓는 사건으로 기록하는 것입니다 — 그래야 생산 배치가 한 단계씩 거슬러 올라가 자신이 시작된 바이알까지 자기 혈통을 추적할 수 있습니다.
이 장에서 다루는 내용
우리는 시드 트레인을 증식 프로세스(expansion process)(EXP-001, EXP-002)의 사슬로 모델링합니다. 각 프로세스는 하나의 세포 재료를 소비해 더 큰 재료를 만들어 내는 점유체(occurrent)이며, 특정 캠페인의 첫 번째 derivedFrom 엣지를 놓습니다. 우리는 SEEDFLASK-001과 SEED-001 노드를 해부하고, 세포 은행에서 시작된 계대 수를 앞으로 이어 나르며(12, 그다음 16, 검증된 한계 40에 대비해), 이 장의 진짜 모델링 퍼즐과 마주합니다. 연속적인 생물학적 증식이 어떻게 이산적인 그래프 노드 몇 개로 표현되는지, 그리고 그 경계선을 어디에 그어야 하는지 말입니다.
각 증식은 새로운 재료를 만드는 프로세스다
시드 트레인은 일련의 규모 확대입니다. 셰이크 플라스크로 해동해 넣고, 작은 바이오리액터로 증식시키고, 그다음 더 큰 것으로 옮기며, 생산을 접종할 만큼의 세포가 모일 때까지 계속됩니다 [1]. 이것을 깔끔하게 모델링하는 방법은 제I부의 중추에서 본 연속체(continuant)/점유체(occurrent) 구분을 그대로 사용합니다. 각 규모 확대는 증식 프로세스(expansion process) — 하나의 점유체 — 이며, 이전 단계의 세포(물질 개체, material entity)를 입력으로 가지고 더 큰 집단(새로운 물질 개체)을 출력으로 만들어 냅니다. 세포는 그 증식에 participate in(참여)하고, 그 증식은 다음 단계의 재료를 hasOutput(출력으로 가짐)합니다. 이것들을 줄줄이 엮으면 시드 트레인은 프로세스의 사슬이 되며, 각 프로세스는 자신의 산물을 다음 프로세스의 입력으로 건네줍니다.
계보는 여기서 거저 따라 나옵니다. 각 단계의 출력 재료가 이전 단계로부터 derivedFrom(유래)하고, 첫 단계는 해동된 WCB-CHO-001 바이알에서 유래하므로, 캠페인의 혈통은 세포 은행에 뿌리내린 derivedFrom 사슬이 됩니다 — SEEDFLASK-001 derivedFrom WCB-CHO-001, SEED-001 derivedFrom SEEDFLASK-001, 그리고 나중에는 BATCH-2026-001 derivedFrom SEED-001. 결과물은 시드 트레인을 하나가 아니라 두 개의 진짜 증식 단계로 모델링합니다. 셰이크 플라스크 배양물(SEEDFLASK-001)과 시드 바이오리액터 배양물(SEED-001)이며, 각각은 자기 자신의 ExpansionProcess의 출력입니다. 이것들은 오픈소스 로더가 써 넣는 바로 그 구체적인 엣지들입니다 — 다만 그 로더의 거친 lot_genealogy.csv 사슬은 이 온톨로지가 보존하는 셰이크 플라스크 중간 단계를 납작하게 합칩니다. 여기서 우리는 그 엣지들이 왜 존재하는지를 봅니다 — 각각은 임의의 연결이 아니라 실제 물질 변환의 흔적입니다. 그리고 derivedFrom은 추이적(transitive)이므로, 그 사이에 증식 단계가 몇 개나 있든 상관없이 생산 배치는 자동으로 세포 은행에서 유래합니다. 이것들은 캠페인의 첫 번째 구체적인 엣지이며, 로드 가능한 데이터셋이 써 넣는 것과 정확히 일치합니다.
# instances.ttl — the seed train: two real expansion stages, accumulating passage.
bp:SEEDFLASK-001 a bp:ShakeFlaskCulture ; rdfs:label "shake-flask seed culture" ;
bp:derivedFrom bp:WCB-CHO-001 ; # rooted in the cell bank
bp:participatesIn bp:EXP-001 ;
bp:passageNumber 12 .
bp:SEED-001 a bp:SeedBioreactorCulture ; rdfs:label "SEED-001 (seed bioreactor culture)" ;
bp:derivedFrom bp:SEEDFLASK-001 ; # ...one hop back to the shake flask
bp:participatesIn bp:EXP-002 ;
bp:passageNumber 16 . # the count carried forward, checkable at release
bp:EXP-001 a bp:ExpansionProcess ; rdfs:label "shake-flask expansion" ;
bp:hasInput bp:WCB-CHO-001 ; bp:hasOutput bp:SEEDFLASK-001 ; bp:occursIn bp:SF-01 .
bp:EXP-002 a bp:ExpansionProcess ; rdfs:label "seed-bioreactor expansion" ;
bp:hasInput bp:SEEDFLASK-001 ; bp:hasOutput bp:SEED-001 ; bp:occursIn bp:SBR-01 .
bp:BATCH-2026-001 bp:derivedFrom bp:SEED-001 . # ...and so, transitively, back to WCB-CHO-001
캠페인의 첫 번째 계보 엣지: 각 증식은 하나의 세포 재료를 다음 재료로 바꾸는 프로세스이며, 계대 수는 검증된 한계 40 미만에 머무르면서 8에서 12, 16으로 올라가고, 생산 배치는 작업 세포 은행까지 추이적으로 거슬러 올라간다.
저자가 AI의 도움을 받아 직접 제작한 그림입니다.
계대 수는 세포와 함께 이동한다
세포주 장은 이제 하중을 떠받치게 될 한 가지 사실을 소개했습니다. 계대(passage)(또는 세대) 수는 품질 위험이 높아지기 전까지 세포를 얼마나 오래 키울 수 있는지를 한정합니다 [2]. 시드 트레인은 그 수가 누적되는 곳입니다 — 각 증식이 세대를 더합니다 — 그래서 모델은 그 수를 derivedFrom 사슬을 따라 앞으로 이어 나르며, 단계마다 증가시킵니다. 이로써 그래프는 진짜 GMP 질문 — 이 배치는 검증된 계대 한계 안에 있는 세포로 접종되었는가? — 에 실험 노트에서 손으로 재구성하는 대신 질의(query)로 답할 수 있습니다. 뿌리에서 확립된 사실(검증된 계대 범위)이 트레인을 따라 누적된 사실(실제 횟수)과 만나고, 출하 관문이 나중에 하나를 다른 하나에 비추어 확인할 수 있습니다. 시드 트레인은 화려하지 않지만, 출처 정보의 핵심 조각이 보존되느냐 잃어버려지느냐가 결정되는 곳입니다.
펼쳐 본 시드 트레인: 해동된 바이알을 생산을 접종할 만큼의 세포로 바꾸는 증식 프로세스의 사슬, 세포 은행에 뿌리내린
derivedFrom 엣지, 그리고 출하 관문이 확인할 수 있는 곳까지 앞으로 운반되는 계대 수.
저자가 AI의 도움을 받아 직접 제작한 그림입니다.
미해결 과제: 연속적이고 살아 있는 증식을 이산화하기
깔끔한 사슬이 감추고 있는 퍼즐이 여기 있습니다. 시드 트레인은 실은 이산적인 사건의 연속이 아닙니다. 그것은 연속적인 성장, 매일 분열하고 때때로 용기들 사이에서 나뉘는 세포들입니다. 그래프는 이것을 노드 몇 개 — 증식 단계 몇 개, 재료 몇 개 — 로 모델링하는데, 그 정도의 입자도(granularity)가 유용하기 때문입니다. 하지만 경계선을 어디에 둘지의 선택은 모델링상의 판단이지 생물학이 건네주는 사실이 아닙니다. 용기 옮김 하나하나가 새로운 재료 노드인가, 아니면 성장한 하루하루가 그런가? 플라스크 하나를 둘로 나누는 것은 두 개의 새 재료를 만드는 것인가, 아니면 두 용기에 담긴 하나의 재료인가? 합리적인 모델러들이 서로 다르게 답하며, 정전(canonical)의 입자도란 없습니다 — 수확 장이 정면으로 마주하는 바로 그 개체화(individuation) 문제입니다. 너무 거칠게 모델링하면 오염을 특정 옮김까지 추적할 해상도를 잃고, 너무 곱게 모델링하면 아무도 질의하지 않는 노드 속에 그래프가 익사합니다.
이것의 더 깊은 버전은 세포주 장이 이미 이름 붙인 그것입니다. 세포는 살아 있고 변하므로, "3단계의 재료"란 어제와 달랐고 내일도 다를 한 집단입니다. derivedFrom 엣지는 깔끔한 부모-자식 인계를 함축하지만, 현실은 그 이산적 엣지가 근사하는 연속적 성장의 번짐입니다. 이 모델은 진정으로 유용합니다 — 혈통과 계대를 질의 가능하게 만듭니다 — 하지만 그것은 연속적인 생물학적 프로세스에 대한 추상화이며, 생물학이 매끄러운 곳에서 노드가 또렷한 척하는 것은 그래프를 조용히 과신하는 길입니다. 정직한 표준은 여러분이 실제로 던지는 질문(오염 추적, 계대 준수)에 답하는 입자도를 선택하고, 노드가 살아 있는 연속체를 의도적으로 단순화한 것임을 문서화하는 것입니다.
왜 중요한가
시드 트레인은 캠페인의 계보가 올바르게 뿌리내리느냐, 아니면 조용히 끊어지느냐가 결정되는 곳입니다. derivedFrom 엣지를 실제 증식의 흔적으로 놓고, 계대 수를 앞으로 이어 나르면, 모든 하류 혈통 질문 — 세포 은행까지 거슬러, 계대 한계 안에서 — 이 순회(traversal)로 답해집니다. 이것을 건너뛰거나 트레인을 단일 "접종원" 노드로 납작하게 만들면, 생산에서 세포 은행 뿌리까지 이어지는 사슬은 살아 있는 재료가 가장 가변적인 바로 그곳에서 가장 약한 고리를 잃습니다. 이 수수해 보이는 단계가 이 책의 나머지가 순회하는 계보 전체로 들어가는 진입로입니다.
통신선에서 그래프까지
이 장이 기대고 있는 계대 수는 마법처럼 그래프에 나타나는 것이 아닙니다. 그것은 출처에서 가져온 값입니다. 작업 세포은행의 계대 수는 전자 실험 노트(Benchling 같은 ELN/LIMS로, 모든 바이오의약품 실험실의 상용 도구)에서 비롯되며, 동반 온톨로지는 그 숫자를 맨 사실로 단언하는 대신 그 출처를 기록합니다. examples/platform/ontology/instances.ttl에서 ELN은 prov:SoftwareAgent이고, WCB-CHO-001이 계대 8에 있다는 주장은 prov:wasAttributedTo로 그것에 귀속된 prov:Entity입니다. 이는 상용 단계가 MES 대조에 사용하는 것과 동일한 출처 추적 규율로, 여기서는 출하 게이트까지 줄곧 따라가는 하나의 숫자에 적용됩니다.
인스턴스들은 또한 시드 트레인이 로컬 용어를 새로 만들어내는 대신 상류의 통제 어휘를 재사용하는 모습을 보여줍니다. bp:SEED-001은 bp:hasHostOrganism bp:CHO-host를 선언하는데, 이는 세포주와 작업 세포은행이 가지고 다니는 것과 동일한 숙주 인스턴스입니다. 그 클래스들을 정초하는 정렬은 examples/platform/ontology/align.ttl에 있습니다. bp:HostOrganism rdfs:subClassOf obo:NCBITaxon_10029(NCBI Taxonomy의 Cricetulus griseus, 즉 중국 햄스터)와 bp:WorkingCellBank rdfs:subClassOf obo:CLO_0002421(CLO의 CHO 세포 유형) — 둘 다 상용 등급 참조 어휘입니다. 요점은 이렇습니다. 그 IRI들은 세포주 개발에만 갇혀 있지 않으며, 숙주 인스턴스는 모든 확장 단계로 이어져 전달됩니다.
그 클래스들이 기대고 있는 align.ttl 발췌는 시드 트레인을 공유 참조 어휘로 위로(up) 정초합니다 — 숙주 유기체와 세포 은행은 OBO 생물학으로, 배양물과 증식 프로세스는 IOF로, 그리고 혈통 엣지는 관계 온톨로지(Relation Ontology)로 말입니다.
# align.ttl — the seed-train classes grounded UP to shared vocabularies (excerpt).
bp:HostOrganism rdfs:subClassOf obo:NCBITaxon_10029 . # NCBI Taxonomy 'Cricetulus griseus' (Chinese hamster, verified via OLS4)
bp:WorkingCellBank rdfs:subClassOf obo:CLO_0002421 . # Cell Line Ontology 'CHO cell'
bp:SeedTrainCulture rdfs:subClassOf iof:CellCulture . # IOF biopharma 'cell culture' (Released); ShakeFlaskCulture / SeedBioreactorCulture inherit it
bp:CellCultureProcess rdfs:subClassOf iof:ManufacturingProcess . # IOF Core; bp:ExpansionProcess inherits this
bp:derivedFrom rdfs:subPropertyOf obo:RO_0001000 . # RO 'derives from' (the campaign's lineage edge)
bp:SEED-001 a bp:SeedBioreactorCulture ; rdfs:label "SEED-001 (seed bioreactor culture)" ;
bp:derivedFrom bp:SEEDFLASK-001 ;
bp:participatesIn bp:EXP-002 ;
bp:hasHostOrganism bp:CHO-host ; # reuse the NCBI-Taxonomy-aligned host upstream, not only in cell-line dev
bp:passageNumber 16 .
# The working-cell-bank vial's passage count is sourced from the ELN/LIMS (e.g. Benchling);
# the source is recorded as PROV provenance, the same discipline used for the MES reconciliation.
bp:ELN a prov:SoftwareAgent ; rdfs:label "electronic lab notebook (ELN/LIMS, e.g. Benchling)" .
bp:claim-passage-WCB a prov:Entity ; rdfs:label "source claim: WCB-CHO-001 passage number = 8" ;
prov:wasAttributedTo bp:ELN .
어떤 표준과 어휘가 상용 단계이고 어떤 것이 파일럿 단계인지, 그리고 각각이 실제로 어디에 들어맞는지는 실제로 사용되는 온톨로지와 통제 어휘에서 다룹니다.
실제 현장에서는
단계적 시드 트레인은, 그 절도 있는 계대 한계와 특성 분석과 함께, 모든 상업용 포유류 세포 공정이 실제로 은행의 바이알에서 생산으로 이어지는 다리를 놓는 방식입니다 [1][2]. 현대의 강화 공정은 더 많은 성장을 관류식(perfusion-style) 시드 단계로 밀어 넣는데, 이는 증식 노드의 수와 형태를 바꾸지만 모델링 원리는 바꾸지 않습니다. 각 규모 확대는 여전히 직전 것으로부터 새 재료를 유래시키는 프로세스입니다. 오픈소스 업스트림 장은 이 용기들의 실시간 신호를 포착하고, 이 장이 설명하는 계보 엣지는 바로 그 지식 그래프가 로드하는 행들입니다 — 여기서 모델링된 시드 트레인이 그 코드가 걷는 혈통의 첫 구간입니다.
핵심 용어
- 시드 트레인(seed train) — 해동한 세포 은행 바이알을 생산을 접종할 만큼의 세포로 키우는 단계적 규모 확대; 증식 프로세스의 사슬로 모델링한다.
- 증식 프로세스(expansion process) — 하나의 규모 확대 단계로, 하나의 세포 재료를 소비해 더 큰 재료를 만들어 내고 세포를 참여자로 갖는 점유체로 모델링한다.
derivedFrom(캠페인 엣지) — 특정 배치의 첫 번째 구체적인 계보 엣지로, 각각이 실제 물질 변환의 흔적이며 (추이적으로) 세포 은행에 뿌리내린다.- 계대 / 세대 수(passage / generation count) — 트레인을 따라 앞으로 운반되어 누적되는 분열 횟수로, 출하 시점에 검증된 한계와 비교해 확인할 수 있다.
- 입자도 / 개체화(granularity / individuation) — 연속적이고 살아 있는 증식을 따라 재료와 프로세스의 경계를 어디에 둘지에 대한 모델링상의 판단; 생물학의 사실이 아니라 의도적인 단순화다.
다음 이야기
세포가 다 자라 준비되었습니다. 다음 장 생산 바이오리액터 모델링하기: 하나의 프로세스, 그 단계들, 그리고 그 매개변수들은 업스트림의 심장부에 이릅니다 — 배치 재료와 세포 배양 프로세스가 반드시 구분되어 유지되어야 하는 곳, 성장 단계와 생산 단계가 하위 프로세스로 모델링되는 곳, 그리고 공정 개발에서 온 핵심 매개변수가 마침내 붙을 진짜 운전을 갖게 되는 곳입니다. 그래프가 색인하되 삼키지는 않는 조밀한 센서 스트림과 함께 말입니다.