생성형 AI와 LLM: 코파일럿, CAPA, 그리고 에이전트의 한계
📍 현재 위치: 6부 · 시스템 전체 — 24장. 직전 장 제조 운영(Manufacturing Operations)은 학습을 공장의 신경계 — 예지 정비, 수율 분석, 일정 계획 — 에 넣었습니다. 이 장은 언어를 학습하는 계층으로 향합니다. 모든 배치를 감싸는 일탈 보고서, 배치 기록, SOP, CMC 문서가 그것입니다. 이것은 2023-2026 AI 물결에서 가장 시끄러운 부분이자, 시연과 배포 사이의 간극이 가장 넓은 부분입니다.
지금까지의 모든 장은 숫자를 학습했습니다 — 역가(titer), 로그 저감 값, 이상 점수, 정비 시계(horizon). 이 장은 단어를 학습합니다. 바이오 제조는 거대하고 대부분 비정형인 종이 자취 위에서 돌아갑니다. 일탈은 자유 텍스트 서술이고, CAPA(시정 및 예방 조치, corrective and preventive action)는 산문으로 쓰인 조사이며, 배치 기록은 단계와 입력과 서명으로 이루어진 수백 페이지이고, CMC(화학, 제조, 관리, chemistry, manufacturing, and controls) 절은 몇 주에 걸쳐 손으로 작성되는 규제 문서입니다. 대형 언어 모델(large language models, LLMs)은 사상 처음으로 정확히 이런 종류의 텍스트를 읽고 초안 잡는 데 진정으로 능숙하며 — 그 결과 GPT-4가 2023년에 등장한 이래 품질과 제조를 겨냥한 "코파일럿", "에이전트", "보조"의 홍수가 쏟아졌습니다 [1][2].
정직한 독해는 이 책 전체가 거듭 다다르는 그것이며, 여기서 가장 날카로운 모서리로 벼려집니다. GMP(우수 제조 관리 기준, Good Manufacturing Practice — 규제 대상 약품을 어떻게 만들어야 하는지에 대한 구속력 있고 현행하는 규칙; GxP는 "Good x Practice" 규정 전체를 아우르는 우산 용어이며 GMP는 그중 제조 부문이고, cGMP는 FDA의 "현행(current)" GMP로 "현행"이란 얼어붙은 옛 표준이 아니라 오늘 받아들여진 관행을 따라야 한다는 뜻)에서의 생성형 AI는 실재하고, 유용하며, 거의 전적으로 자문(advisory)입니다. 분류하고, 검색하고, 요약하고, 초안을 잡으며, 자격을 갖춘 사람이 검토하고 서명합니다. 어느 회사가 그 선을 넘게 했을 때 — 품질 부서 검토 없이 규격과 마스터 생산 기록을 생성했을 때 — FDA(미국 식품의약국, 약품 제조사를 규제하고 점검하는 기관)는 AI를 인용한 첫 cGMP 경고 서한(제조사가 규정을 위반하고 있으며 시정해야 한다는 공식적이고 공개적인 집행 통지 — 일상적 메모가 아니라 엄중한 제재)(Purolea, 2026년 4월 2일)을 발부했습니다 [3][4]. 그리고 EU/PIC/S GMP Annex 22 초안 — EU의 우수 제조 관리 기준 규칙에 대한 부속서(annex)(주제별 부록)로, 회원 규제기관 전반의 GMP 점검을 조화시키는 국제 의약품 실사 상호협력 기구 PIC/S와 공동 발행됨 — 은 그 경계를 규정으로 긋습니다. 생성형 및 지속학습형 AI를 핵심 GMP 결정에서 단호히 배제합니다 [5][6]. 이 장은 무엇이 작동하고, 무엇이 작동하지 않으며, 그 선이 정확히 어디 떨어지는지의 지도입니다.
당신 현장이 지금껏 제출한 모든 일탈 보고서를 다 읽었지만 서명 권한은 없는, 명석하고 빠른 신입 분석가를 떠올려 보세요. 당신이 새 문제를 건네면, 몇 초 만에 그가 말합니다 — "이건 지난봄에 있었던 세 건의 온도 일탈처럼 보입니다. 그것들을 종결시킨 조사와 CAPA가 여기 있고, 당신 작성문의 초안도 여기 있습니다." 그것은 진정으로 가치 있습니다 — 몇 시간을 아끼고 바퀴를 다시 발명하지 않게 막아 줍니다. 그러나 그 분석가는 때때로 완전한 확신을 가지고 그냥 틀린 것을 진술합니다("환각", hallucination). 그리고 그는 무엇도 결정하도록 허용되지 않습니다 — 배치를 출하하거나, CAPA를 종결하거나, 기록을 승인하는 일을. 자격을 갖춘 사람이 그가 만들어 낸 것을 읽고, 실제 증거에 대조하여 점검하고, 서명합니다. GMP 공장에서의 생성형 AI는 바로 그 분석가입니다. 그것은 사람을 가속하지, 서명을 대체하지는 않습니다.
이 장에서 다루는 내용
- GenAI 물결이 제조와 품질에서 실제로 실재하는 곳: 일탈/CAPA 분류와 초안, NLP 조사 보조, MES/SOP/배치 기록 코파일럿, CMC와 규제 문서 초안, 그리고 지식 관리.
- 검색증강 생성(Retrieval-Augmented Generation, RAG): LLM을 당신 자신의 검증된 문서에 접지(grounding)시키는 것이 왜 GMP에서 그것을 쓸 수 있게 만드는 구조인지, 검색기(retriever)와 생성기(generator)가 실제로 어떻게 만들어지는지, 그리고 둘 다 어떻게 평가하는지.
- 모든 코파일럿 밑에 깔린 두 NLP 과제: 분류/triage와 유사도 검색 — 블랙박스가 아니라
examples/platform/ml/deviation_triage.py의 실행 가능하고 투명한 코드로. - 성숙도와 증거 등급으로 정렬한 이름 붙은 제품들: Aizon, ValGenesis, Veeva, Mareana, Microsoft/Accenture/Capgemini 코파일럿 — 무엇을 주장하고 증거가 얼마나 강한지.
- 단단한 한계: 환각, 비결정적 모델의 GxP 검증, 그리고 데이터 누설/기밀성.
- 규제 경계: 집행으로서의 Purolea 경고 서한, 그리고 핵심 결정에서 생성형 AI를 배제하는 Annex 22 초안 — 그리고 따라서 에이전트형 AI가 정확히 어디에 갇히는지.
GenAI 물결을, 무엇이 실재하는지로 정렬하기
마케팅은 모든 것을 동등하게 들리게 만듭니다. 그렇지 않습니다. 배포들을 규제된 결정으로 실제로 무엇을 하는가로 정렬하면, 명확한 위계가 나타납니다 — 진정으로 유용하고 저위험인 것에서, 과대 선전되고 금지된 것까지. 각 등급을 두 라벨을 붙여 읽으세요. 성숙도(연구 / 파일럿 / 상용)와 증거 등급(맨 위는 독립 동료심사, 그다음 자체 저자 동료심사, 그다음 벤더/컨설팅 자체보고, 맨 아래는 보도자료 한정 — "자체 저자"가 "독립"보다 아래인 것은, 연구되는 회사 자신이 수행한 연구는 호의적 결과에 이해관계가 있어서 외부 점검이 더 무겁기 때문) — 이 책의 사례 연구 원장(case-study ledger)이 적용하는 바로 그 채점이며, 사실과 슬라이드를 가르는 규율입니다.
1등급 — 검색하고 요약하기(실재함, 널리 파일럿됨). 가장 안전하고 가장 가치 있는 용도는 기존 텍스트의 산을 빠른 답으로 바꾸는 것입니다. 일탈 조사자가 "이 실패를 전에 본 적 있나?"를 물으면 시스템이 가장 유사한 과거 일탈들과 그것을 종결한 CAPA를 검색합니다. McKinsey는 한 생명과학 제조사가 생성형 AI로 일탈의 약 70%를 종합하고 80%가 넘는 사례에 대해 CAPA 초안을 만들어 냈다고 보고합니다 — 동료심사가 아니라 벤더/컨설팅이 보고한 수치이며, 명시적으로 사람 검토를 동반한 초안 보조입니다 [7]. MSD(Merck & Co.)는 AWS Bedrock(자신의 접근 통제 뒤에서 LLM을 구동하는 Amazon의 클라우드 서비스) 위에 — Amazon OpenSearch를 과거 일탈에 대한 벡터 저장소(vector store)(문서 벡터의 검색 가능한 데이터베이스)로 삼아 — 구축한 RAG 기반 일탈 보조를 탐색적이고, 예측이 아니라 검색인 작업으로 공개적으로 기술했습니다 [8]. 이 등급은 대부분 (파일럿)이며, 때로 비핵심 문서화에서 상용으로 비집고 들어갑니다.
2등급 — 추출하고 분류하기(실재함, 코파일럿 밑의 NLP). 챗 인터페이스 밑에는 구식이고 방어 가능한 NLP가 자리합니다. 일탈을 한 범주로 분류하여 배정하기, 서술에서 개체(장비 ID, 배치, 날짜, 실패 모드)를 추출하기, 우선순위 부여를 위해 기록을 재발 가능 또는 핵심 가능으로 표시하기. 여기서 동료심사된 닻은 실제 제조 일탈 텍스트에 대해 GPT-3.5, GPT-4, Claude-2(특정 상용 LLM — GPT는 OpenAI, Claude는 Anthropic)를 평가한 Merck & Co. 연구입니다. 고정확도의 개체 추출(entity extraction)(산문에서 정형 사실 — 장비 ID, 배치, 실패 모드 — 을 뽑아내기), 근본 원인(root-cause) 추출(실패가 일어난 밑바탕 이유), 그리고 유사 과거 일탈의 의미론적 검색(semantic retrieval)(공유 키워드만이 아니라 의미로 구절을 찾기), 그러나 저자들이 "외견상 추론과 환각 사이의 상호작용(interplay between apparent reasoning and hallucination)"이라 부르는 명시적이고 이름 붙은 긴장, 그리고 사람 검토가 "특히 고위험 과제에서 필요할 수 있다"는 단서를 동반합니다 [1]. 그것은 동료심사되었으나 자체 저자(Merck 자신의 디지털 서비스 그룹)이며, 이는 독립보다 한 등급 아래입니다 — 여전히 이 물결에서 가장 엄밀하게 연구된 구석이며, 이 장의 실행 가능 예제가 사는 곳입니다.
3등급 — 규제 콘텐츠 초안 잡기(실재하나 빡빡하게 통제됨). CMC 초안, 배치 기록 검토 보조, 제품 품질 검토(PQR) 생성, 그리고 SOP 작성. PQR — 21 CFR 211.180(e)(미국 연방 규정집 21편 — 법적 구속력 있는 미국 약품 제조 규칙서 — 211.180(e)절; 뒤에 나오는 21 CFR Part 11 같은 인용도 같은 규정집의 절들)와 EU GMP 1장 아래 모든 제품에 대해 매년 의무화된 제품 품질 검토(product quality review) — 은 한 해 배치 이력(수율, 일탈, OOS(규격 외, out-of-specification) 결과, 안정성, 불만, 변경)을 정형 양식으로 요약한 것이며, 정확히 GenAI가 잘 초안 잡고 사람이 여전히 검증하고 서명해야 하는, 기존 기록 위의 대량의 정형화된 종합입니다. Sanofi는 제품 품질 검토를 약 여덟 배 빠르게 생성했다고, 연간 약 5,000건의 보고서를 목표로 한다고 보고했습니다 — 확립된 사실로 진술해서는 안 되고 그렇게 라벨링해야 하며, 감사된 결과가 아니라 포부로 읽어야 하는 자체보고 수치입니다 [9]. 벤더들이 여기서 경주 중입니다. Aizon(GxP 제조 인텔리전스; 예외에 의한 검토 — 사람이 모든 항목이 아니라 문제를 표시한 기록만 읽음 — 를 갖춘 지능형 배치 기록), ValGenesis(검증 수명주기와 기술 이전 초안), 그리고 Veeva(Vault Quality AI 에이전트, 2026 로드맵, Bedrock을 통해 Anthropic Claude와 Amazon 모델 위에서 구동)가 모두 이 등급에 판매하며, Microsoft(품질 시스템 위의 Copilot)의 수평적 코파일럿과 Accenture, Capgemini 같은 통합사가 함께합니다 [10][11][12][13]. 여기서의 모든 출력은 자격을 갖춘 사람이 검토하고, 편집하고, 서명하는 초안입니다.
4등급 — 에이전트형 / 자율형(과대 선전됨, 그리고 선이 그어지는 곳). "에이전트형 AI(Agentic AI)" — 최소한의 사람 입력으로 계획하고 다단계 행동을 취하는 시스템 — 은 2025-2026의 가장 시끄러운 선전입니다(Aizon은 배치 출하 콕핏과 PQR 템플릿의 대화형 생성을 포함한 에이전트형 능력을 사전 발표했고, Veeva의 Quality 및 Safety 에이전트는 로드맵 항목입니다) [14][12]. GMP 공장에서 이 등급은 집행과 규정 초안 모두에 의해 비핵심이고 사람이 개입하는 과제로 갇힙니다. 핵심 GMP로 — 품질 부서 검토 없이 배치가 만들어지거나 출하되는 방식을 다스리는 기록을 생성하는 데로 — 선을 넘으면, Purolea 경고 서한을 받게 됩니다 [3][15].
네 등급 전체를 가로지르는 패턴은 이 책 내내 진술된 ISPE Pharma 4.0 현실입니다. AI/ML은 가장 많은 파일럿과 가장 적은 규모화된 구현을 가지며, 상용은 모니터링, 비전, 그리고 사람이 개입하는 문서화에 모이지, 품질의 자율 제어에 모이지 않습니다 [2].
검색증강 생성: 접지가 게임의 전부인 이유
생짜 LLM은 자기 훈련 데이터로부터 답합니다 — 당신의 SOP도, 당신의 일탈 이력도 담지 않은, 시의성 보장도 없는 얼어붙고 불투명한 스냅숏입니다. 당신의 공정을 물으면 그것은 거절하거나, 더 나쁘게는 그럴듯한 답을 확신에 차서 지어냅니다. 검색증강 생성(Retrieval-Augmented Generation, RAG)은 이것을 고치는 구조이며, LLM을 규제된 공장에서 쓸 수 있게 만드는 단연 가장 중요한 발상입니다.
RAG는 두 일을 분리합니다. 검색기(retriever)가 당신 자신의 검증된 말뭉치 — SOP, 배치 기록, 이전 일탈, CMC 절 — 에서, 텍스트 표현 위의 벡터 유사도(vector similarity)를 써서 질문에 가장 관련 있는 구절을 찾습니다 — 각 구절은 벡터(숫자의 목록)로 바뀌어 유사한 텍스트가 가까이 놓이고 가까움을 측정할 수 있게 되며, 이는 다음 절이 온전히 펼치는 메커니즘입니다. 그다음 생성기(generator) (LLM)에 질문 더하기 그 검색된 구절들을 프롬프트로 주고 오직 그것들로부터만 답하라고, 각 주장이 어느 문서에서 왔는지 인용하라고 지시합니다. 이점들은 정확히 GMP가 요구하는 그것들입니다:
- 접지가 환각을 줄입니다. 모델은 기억이 아니라 공급된 실제 문서로부터 답하라고, 구절이 답을 뒷받침하지 않으면 "찾을 수 없음"이라 말하라고 지시받습니다.
- 추적 가능성. 모든 진술이 출처 문서와 절을 인용할 수 있습니다 — 검토자가 필요로 하는 감사 추적입니다.
- 시의성과 접근 통제. 말뭉치는 당신의 현행, 통제된 문서입니다. SOP를 갱신하면 재훈련 없이 시스템의 지식이 갱신되고, 문서 수준 권한이 사용자가 볼 권한이 없는 텍스트를 모델이 드러내지 못하게 막을 수 있습니다.
RAG가 환각을 제거하지는 않습니다 — 모델은 여전히 검색된 구절을 오독하거나 과일반화할 수 있습니다 — 그러나 그것은 열린 생성 문제를, 접지되고 인용 가능한 문제로 바꿉니다. 이것이 "흥미로움"과 "감사 가능함"의 차이입니다. 이것이 위 물결에서 거의 모든 방어 가능한 GenAI 배포가 RAG 형태인 이유입니다. MSD의 일탈 보조, 품질 시스템 위의 Microsoft Copilot, 그리고 일탈/CAPA 코파일럿 모두가 회사 자신의 문서 위의 검색기에 서 있습니다 [8][11][7].
검색기는 또한 당신이 고전적이고 투명한 도구로 만들고, 시험하고, 검증할 수 있는 부분입니다 — 거대 모델은 필요 없습니다. 그것이 아래 예제가 보여 주는 것입니다. 검색기와 분류 분류기는 평범하고 들여다볼 수 있는 기계학습이며, 생성형 LLM은 사람이 항상 검토하는 초안 계층으로서 그것들 위에 앉습니다.
RAG 검색기는 어떻게 만들어지고 평가되는가
검색기의 보닛을 여는 것은 값집니다. "벡터 유사도"가 실제 공학 파이프라인과 측정 가능한 계약을 숨기고 있기 때문이며 — 그리고 검색기가 GMP 코파일럿에서 당신이 실제로 검증할 수 있는 부분이기 때문입니다. 전체 파이프라인은 다섯 단계입니다.
- 청킹(Chunking). 300페이지 배치 기록은 단일 덩어리로는 쓸모없습니다. 검색된 히트가 특정 주장을 접지시킬 만큼 충분히 작고 정확하게 인용되도록, 말뭉치를 구절(일탈 단락, SOP 단계, CMC 하위 절)로 쪼갭니다. 청크가 너무 크면 인용이 한 페이지를 가리키고, 너무 작으면 구절이 그것을 관련 있게 만든 맥락을 잃습니다.
- 임베딩(Embedding). 각 청크는 의미론적으로 유사한 텍스트를 서로 가까이 두는 벡터로 바뀝니다. 두 정직한 선택이 스펙트럼 위에 놓입니다. 희소 / 어휘적(sparse / lexical) 표현 — TF-IDF, 각 용어가 이 문서에 얼마나 자주 나타나는지(용어 빈도)를, 말뭉치 전체에서 얼마나 드문지(역문서 빈도)에 견주어 가중하는 것 — 은 완전히 들여다볼 수 있습니다. 어떤 단어가 매치를 끌어냈는지 읽어 낼 수 있습니다. (그 벡터는 단어별 가중치의 목록일 뿐입니다 — 말뭉치의 서로 다른 단어마다 한 칸씩, 대부분 0이고 이 청크가 실제로 쓰는 단어의 칸에만 숫자가 들어갑니다 — 채워진 칸이 그토록 적어서 "희소"입니다.) 밀집 / 신경(dense / neural) 임베딩(문장 변환기, 문장 전체를 벡터로 바꾸는 신경 모델)은 평범한 단어-수 벡터 — 순서와 의미를 무시하는 "단어 주머니(bag of words)" — 가 놓치는 의역과 동의("온도 일탈(temperature excursion)"을 "열적 편차(thermal deviation)" 근처에)를 담지만 불투명합니다. 파이프라인의 형상은 어느 쪽이든 동일하며, 이것이 이 장이 어휘적 버전을 가르치는 이유입니다.
- 인덱싱(Indexing). 벡터들은 최근접 이웃 질의에 빠르게 답하는 저장소(벡터 저장소(vector store) — 질의 벡터에 가장 가까운 벡터들을 찾도록 만들어진 데이터베이스로, MSD의 보조에서 Amazon OpenSearch가 맡는 역할)로 들어갑니다 — 작은 말뭉치에는 정확한 코사인 검색, 큰 말뭉치에는 근사 최근접 이웃(approximate-nearest-neighbor) 인덱스(거의 가장 가까운 것을 훨씬 빠르게 찾기)입니다 [8]. 코사인 유사도(cosine similarity)가 내내 쓰이는 가까움 점수입니다. 두 텍스트 벡터 사이 각도의 코사인으로, 0(공유 용어 없음, 무관한 방향을 가리킴)에서 1(동일한 방향, 같은 어휘)까지 가므로 숫자가 높을수록 더 비슷합니다.
- 질의(Querying). 새 일탈을 같은 방식으로 임베딩하고 가장 유사한 상위 k개 청크(k는 단지 당신이 요청하는 결과의 개수 — 여기서는 상위 3개)가 그들의 유사도 점수와 함께 반환됩니다 — 거버넌스에 단연 가장 중요한 출력입니다. 낮은 점수는 말뭉치에 좋은 매치가 없으니 생성기가 늘리기보다 기권해야 한다는 가시적 신호이기 때문입니다.
- 제약된 생성(Generation, constrained). 검색된 청크들이 오직 그것들로부터만 답하고 각각을 인용하라는 지시와 함께 프롬프트에 채워집니다. 많은 시스템이 4단계와 5단계 사이에 재순위기(reranker)(관련성을 위해 상위 k개를 재정렬하는 두 번째, 더 날카로운 모델)와, 생성된 각 문장을 인용된 청크에 대조하는 최종 접지성 / 충실성 점검(groundedness / faithfulness check)을 더합니다.
계약은 모든 계층에서 평가 가능(evaluable at every layer) 하며, 이것이 규제자에게 그것이 작동함을 보여 줄 수 있는 온 이유입니다. 검색기는 어떤 정보 검색 시스템이든 측정되는 방식으로 측정됩니다. recall@k(올바른 이전 사례가 상위 k에 나타나는가?), precision@k(k개 중 실제로 관련 있는 것이 몇 개인가?), 그리고 평균 역순위(mean reciprocal rank)(첫 좋은 히트가 얼마나 높이 떨어지는가? — 1을 그 순위로 나눈 점수이므로 1위 히트는 1점, 2위는 0.5, 3위는 0.33, 그다음 질의들에 걸쳐 평균) — 모두 품질 검토자가 눈으로 살필 수 있는 질의/관련-문서 쌍의 라벨링된 집합에 대조해 점검 가능합니다. 생성기는 충실성(faithfulness)(모든 주장이 검색된 청크로 뒷받침되는가?)과 답변 관련성(answer relevance)으로 측정되며, 점점 더 LLM-심판(LLM-as-judge) — 첫 번째 LLM의 답을 그것이 인용한 출처들에 대조해 채점하라고 지시받은 두 번째 LLM으로, 사람 채점자가 읽을 수 있는 것보다 훨씬 많은 답으로 확장되지만 자신이 점검하고 있는 바로 그 유창하고-틀린 실패 모드를 물려받으므로 그것 자체가 불완전하고 표본화된 측정이며, 바로 이것이 사람 검토 게이트가 남는 이유입니다. 규제된 공장에 주는 교훈은, 검색기는 당신이 검증할 수 있는 단단하고 고전적인 지표를 주는 반면 생성기는 당신이 감시할 수는 있어도 완전히 못 박지는 못하는 더 무른 지표를 준다는 것입니다 — 그래서 당신은 생성기를 검색기로 제약하고, 그 전체를 서명 뒤에 게이트로 막습니다.
모든 코파일럿 밑의 두 NLP 과제
챗 인터페이스를 벗겨 내면 GMP "코파일럿"은 잘 이해된 두 NLP 문제로 환원되며, 둘 다 LLM보다 앞서 존재했고 둘 다 당신이 검증할 수 있습니다.
분류(Triage, classification). 새 일탈이 자유 텍스트로 도착합니다. 어떤 초안 작성보다 먼저 시스템은 그것을 배정해야 합니다 — 어느 범주(온도 일탈, 오염, 규격 외 분석, 장비 결함, 문서화), 어느 심각도, 어느 담당 부서로. 특히 심각도는 임시 라벨이 아니라 규제된 분류(regulated classification)입니다 — 회사 자신의 통제된 분류 체계(고정된, 승인된 범주 이름 목록이라 모두가 같은 정의된 선택지에 대조해 분류함) 안에서 ICH Q9(국제 의약품 규제 조화 위원회(International Council for Harmonisation)의 국제 품질 위험 관리 지침)의 위험 기반 사고에 따라 부여되는 경미/중대/심각(minor / major / critical) — 그리고 이것이 분류 단계를 감사 가능하게 만듭니다. 분류기는 이미 정의된 조사 및 에스컬레이션 경로로 사상되는 클래스를 제안하고, 검토자는 직감이 아니라 문서화된 절차에 대조하여 그것을 확정하거나 무릅니다. 이것은 텍스트 분류입니다 — 서술을 벡터화하고 라벨을 예측합니다 — 그리고 품질 부서가 한 달에 수백 건의 일탈에 우선순위를 매길 수 있게 하는 단계입니다. Merck & Co. 연구는 그 핵심에서 실제 일탈 텍스트에 대한 바로 이 추출-그리고-분류 능력의 엄밀한 평가입니다 [1].
검색(Retrieval, similarity search). 새 일탈이 주어지면, 가장 유사한 과거 일탈들과 그들의 CAPA를 찾습니다. 이것은 RAG의 검색기 단계이며, 그것만으로도 엄청나게 유용합니다. 실제 이전 사례 셋에 접지된 조사자는 빈 페이지에서 출발하는 조사자보다 더 빠르고 더 나은 조사를 씁니다. 결정적으로, 이것을 고전적 텍스트 유사도(TF-IDF와 코사인 거리)로 하거나 신경 임베딩으로 할 수 있습니다 — 위 임베딩 단계의 어휘적-대-밀집 선택이며, 어느 쪽이든 파이프라인은 바뀌지 않습니다 — 그리고 고전 버전은 모델 다운로드 없이 돌아가므로 정직한 교육 버전이 됩니다.
이 두 과제를 명시적으로 이름 붙이는 이유는 거버넌스입니다. 그것들은 들여다볼 수 있습니다(inspectable). 분류 분류기의 정확도는 라벨링된 시험 집합에 대조해 측정될 수 있고(클래스별 precision, recall, F1), 검색기의 이웃들은 관련성을 눈으로 점검하고 recall@k로 채점할 수 있습니다. 최종 요약을 초안 잡는 생성형 LLM은 검증하기가 훨씬 어렵습니다 — 바로 이것이, 방어 가능한 구조에서 그것이 자유로이 돌아가는 대신 이 두 검증 가능한 단계에 의해 제약되는 이유입니다.
위험으로 정렬한 GenAI 물결: 바닥의 검색과 요약(RAG로 접지됨), 코파일럿 밑의 들여다볼 수 있는 분류와 추출 NLP, 중간의 통제된 규제 콘텐츠 초안 — 모두 사람이-검토하고-서명함 — 그리고 Annex 22 초안이 긋고 Purolea 경고 서한이 집행하는 단단한 규제 경계 아래에 잡혀 있는 에이전트형 자율성.
저자가 AI의 도움을 받아 직접 제작한 그림입니다.
실행 가능한 모델: deviation_triage.py
예제 모듈 examples/platform/ml/deviation_triage.py는 두 NLP 과제를, 네트워크 없이 모델 다운로드 없이, 진행 중인 예제의 어휘로 쓰인 일탈 서술의 작은 합성(synthetic) 말뭉치 위에서 투명하게 만듭니다 — 7일째 유가식(fed-batch) 온도 일탈, hplc_results.csv(통합 출하 패널 데이터 파일; HCP 자체는 항체 기반 분석인 ELISA로 측정되며, 이는 모듈 및 QC와 출하(QC and release)와 일치)에서 온 BATCH-2026-004 숙주세포단백질(host-cell-protein, HCP — 잔류 공정 불순물로, 생산 세포에서 남은 단백질이며 안전한 미량까지 제거되어야 함; QC와 출하(QC and release)에 온전히 정의됨) 규격 외, 환경 모니터링 일탈, 장비 결함, 그리고 문서화 일탈. 말뭉치는 명시적으로 합성(실제 일탈 로그는 기밀)이므로 분류기 지표는 예시적입니다. 파이프라인의 형상이 교훈입니다. 짚어 둘 단순화 하나: 다섯 범주는 진짜 규격 외(out-of-specification) 결과(규격 위반)와 추세 이탈(out-of-trend) 지속 공정 검증(continued-process-verification, CPV — 이미 검증된 공정의 진행 중 모니터링) 신호 — 아직 규격 안에 있는 통계적 공정 관리(SPC) 경보 — 를 단일 oos_assay 라벨로 접어 넣는데, 실제 분류 체계라면 그 둘을 분리할 것입니다 — 서로 다른 절차를 촉발하기 때문입니다. 여기서 그 구분을 접는 것은 의도된 교육용 잡음이지, 상용 분류 체계가 어떻게 그어져야 하는지에 대한 주장이 아닙니다.
합성 말뭉치가 조용히 생략하는 한 가지는 실제 일탈 서술이 어디서 오는가이며, 이것은 짚어 둘 가치가 있습니다 — 장난감과 거버넌스된 훈련 집합의 차이이기 때문입니다. 실제 공장에서 자유 텍스트는 떠다니지 않습니다. 일탈 기록은 ISA-95 기업-제어 위계를 따르는 구조의 MES 배치 기록 안에 살고 B2MML(Business to Manufacturing Markup Language, ISA-95 생산 기록을 시스템 간에 나르는 XML 스키마)로 직렬화되며, 그것이 참조하는 센서 맥락 — 7일째 BR101.Temp.PV 일탈 — 은 OPC UA(표준 기계-대-MES 프로토콜)를 통해, 서술이 산문으로 명명하는 단위와 장비 신원을 실어 도착합니다. 이 모듈이 분류하는 말뭉치는, 상용에서는 Book 2의 데이터 그림자 장(the-data-shadow chapter)이 목록화하는 데이터 그림자(data shadow) — 같은 EBR, 알람-및-이벤트 로그, 그리고 물질 계보 — 이며, 그 표준들이 붙이는 메타데이터(어느 배치, 어느 용기, 어느 단계, 심각도가 어느 통제된 어휘에서 뽑혔는지)가 바로 분류 라벨을 추측이 아니라 감사 가능하게 만드는 것입니다. 그 ISA-95 맥락을 벗겨 낸 텍스트로 훈련한 분류기는 부서지기 쉬운 버전이고, 특징이 표준화된 배치 기록에 닻을 내리고 말뭉치가 데이터 거버넌스(데이터 거버넌스(data-governance)가 누가 그것을 소유하고 큐레이션하는지 정의함)된 것은 품질 부서가 실제로 방어할 수 있는 버전입니다. 교육용 말뭉치는 명료함을 위해 이 비계를 떨어뜨립니다. 배포는 그래서는 안 됩니다.
분류 절반은 각 서술을 TF-IDF로 벡터화하고 — 단일 단어(유니그램)와 인접 단어 쌍(바이그램)을 특징으로, 용어 빈도 계수를 준선형(로그) 스케일로 누그러뜨리고, 가장 흔한 영어 채움말("the", "of")을 저신호 불용어(stop-words)로 제거 — 각 특징당 가중치 하나를 학습하여 그 합을 클래스 확률로 바꾸는 표준 방법인 로지스틱 회귀(logistic-regression) 분류기를 적합합니다. 분류기는 훈련되지 않은 데이터에서만 신뢰되므로, 일부를 시험 집합(test set)으로 떼어 두고 거기서 예측을 채점합니다. 그 떼어 둠이 train/test 분할입니다. 분할에 주목하세요. 이 책은 다른 모든 곳에서, 한 실행의 시간별 행이 train/test 선을 가로질러 누설되지 못하도록 배치별로(by batch) 묶어야 한다고 고집해 왔습니다(시험 행과 몰래 배치를 공유하는 행에서 훈련하면 점수가 부풀려집니다 — 데이터 누설(data leakage)). 여기서는 분석 단위가 다릅니다 — 각 행은 공유 배치 안의 한 시점이 아니라 독립적인 일탈 서술 하나입니다 — 그래서 지켜야 할 배치 묶음이 없고 평범한 층화(stratified) 홀드아웃이 정직한 선택입니다. 다섯 범주가 모두 분할 양쪽에 나타나도록 라벨로 층화하는데, 34행 말뭉치에서는 그것이 클래스별 표를 계산이라도 가능하게 하는 유일한 방법입니다. 벡터라이저와 분류기는 모든 특징과 계수가 읽힐 수 있도록 의도적으로 작고 들여다볼 수 있게 유지됩니다:
# examples/platform/ml/deviation_triage.py (excerpt)
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_report, f1_score
def train_triage(seed: int = 2026):
texts, labels = build_corpus()
vec = TfidfVectorizer(ngram_range=(1, 2), min_df=1, sublinear_tf=True, stop_words="english")
X = vec.fit_transform(texts)
Xtr, Xte, ytr, yte, *_ = train_test_split(
X, labels, range(len(labels)), test_size=0.33, random_state=seed, stratify=labels)
clf = LogisticRegression(max_iter=1000, C=4.0)
clf.fit(Xtr, ytr)
pred = clf.predict(Xte)
return {"macro_f1": round(float(f1_score(yte, pred, average="macro")), 3),
"report": classification_report(yte, pred, zero_division=0)}
검색 절반은 RAG 검색기 단계이며, LLM 없이 보여 줍니다 — 같은 TF-IDF 공간 위의 코사인 유사도가 가장 유사한 이전 일탈들을 그들의 점수와 함께 반환하므로, 약한 매치는 맹목적으로 신뢰되는 대신 표시될 수 있습니다. 이것은 위 검색기 파이프라인의 2단계부터 4단계까지(임베딩, 인덱싱, 질의)를 열두 줄로 담은 것입니다:
# examples/platform/ml/deviation_triage.py (excerpt)
from sklearn.metrics.pairwise import cosine_similarity
def retrieve_similar(query: str, k: int = 3):
"""The retrieval in Retrieval-Augmented Generation, shown without an LLM."""
texts, labels = build_corpus()
vec = TfidfVectorizer(ngram_range=(1, 2), min_df=1, sublinear_tf=True, stop_words="english")
corpus_vecs = vec.fit_transform(texts)
sims = cosine_similarity(vec.transform([query]), corpus_vecs).ravel()
order = np.argsort(sims)[::-1][:k]
return [(texts[i], labels[i], round(float(sims[i]), 3)) for i in order]
python platform/ml/deviation_triage.py를 실행하면 다음을 그대로 출력합니다. 검색 블록이 중요한 부분입니다. 새 "온도가 설정값 아래로 떨어졌다" 일탈이 7일째 BATCH-2026-001 일탈을 최상위 매치로 올바르게 떠올립니다. 분류 macro-F1은 의도적으로 수수합니다 — 조율된 것이 아니라 교육용 결과입니다 — 22 train / 12 test로 분할된 34-서술 말뭉치가 정확히 분류기를 망가뜨리는 소량 데이터(small-data) 영역이기 때문이며, 클래스별 분해가 그것을 정직하게 보여 줍니다(oos_assay 클래스는 시험 예시가 단 둘뿐이라 0.00을 기록). 마무리 NOTE는 이 장의 온 논증을 프로그램 자신의 출력으로 압축한 것입니다:
deviation triage + CAPA retrieval (the NLP under the GenAI copilot)
corpus: 34 SYNTHETIC deviation narratives, 5 categories (illustrative)
-- TRIAGE: TF-IDF (759 features) + LogisticRegression --
split: 22 train / 12 test macro-F1 = 0.542 (illustrative)
precision recall f1-score support
contamination 1.00 0.33 0.50 3
documentation 1.00 1.00 1.00 2
equipment 0.38 1.00 0.55 3
oos_assay 0.00 0.00 0.00 2
temperature 1.00 0.50 0.67 2
accuracy 0.58 12
macro avg 0.68 0.57 0.54 12
weighted avg 0.68 0.58 0.54 12
-- RETRIEVAL: new deviation, find similar prior cases (RAG retriever step) --
query: Production bioreactor temperature fell below the 36.5 C setpoint for several h...
sim=0.363 [temperature ] Bioreactor BR101 temperature excursion on day 7 of BATCH-2026-001; jacke...
sim=0.201 [temperature ] Temperature deviation in production bioreactor: setpoint 36.5 C, PV dipp...
sim=0.163 [temperature ] Production bioreactor jacket temperature spiked above the upper NOR duri...
NOTE: triage routes and retrieval grounds -- both ADVISORY. Under draft Annex 22 a generative/probabilistic model is excluded from CRITICAL GMP decisions; a human closes the CAPA. The Purolea warning letter (2026-04-02) is the enforcement anchor.
이것을 품질 책임자가 읽을 방식으로 읽으세요. 검색이 즉시 유용한 부분입니다. 새 온도 일탈이 가장 유사한 과거 사례 셋을 끌어내는데, 모두 진정으로 온도 관련이고 모두 진행 중인 예제의 공장 안에 있으며, 저신뢰 매치가 가시화되도록 유사도 점수가 붙어 있습니다. 점수 자체를 보세요 — 최상위 히트는 0.9가 아니라 0.363에 앉아 있습니다. 짧은 서술 34건 말뭉치에서는 올바른 이웃조차 질의와 어휘의 일부만 공유하며, 바로 이것이 점수가 숨겨지지 않고 보고되는 이유입니다. 그리고 그 크기를 절대값이 아니라 상대값으로 다루세요. 짧은 텍스트 위의 희소 TF-IDF 코사인은 구조상 낮게 나옵니다(대부분의 차원이 0이므로). 그래서 0.363은 이식 가능한 "좋은 매치" 문턱이 아니고 0.5는 보편적 합격선이 아닙니다 — 밀집 신경 임베딩으로 바꾸면 같은 올바른 이웃이 0.85를 기록할 수도 있습니다. 거버넌스 신호는 고정된 절단값에 대조한 생짜 숫자가 아니라, 이 검색기와 말뭉치에 맞춰 보정된(calibrated) 문턱(그리고 최상위 히트와 나머지 사이의 간격)입니다. 그래서 기권은 가장 좋은 매치가 이 인덱스가 보통 반환하는 것에 비해 약할 때 발화합니다. 그것이 RAG 검색기가 자기 한 가지 일을 하는 모습입니다 — 조사자를 빈 페이지가 아니라 실제 이전 사례에 접지시키고, 그 접지가 얼마나 강한지(또는 약한지) 표시하는 것.
이 시연이 무엇을 보여 주고 무엇을 보여 주지 않는지에 대한 정직한 단서 하나: 그것은 검색기의 메커니즘 — 임베딩, 인덱싱, 질의, 그리고 점수 붙은 이웃 반환 — 을 보여 주지만, 검색기를 측정하지는 않습니다. 합성 말뭉치가 라벨링된 질의/관련-문서 쌍을 지니지 않기 때문입니다. 위 절의 recall@k, precision@k, 평균 역순위 숫자는 바로 이 검색기를 검증하기 위해 당신이 계산할 그것이며(누락-하나-빼기(leave-one-out) 스윕: 각 일탈을 빼 두고 그것으로 질의하여 그것의 진짜 범주 동료들이 상위 k에 드는지 점검), 큐레이션된 관련성 집합을 갖춘 실제 말뭉치에서는 그것이 검토자가 승인 서명하는 합격 시험입니다. 여기서 목표는 지표가 아니라 파이프라인 형상입니다.
대조적으로 분류 분류기는 설계상 경고담입니다. 34행 말뭉치에서 macro-F1 0.54는 소량 데이터가 실제로 사주는 것입니다. 표제 숫자를 주의 깊게 읽으세요 — 정직한 지표는 정확도 0.58이 아니라 macro-F1 0.54입니다. (F1은 precision과 recall의 조화 평균입니다 — 둘 다 높을 때만 높은, 0에서 1까지의 단일 점수; macro-F1은 그 점수를 다섯 클래스에 걸쳐 각 클래스에 같은 가중치를 주어 평균합니다. 출력된 표에서 support는 단지 각 클래스에 떨어진 시험 예시의 개수입니다.) 정확도는 예측에 걸쳐 평균하므로, 풍부하고 쉬운 클래스가 실패를 덮어 버리게 둡니다. macro-F1은 클래스에 걸쳐 평균하여, 0으로 무너지는 두 예시짜리 oos_assay 행에 나머지와 같은 가중치를 주므로, 규제 환경에서 가장 중요한 — 위험한 일탈은 보통 흔치 않은 것이기에 — 바로 그 희소 클래스 실패를 드러냅니다. 쉬운 클래스가 어려운 클래스를 숨기지 못하게 하는 그 거부가, 여기서 정확도 대신 macro-F1을 보고하는 온 이유입니다. 교훈은 "더 나은 분류기를 만들라"가 아닙니다. 그것은 이 숫자가 기껏해야 자문이며, 그 위에서 초안 잡는 LLM은 더더욱 검증 불가능하고, 사람이 모든 것을 읽어야 한다는 것입니다. 확신에 찬 시연과 얇고 정직한 결과 사이의 그 간극이 아래 한계 절의 온 주제입니다.
한 일탈-조사 기록의 해부
GenAI 보조 아래의 일탈은, 이 시리즈의 모든 산물처럼, 헐벗은 LLM 답이 아닙니다 — 그것은 모델의 기여가 그렇게 라벨링되고, 그것들의 접지 증거 옆에 앉으며, 사람 서명 뒤에 게이트로 막힌 구조화된 조사 기록입니다. 품질 검토자가 할 방식으로 하나를 해부하세요. 구조가 곧 거버넌스이기 때문입니다.
AI 보조 일탈 기록 하나, 완전히 풀어헤친 것: 서술과 AI 제안 분류(자문), 초안을 접지시키는 RAG 검색 이전 사례들(각각 실제 문서를 인용), LLM 초안 요약과 CAPA(DRAFT로 찍힘, 사람이-검토해야-함), 그리고 결정적 거버넌스 핵심 — 품질 부서 검토자, 전자 서명, 감사 추적, 그리고 초안을 만들어 낸 모델 버전과 프롬프트 해시. AI는 선 위의 모든 필드를 가속한다. 그 아래의 서명은 모델이 만들도록 금지된 핵심 결정이다.
저자가 AI의 도움을 받아 직접 제작한 그림입니다.
카드를 필드별로 읽으면 이 장의 논증이 데이터 구조로 펼쳐집니다.
- 헤더 —
record_type,linked_batch.Deviation Investigation,DEV-2026-0142,BATCH-2026-001에 연결됨. 평범한 신원 필드. 결정적이고, 사람이 작성했으며, AI 개입 없음. 모든 하류 AI 필드가 실제의 추적 가능한 기록에 닻을 내리도록 존재합니다. - 핵심 —
narrative,ai_category,ai_severity. 사람이 작성한 자유 텍스트 서술(7일째 온도 일탈)이 입력입니다. AI가 제안한 범주(temperature)와 심각도가 그 옆에 타며, 각각 AI-자문이라 태깅되고 각각 신뢰도를 지닙니다. 이것들은 위 실행 가능 모델에서 온 분류 분류기의 출력입니다 — 최종 분류가 결코 아니라 배정 제안입니다. 검토자는 한 번의 키 입력으로 어느 쪽이든 무를 수 있고, 그 무름 자체가 로그됩니다. - 검색 —
sim_score와capa_ref를 동반한similar_prior[]. RAG 접지를 필드별로: 가장 유사한 이전 일탈 셋, 각각 그 유사도 점수(0.363, 0.201, 0.163 — 검색기가 출력한 바로 그 숫자)와 그것을 종결한 CAPA 참조를 동반하며, 각각 검토자가 열 수 있는 출처 인용과 함께 실제-문서에-접지됨이라 표시됩니다. 점수는 장식이 아니라 일급(first-class) 필드입니다. 최상위 점수가 0에 가까운 검색 블록은 그 위에 세워진 초안을 불신하라는 가시적 지시입니다. - 생성 —
draft_summary,draft_capa,hallucination_check. LLM의 초안 조사 요약과 초안 CAPA, 둘 다DRAFT와human-must-review로 찍히고, 초안 잡힌 각 주장이 검색된 청크로 거슬러 추적되었는지 기록하는 환각-점검 메모를 동반합니다. 이것들은 카드에서 가장 고가치이자 가장 저신뢰인 필드입니다 — 가장 많은 시간을 아끼고 검토자가 가장 적대적으로 읽어야 하는 것들입니다. - 거버넌스 —
qa_reviewer,e_signature,review_decision,audit_trail,model_version,prompt_hash. 결정적이고 GxP-통제된 핵심. 품질 부서 검토자, 전자 서명(21 CFR Part 11 / EU GMP Annex 11 — 전자 기록과 서명에 대한 오래된 규칙으로, 위의 새 AI 특화 Annex 22와는 다른 부속서), 검토 결정, 감사 추적 항목, 그리고 — 그 전체를 영구히 감사 가능하게 만드는 필드 — 초안을 만들어 낸 정확한model_version과prompt_hash(프롬프트는 LLM에 먹이는 지시 텍스트이고, 해시는 그 텍스트에서 계산된 짧고 고정된 지문 — 동일한 텍스트는 늘 같은 해시를 내고, 어떤 변경이든 다른 해시를 냄)이며, 그래서 "어느 모델이, 어느 프롬프트로, 이 텍스트를 생성했나?"가 기록의 수명 내내 답변 가능합니다. 모델 버전을 못 박는 것이 시스템을 조용히 표류시키는 대신 변경 시 재검증되게 하는 것이고, 프롬프트 해시는 초안을 재현 가능하게 만드는 것입니다. - 관계(보라색 패널) — 계보(lineage). 기록은 서술로부터
derivedFrom, 이전 CAPA에grounded-in, 못 박힌 모델 버전에 의해drafted-by, 품질 부서에 의해reviewed-by, 사람 서명에 의해closed-by. 이것은 무른 AI 필드들을 그들의 단단한 거버넌스에 잇는 출처(provenance) 그래프입니다.
서명 위의 모든 것은 가속이고, 서명 자체는 모델이 만들어서는 안 되는 핵심 결정입니다 — 그리고 둘 사이의 선은 정확히 필드 태그가 AI-advisory / DRAFT에서 GxP-controlled로 바뀌는 자리를 지납니다.
카드는 그래프다: 코파일럿을 신뢰하지 않고 접지시키도록 기록을 타이핑하기
보라색 관계 패널은 장식이 아닙니다 — 그것은 이 장이 동반 온톨로지 권과 만나는 이음매이며, 형식 계층을 명시적으로 명명하는 것이 카드를 정돈된 도해에서 규제자와 검색기가 둘 다 설 수 있는 무엇으로 바꿉니다. 그 다섯 에지 — derivedFrom, grounded-in, drafted-by, reviewed-by, closed-by — 는 정확히 OWL(웹 온톨로지 언어, Web Ontology Language) 온톨로지가 선언하는 종류의 타입 지정 객체 속성(typed object property)이며, 그것들 사이의 출처(provenance)는 표준 PROV-O 패턴입니다(엔티티(entity) — 기록 — 가 다른 엔티티를 wasDerivedFrom, 활동(activity) — LLM 초안 — 에 의해 wasGeneratedBy, 에이전트(agent) — 못 박힌 모델 버전 — 에 wasAttributedTo, 그리고 사람 에이전트가 서명). 이렇게 모델링하면 기록은 그 의미가 리팩터가 깨뜨릴 수 있는 칼럼 이름에 사는 표의 한 행이 아닙니다. 그것은 의미가 에지 자체로 실리는 주어-술어-목적어 트리플(triple)(RDF, 그래프 데이터 모델)의 집합입니다. Book 4 관계와 계보 장(relations-and-genealogy chapter)은 bp:derivedFrom을 단일 owl:TransitiveProperty로 구축하는데, 바로 계보 걷기가 진술된 부모 에지 하나로부터 임의의 깊이에 닿게 하기 위해서입니다 — 이것이 이 카드의 linked_batch 필드가 문자열이 아니라 같은 계보 척추로 들어가는 손잡이인 이유입니다. 일탈은 BATCH-2026-001을 derivedFrom하여 WCB-CHO-001까지 거슬러 가는 열한-조상 계보에 곧장 꽂힙니다.
두 가지 귀결이 이것을 어휘 이상으로 만듭니다. 첫째, 그런 그래프에 접지된 코파일럿은 GraphRAG — 느슨한 텍스트가 아니라 타입 지정 에지를 따르는 검색 — 를 하므로, "이 일탈과 운명을 공유하는 다른 로트는 무엇인가?"는 두 로트를 언급하는 단락을 바라는 대신 derivedFrom을 공유 셀 뱅크로 순회하여 답해집니다. 온톨로지와 AI 장(ontologies-and-AI chapter)이 정확히 그 GraphRAG 순회를 수행합니다. 의미론적으로 접지된 특징 — 부서지기 쉬운 칼럼 헤더가 아니라 자신의 온톨로지 IRI와 단위로 당겨진 값 — 은 또한, 상류 시스템이 태그명을 바꿀 때 분류 특징이 조용히 표류하지 않게 막는 것이며, 이는 Book 2의 의미 상호운용성 장(semantic-interoperability chapter)이 명명하는 실패 모드입니다. 둘째, 어떤 서브그래프든 생성기에 건네지기 전에 SHACL로 검증(Shapes Constraint Language, 그래프가 신뢰되기 전에 모든 필수 필드가 타입 지정되고 범위 안에 실려 있는지 점검)될 수 있습니다 — 비순응 출하를 거부하는 바로 그 폐쇄세계 출하 게이트(release gate)가 비순응 검색을 거부하는 입장 게이트(admission gate)로 두 배의 일을 합니다. capa_ref나 approvedBy 서명자가 없는 서브그래프는 LLM이 그 구멍을 유창하게 메우기 전에 잡힙니다. 그리고 같은 책이 놓이는 BFO(기본 형식 온톨로지, Basic Formal Ontology)의 지속체/발생체(continuant/occurrent) 구분이 카드를 타입 수준에서 정직하게 유지합니다 — 일탈 기록과 그것이 묘사하는 온도 이탈은 서로 다른 종류의 것(지속하는 정보 산물 대 일어났다가 끝난 과정)이므로, 모델은 측정을 그것이 온 실행과 조용히 뒤섞을 수 없습니다. ML 책이 거듭 다다르는 교훈을 온톨로지 자신의 용어로 진술하면: 유창한 모델은 그것이 접지된 타입 지정되고 형상 검증된 FAIR(찾을 수 있고, 접근 가능하고, 상호운용 가능하고, 재사용 가능한, Findable, Accessible, Interoperable, Reusable) 그래프만큼만 신뢰할 수 있습니다 — 온톨로지가 모델이 딛고 서는 진리 기반입니다.
단단한 한계: 환각, 검증, 그리고 누설
세 한계가 시연과 배포를 가르며, 셋 다 구조적입니다 — 더 큰 모델로 사라지지 않습니다.
환각(Hallucination). LLM은 옳든 그르든 유창하고 확신에 찬 텍스트를 생성합니다. 그것에는 "나는 모른다"는 내적 감각이 없습니다. 일탈 요약에서 이것이 위험한 것은 정확히 그 출력이 그럴듯하기 때문입니다 — 날조된 근본 원인은 실제 것과 똑같이 읽힙니다. Merck & Co. 연구는 이것을 "외견상 추론과 환각 사이의 상호작용"이라 직접 명명하며, 이것이 모든 방어 가능한 배포가 RAG로 접지되고(검색된 실제 문서로부터만 답함) 사람이 검토되는 이유입니다 [1]. RAG는 비율을 줄입니다. 0에는 닿지 않습니다. 모델이 여전히 실제 구절을 오독하거나 과확장할 수 있기 때문입니다. 완화 스택은 단일 지점이 아니라 계층적입니다. 검색 접지, 그다음 각 문장을 출처로 추적하는 충실성 점검, 그다음 기록의 hallucination_check 필드, 그다음 사람 검토자 — ISPE GAMP AI 가이드의 "LLM을 위한 일곱 통제 계층(seven control layers for LLMs)" — ISPE는 국제제약엔지니어링협회(International Society for Pharmaceutical Engineering)로 규제기관이 아니라 산업 단체이고, GAMP(우수 자동화 제조 관리 기준, Good Automated Manufacturing Practice)는 그 협회의 오래된 소프트웨어 검증 틀입니다 — 은 통제 틀로 쓰인 정확히 이 심층 방어(defense-in-depth) 자세입니다 [16]. 이 스택이 당신을 속이는 한 가지 미묘한 방식은 검색 인덱스 자체의 평가 누설(evaluation leakage)입니다. 말뭉치에 거의 중복인 문서들이 들어 있으면 — 같은 SOP 개정본 세 부, CAPA에 그대로 붙여 넣은 일탈 — recall@k와 충실성 점수가 인위적으로 높게 읽힙니다. 검색기가 어떤 질의에 대해서든 거의 정확한 쌍둥이를 항상 찾아낼 수 있고, 생성기가 그것을 한 단어 한 단어 베껴도 여전히 접지성 점검을 통과하기 때문입니다. 지표는 훌륭해 보이지만 시스템은 이식 가능한 무엇도 배우지 못했습니다. 해결책은 평범하나 필수적입니다. 인덱스를 중복 제거하고, 그 문서들이 인덱스에도 들어 있지 않은 깨끗한 홀드아웃(clean held-out) 관련성 집합에 대조해 검색기를 검증하여, 숫자가 암기된 중복이 아니라 실제 검색을 측정하게 하는 것입니다.
GxP 아래에서 비결정적 모델을 검증하기. 고전적 전산화 시스템 검증은 같은 입력이 같은 출력을 낸다고 가정하는데, LLM은 이를 보장하지 않습니다(표집 온도 — 텍스트 생성기의 무작위성 다이얼로, 바이오리액터 온도가 아니며 높을수록 어휘가 더 다양해짐 — top-k 표집 — 가장 가능성 높은 k개 선택지에서만 다음 단어를 뽑기 — 그리고 조용한 모델 갱신이 모두 출력을 움직임). Annex 22 초안, ISPE GAMP AI 가이드(2025년 7월, 일곱 통제 계층 포함), 그리고 FDA의 위험 기반 신뢰성 틀(credibility framework)은 모두 같은 자세로 수렴합니다. GMP 관련 목적에 쓰이는 모델은 검증 시점에 잠겨야(locked at validation) 하고, 사전 결정된 변경 통제 계획에 의해 다스려지며, 표류를 위해 감시되고, 그것이 결정에 얼마나 영향을 주는지에 비례하는 정밀 조사 수준에 묶여야 합니다 — FDA 틀은 그 정밀 조사를 모델의 "사용 맥락(context of use)"(전문 용어: 모델이 정확히 무엇에 쓰이고 그 출력이 결정에 얼마나 영향을 주는지 — 영향이 클수록 더 많은 정밀 조사를 받음)에 명시적으로 결부시킵니다 [5][16][17]. 지속적으로 갱신되는 클라우드 LLM은 이에 대해 가능한 가장 어려운 경우이며, 이것이 최고위험 용도가 규제자들이 통째로 도려내는 것들인 한 이유입니다.
데이터 누설과 기밀성. 배치 기록, 일탈, CMC 문서는 제조사의 가장 민감한 데이터에 속합니다. 그것들을 제삼자 LLM API로 보내면 노출 위험이 있고, 그것들로 공유 모델을 훈련하거나 미세조정(fine-tuning)(자신의 데이터로 모델을 추가 훈련하여 그로부터 배우게 하기)하면 데이터가 다른 고객의 출력에 다시 떠오를 위험이 있습니다. 이것이 GMP-신뢰 가능한 배포가 테넌트 격리(tenant-isolated, 당신 데이터를 다른 고객으로부터 벽으로 막음)되거나 온프레미스(on-premises, 공유 클라우드가 아니라 회사 자신의 서버에서 구동) 모델 위에서 돌아가는 이유이고(예: Bedrock 위의 Veeva 에이전트, 고객 격리 또는 고객 제공 모델, 회사 자신의 접근 통제 뒤의 사설 배포), 말뭉치를 회사 통제 안에 두고 프롬프트로 검색만 하여 모델이 결코 데이터를 흡수하지 않는 RAG가 독점 텍스트에 대한 미세조정보다 선호되는 이유입니다 [12][8]. 검색기의 문서 수준 권한은 여기서 이중의 일을 합니다. 그것은 주어진 사용자가 볼 권한이 없는 텍스트를 모델이 드러내지 못하게 막으므로, 기밀성이 생성 시점에 바라는 것이 아니라 검색 시점에 집행됩니다. 그리고 누설 한계에는 GMP 공장에서 기밀성만으로 끝나지 않고 더 무겁게 내려앉는 두 번째 얼굴이 있습니다 — 규제 기록 무결성(regulated-records integrity). 모델이 읽고 그에 대조해 초안 잡는 일탈, 배치 기록, CMC 절은 그 자체가 21 CFR Part 11과 EU GMP Annex 11 아래의 통제 기록이며, ALCOA+(귀속 가능, 가독, 동시 기록, 원본, 정확 — 더하기 완전, 일관, 영속, 가용)에 묶여 있습니다. 검색된 구절을 조용히 다시 쓰거나, 한정어를 떨어뜨리거나, 값을 날조하는 LLM은 단지 기밀성 위험이 아닙니다. 그것은 규제자가 소환할 수 있는 기록에 대한 데이터 무결성 사건입니다 — 바로 이것이 초안 잡힌 필드가 DRAFT로 찍히고, 원본 검색 청크가 그 옆에 그대로 보존되며, 사람이 검토하고 감사 추적이 누가 무엇을 바꿨는지 포착하기 전에는 모델이 손댄 어떤 것도 진실의 기록이 되지 않는 이유입니다.
이름 붙은 제품들, 성숙도와 증거 등급별
이 물결 아래의 벤더 목록은 길고 주장들은 뜨겁게 흐르므로, 각 이름을 성숙도와 증거 등급에 못 박을 가치가 있습니다 — 벤더 지형 장(vendor-landscape chapter)과 사례 연구 원장(case-study ledger)이 책 전체에 적용하는 규율입니다. 아래의 고객 성과 숫자 중 어느 것도 최상위 증거 바닥(독립 동료심사)을 넘지 못합니다. 달리 진술하지 않는 한 그것들은 벤더 또는 자체보고입니다.
- Aizon — GxP 제조 인텔리전스 플랫폼; 지능형 배치 기록(iBR)이 맥락화된 제조 데이터와 예측 ML 위에 앉아 예외에 의한 검토(사람이 문제를 표시한 기록만 읽음)를 가능케 합니다. 성숙도: iBR/분석은 상용, 에이전트형 "Agentic Studio" 능력(배치 출하 콕핏, OEE(종합 설비 효율, Overall Equipment Effectiveness — 표준 공장 생산성 지표) 추적기, PQR 템플릿의 대화형 생성, 2026년 초로 예정)은 사전 발표. 증거: 벤더 자체보고이며, Aizon 저자들의 QbD 기반(Quality by Design — 공정을 앞서 이해하여 품질을 처음부터 짜 넣기) AI-자격검증 절차(GMP 의미의 자격검증: 시스템이 의도대로 작동함을 문서화된 형식으로 입증)라는 주목할 만한 자체 저자 동료심사 예외가 있음 [10][14].
- ValGenesis — AI 보조 프로토콜/검증 초안과 디지털 기술 이전("Smart GxP")을 갖춘 검증 수명주기 관리. 성숙도: 상용 플랫폼, AI 기능은 더 새로움. 증거: 벤더 자체보고("80% 더 빠른 검증" 표현은 벤더 수치) [18].
- Veeva — Vault 플랫폼에 네이티브로 구축된 Vault AI 에이전트, Bedrock에서 호스팅되는 Anthropic(Claude)과 Amazon의 LLM 위에서, 고객 격리 또는 고객 제공 모델 옵션과 함께. 성숙도: 로드맵 — Quality 및 Safety 에이전트가 2026년 4월로 발표됨. 증거: 벤더 자체보고 로드맵 [12].
- Mareana — 배치 출하 코파일럿(Batch Release Copilot): LIMS(실험실 정보 관리 시스템, Laboratory Information Management System — 실험실의 결과 데이터베이스)/ERP(전사적 자원 관리, Enterprise Resource Planning — 사업 및 재고 시스템)/배치 기록 데이터를 수집하고, 매개변수를 규격과 역사적 추세에 대조 검증하며, 사람 결정을 위해 예외를 떠올리고, 근본 원인 분석을 위한 생성형 보조를 갖춘 규칙 엔진. 성숙도: 제품 / 초기 배포. 증거: 벤더 자체보고 [19].
- Microsoft Copilot — 일탈 초안을 위한 품질 시스템 문서 위의 RAG, 제약 품질 시스템에 배포되어 실무자/전문가 학회 기술(account)에 묘사됨. 성숙도: 비핵심 초안을 위해 파일럿-에서-상용으로 배포됨. 증거: 업계/전문가 학회 출처 [11].
- Siemens + Capgemini + Sanofi (MES의 GenAI) — 종이 배치 기록을 디지털로 교체하는 MES-가속 프로그램, 자체보고된 검토 시간 및 일탈 감소와 함께; 규제된 초안에 수평적 코파일럿을 판매하는 통합사 플레이(Accenture, Capgemini, Microsoft)를 대표함. 성숙도: 규모화 프로그램. 증거: 벤더/통합사 자체보고 [13].
원장이 강제하는 정직한 요약: 능력은 실재하고 플랫폼은 존재하지만, 표제의 성과 숫자들은 한결같이 자체보고이고, 에이전트형 등급은 검증된 상용이 아니라 로드맵-또는-사전-발표이며, 상용급 배포는 이 장이 내내 묘사해 온 자문적이고 사람이 개입하는 초안에 모입니다 [2].
미해결 과제: 두 번 같은 답을 주지 않는 시스템을 검증하기
가장 깊은 미해결 문제는 환각이 아닙니다 — RAG와 사람 검토가 그것에 대한, 불완전하나마 작동하는 완화책입니다. 그것은 검증의 정의와 생성형 모델의 본성 사이의 충돌입니다.
GMP 검증은 재현성 위에 놓입니다. 시스템이 정의된 입력을 받으면 올바른, 정의된 출력을 신뢰성 있게 낸다는 것을 시연하고, 그 속성이 수명 내내 유지되도록 변경 통제 아래 둡니다. 생성형 LLM은 이것을 뿌리에서 위반합니다. 같은 프롬프트가 두 번의 실행에서 다른 텍스트를 낼 수 있고, 조용한 공급자 측 모델 갱신이 하룻밤 새 행동을 옮길 수 있으며, "잠긴" 모델조차 다음 버전까지만 잠겨 있고 새것이 같은 자리에서 실패하리란 보장이 없습니다. 전통적 답 — 변경 시 재검증 — 은 이 책이 MLOps 장(MLOps chapter)(MLOps = 머신러닝 운영, Machine Learning Operations, 모델을 상용에 배포하고 유지하는 실무)에서 명명한 검증 역설(validation paradox)에 부딪칩니다. 가장 지속적 갱신이 필요한 모델이 검증을 유지하기 가장 어려운 모델이며, 규정을 지키려 그것을 얼리는 것은 그것을 쓰는 것을 정당화한 개선을 포기하는 것입니다.
이 분야에는 정착된 해법이 없고, 오직 진행 방향이 있습니다. 떠오르는 합의는 모델의 모든 출력이 아니라 시스템과 그 가드레일을 검증하는 것입니다. 검색기가 관련 있고 권한 있는 문서를 반환함을 검증하고(라벨링된 집합에 대조해 recall@k로 측정), 생성기가 그것들로부터만 답하고 그것들이 답을 뒷받침하지 않으면 기권하도록 제약됨을 검증하며(충실성 점검으로 측정), 사람 검토 게이트와 감사 추적을 검증하고, 모델 자체는 못 박힌 버전, 사전 결정된 변경 통제 계획, 그리고 진행 중인 표류 감시를 갖춘 통제된 구성요소로 다룹니다 [16][6]. 이것은 무엇이 검증 아래 있는지의 진정한 전환입니다 — 가중치가 아니라 포장(wrapper) — 그리고 이 장의 나머지가 향해 온 바로 그 들여다볼 수 있는 계층들(검색기 지표, 접지성 점검, 기록의 model_version/prompt_hash 필드)에 기댑니다. 그것은 정직하고 부분적인 답입니다. 그것이 사람을 루프에 유지하는 것은 정확히, 비결정적 생성기를 무인으로 신뢰할 만큼 충분히 결정적으로 만드는 법을 아직 아무도 모르기 때문이며 — 그리고 규정 초안은 생성형 AI를 핵심 결정에서 배제함으로써 본질적으로 그 불확실성을 법으로 성문화하고 있습니다.
이 장이 모델 모음에 더하는 것
이 장은 Book 5 예제 모음에 examples/platform/ml/deviation_triage.py 를 기여합니다. 모든 GMP 코파일럿 밑의 두 들여다볼 수 있는 NLP 과제를 시연하는, 독립적이고 네트워크 없는 모듈입니다. 그것은 진행 중인 예제의 어휘로 일탈 서술의 작은 합성 말뭉치를 만든 뒤, (1) 일탈을 다섯 범주 중 하나로 배정하는 TF-IDF + 로지스틱 회귀 분류 분류기를 훈련하고, (2) 같은 TF-IDF 공간 위의 코사인 유사도로 RAG 검색기 단계를 구현하여 가장 유사한 이전 일탈들을 점수와 함께 반환합니다. 그것은 QC-그리고-출하 OOS 작업(QC-and-release OOS work)(수치 OOS를 예측)과 포장 이상 모듈(packaging anomaly module)(serialization_anomaly.py, 구조화된 이벤트 위에서 추론)과 협조하며 — 의도적으로 중복하지 않습니다. 이 모듈은 텍스트 계층입니다. 검색 출력은 그대로이고 진정으로 유용하며(온도 질의가 실제 7일째 일탈을 떠올림), 분류 지표는 명확히 예시적이라 라벨링되고, 34행 말뭉치에서의 그 수수함이 소량 데이터 텍스트 분류에 대한 — 그리고 그 위의 생성 계층이 왜 자문에 머물러야 하는지에 대한 — 의도된 교훈입니다.
왜 중요한가
종이 자취는 바이오 제조에서 가장 나쁘게 규모화되고 사람 시간에서 가장 많은 비용을 치르는 부분입니다. 일탈이 쌓이고, 조사가 끌리며, CMC 문서가 몇 주를 잡아먹고, 모든 하나하나가 사람이 읽고 서명합니다. 생성형 AI는 그 작업을 진정으로 압축할 수 있는 첫 도구이며 — 초안 잡고, 검색하고, 분류하며 — 이 물결 전체에 걸쳐 보고된 시간 절약은, 자체보고된 표제 숫자를 할인하더라도, 품질 운영에 변혁적일 만큼 충분히 실재합니다. 그러나 그것을 유용하게 만드는 바로 그 유창함이 그것을 위험하게 만듭니다. 확신에 차고 틀린 조사 요약은 느리고 옳은 것보다 나쁘며, 초안 잡지 않고 결정하는 모델은 FDA가 이제 문서로 제재한 실패 모드입니다. 이 계층을 옳게 하는 것은 가속을 끌어안으면서, 규제자들이 그은 선을 지키는 것을 뜻합니다 — 사람이 검토하고, 사람이 서명하며, 모델은 결코 핵심 호출을 하지 않는 것. 그 규율은 기술에 대한 제동이 아닙니다. 그것은 제조사가 그것을 배포할 수 있게 하는 유일한 것입니다.
실제 현장에서는
일탈/CAPA와 지식 관리 용도는 GenAI 물결 전체에서 가장 활발한 구석이며, 대부분 비핵심 문서화에서 상용으로 비집고 가는 (파일럿)입니다. 동료심사된 닻은 제조 일탈에 대한 GPT-3.5, GPT-4, Claude-2의 Merck & Co. 연구입니다 — 정확한 추출, 명시적 환각 단서, 그리고 사람이 개입하는 헤지 [1]. MSD의 AWS-Bedrock 일탈 보조(Amazon OpenSearch를 벡터 저장소로)는 탐색적 RAG로 공개 기술됩니다 [8]; Microsoft Copilot은 일탈 초안을 위해 제약 품질 시스템에 배포됩니다 [11]; McKinsey는 한 제조사가 일탈의 약 70%를 종합하고 80%가 넘는 사례에 CAPA 초안을 만든다고 보고합니다(컨설팅 보고) [7]. 벤더 측에서는 위 이름 붙은 제품 표(Aizon, ValGenesis, Veeva, Mareana, 그리고 Siemens/Sanofi/Capgemini MES의 GenAI 협업)가 누가 이 공간에 판매 중인지를 다룹니다. 가져갈 한 가지 독해는, 거기 모든 고객 성과 숫자가 벤더 또는 자체보고라는 것입니다 — Sanofi의 약 8배 빠른 제품 품질 검토 수치를 포함하여, 그것은 검증된 결과가 아니라 목표로 읽어야 합니다 [9].
거버넌스 틀은 이제 추측이 아니라 구체적입니다. ISPE GAMP AI 가이드(2025년 7월)와 그 "LLM을 위한 일곱 통제 계층"이 검증 작전 교본을 주고, FDA의 위험 기반 신뢰성 틀이 정밀 조사를 모델 영향에 맞춰 스케일하며, Annex 22 초안(자문 기간 2025년 7월-10월)은 첫 제조 특화 AI 규칙으로, 핵심 GMP에는 정적이고 결정적인 모델(결정적 = 같은 입력이 늘 같은 출력을 냄; 정적 = 모델이 잠긴 뒤로는 계속 학습하지 않음 — 어휘를 변주하는 생성형 모델과 표류하는 지속학습형 모델의 반대)만 허용하고 생성형/지속학습형 AI를 핵심 사용에서 배제합니다 [16][17][5][6]. 그 부속서는 초안이며 — 확정은 2026년 중반으로 예상되고 배제는 잠정적입니다 — 그러나 그 방향은 명백합니다. 그리고 집행 닻은 Purolea cGMP 경고 서한(2026년 4월 2일), FDA가 AI를 인용한 첫 서한입니다. 한 회사가 21 CFR 211.22(c)가 요구하는 품질 부서 검토 없이 AI 에이전트를 써서 규격, SOP, 마스터 생산 기록을 생성했으니, 이 장이 주장하는 사람이 개입하는 규율의 정확한 반대입니다 [3][4][15]. 함께 읽으면, 규제자, 동료심사 문헌, 그리고 지금까지의 한 건의 집행 조치가 주는 메시지는 동일합니다. 생성형 AI는 초안을 잡고 검색합니다. 자격을 갖춘 사람이 결정하고 서명합니다.
핵심 용어
- GxP / GMP / cGMP — GxP는 의약품이 만들어지는 "Good x Practice" 규정의 우산 용어이고, GMP(우수 제조 관리 기준)는 그중 제조 부문이며, cGMP는 FDA의 "현행" GMP — 최신으로 유지되는 같은 표준.
- 대형 언어 모델(Large language model, LLM) — 방대한 텍스트로 훈련되어 유창한 자연어를 읽고 생성하는 신경 모델; 2023-2026 GenAI 물결의 엔진.
- 생성형 AI(Generative AI) — 분류하거나 점수 매기기만 하는 것이 아니라 새 콘텐츠(여기서는 텍스트)를 만들어 내는 모델; Annex 22 초안 아래 핵심 GMP 결정에서 배제됨.
- 검색증강 생성(Retrieval-Augmented Generation, RAG) — 회사 자신의 검증된 문서 위의 검색기를, 인용과 함께 그 문서들로부터만 답하라고 지시받은 생성기와 짝지음; LLM을 GMP에서 쓸 수 있게 만드는 구조.
- 검색기(Retriever) — 벡터/텍스트 유사도로 말뭉치에서 가장 관련 있는 구절을 찾는 구성요소; 청크, 임베딩, 인덱싱, 질의로 만들어지며, 여기서는 TF-IDF + 코사인 유사도로, 들여다볼 수 있고 검증 가능한 단계로 보여짐.
- 임베딩(Embedding) — 의미론적으로 유사한 텍스트를 가까이 두는 텍스트 청크의 벡터 표현; 희소/어휘적(TF-IDF, 들여다볼 수 있음) 또는 밀집/신경(문장 변환기, 불투명하나 의역 인식).
- 코사인 유사도(Cosine similarity) — 두 텍스트 벡터 사이의 가까움 점수: 그 사이 각도의 코사인으로, 0(공유 용어 없음)에서 1(동일한 방향)까지; 숫자가 높을수록 더 비슷하며, 문턱은 검색기와 말뭉치별로 보정됨.
- recall@k / precision@k — 고전적 검색기 지표: 올바른 문서가 상위 k 결과에 나타나는지(k = 당신이 요청하는 결과의 개수), 그리고 k개 중 몇 개가 관련 있는지; 검색기를 검증하는 단단한 숫자.
- F1 / macro-F1 — F1은 precision과 recall의 조화 평균으로, 둘 다 높을 때만 높은 0–1 점수; macro-F1은 그것을 클래스에 걸쳐 동등하게 평균하므로 희소 클래스가 쉬운 클래스 뒤에 숨을 수 없음.
- 충실성(접지성, Faithfulness/groundedness) — 생성기가 하는 모든 주장이 검색된 출처 구절로 뒷받침되는지의 점검; 생성기를 감시하는 더 무른 지표.
- 환각(Hallucination) — 사실상 틀렸으나 확신에 차고 유창한 출력; 규제 환경에서 생성형 AI의 중심 위험, RAG 접지와 사람 검토로 줄어듦(제거되지는 않음).
- 일탈 / CAPA(Deviation / CAPA) — 절차로부터의 기록된 이탈(일탈)과 그것을 해결하는 시정 및 예방 조치; LLM이 가장 많이 분류하고 초안 잡는 데 쓰이는 자유 텍스트 기록.
- 분류(텍스트 분류, Triage/text classification) — 자유 텍스트 일탈을 우선순위화하기 위해 범주와 심각도로 배정하기; 코파일럿 밑의 들여다볼 수 있는 NLP 과제.
- CMC 초안(CMC drafting) — 화학, 제조, 관리 규제 콘텐츠를 초안 잡는 데 GenAI를 쓰기; 통제된, 초안-그리고-검토 용도.
- 사람이 개입하는(Human-in-the-loop) — 자격을 갖춘 사람이 AI 출력을 검토하고 서명하는 규율(이제 규제 기대); 모델은 결코 핵심 결정을 하지 않음.
- 에이전트형 AI(Agentic AI) — 최소한의 사람 입력으로 계획하고 다단계 행동을 취하는 시스템; GMP에서 비핵심이고 사람이 개입하는 과제로 갇힘.
- Annex 22 초안(Draft Annex 22) — 핵심 GMP에 정적이고 결정적인 모델만 허용하고 생성형/지속학습형 AI를 핵심 사용에서 배제하는, AI에 관한 EU/PIC/S GMP 부속서 초안.
- Purolea 경고 서한(Purolea warning letter) — 품질 부서 검토 없이 AI를 써서 GMP 기록을 생성한 회사에 대한, FDA가 AI를 인용한 첫 cGMP 경고 서한(2026년 4월 2일); 집행 닻.
- RDF / OWL / PROV-O — RDF은 주어-술어-목적어 그래프 데이터 모델이고, OWL은 타입 지정 속성(전이적
derivedFrom)을 선언하는 논리 계층이며, PROV-O는 기록의derivedFrom/drafted-by/closed-by에지가 따르는 표준 출처 패턴(엔티티wasGeneratedBy활동wasAttributedTo에이전트)입니다. - GraphRAG — 저장소가 지식 그래프인 검색증강 생성으로, 코파일럿이 느슨한 텍스트가 아니라 타입 지정 에지를 따름(
derivedFrom을 공유 셀 뱅크로 순회); 의미론적으로 접지된 일탈 코파일럿이 취하는 형태. - SHACL 입장 게이트(SHACL admission gate) — 검색 서브그래프가 생성기에 닿기 전에 같은 폐쇄세계 출하 형상을 그 위에 돌려, 필수 필드(
capa_ref, 서명자)가 없는 서브그래프를 LLM이 그 구멍을 유창하게 메우기 전에 거부하기; 정확성이 아니라 완전성. - ISA-95 / B2MML / OPC UA — 실제 일탈 밑의 제조-데이터 표준: ISA-95가 MES 배치 기록을 구조화하고, B2MML이 시스템 간에 그것을 직렬화하며, OPC UA가 단위와 장비 신원을 실어 센서 맥락을 나름 — 분류 라벨을 추측이 아니라 감사 가능하게 만드는 메타데이터.
다음 이야기
제조 척추가 완성되었습니다 — 발견에서 유통까지 모든 단계가 학습되었고, 시스템 전체 계층(하이브리드 트윈, MLOps, 운영, 그리고 이제 언어)이 그려졌습니다. 7부는 ML이 바이오 제조에서 어떻게 작동하는지에서, 누가 그것을 팔고 무엇이 실제로 실재하는지로 방향을 돌립니다. 다음 장 벤더 지형: 누가 무엇을 팔고, 무엇이 실재하는가(The Vendor Landscape: Who Sells What, and What Is Real)는 이 책 내내 반복된 이름들 — Sartorius, AspenTech, Aizon, DataHow, Insilico/Yokogawa, Cytiva, Körber, ValGenesis, Veeva — 을 가져와 그들의 주장을 상용, 파일럿, 보도자료로 정렬하여, 구매자가 검증된 능력을 마케팅으로부터 가려낼 수 있게 합니다.