Gallium68GeneratorQualityChecker

Gallium68 Generator

decay correction endotoxins impurities microbiology PET radionuclide purity radiopharma SPECT
Открыть подборку
Gallium-68 Generator Quality Checker — Генератор ⁶⁸Ge/⁶⁸Ga для ПЭТ-диагностики (Ph. Eur. 2.14.1, USP <823>, EMA)

ℹ️  Утилита проверяет критические параметры элюата генератора: прорыв германия-68 (рассчитывается как % от активности Ga-68), объём элюата, рН элюата, металлические примеси (алюминий, железо), эндотоксины, стерильность.
ℹ️  Не использует машинное обучение — только математический расчёт процентов прорыва и проверка по фармакопейным пределам.
⚠️  КРИТИЧНО: Прорыв Ge-68 (≤0.001%) — недопустим из-за 271-дневного периода полураспада! Даже 0.0011% создаёт хроническую лучевую нагрузку на пациента при каждом использовании элюата!

Использование:
  Gallium68GeneratorQualityChecker.exe                            → демо-режим (вывод в консоль)
  Gallium68GeneratorQualityChecker.exe input.csv output.json      → оценка ваших данных

Формат input.csv:
BatchNumber,Ga68ActivityMBq,Ge68ActivityMBq,EluateVolumeMl,EluatePH,AluminiumPPM,IronPPM,EndotoxinsEU,SterilityTest

Пояснение полей:
• Ga68ActivityMBq — активность галлия-68 в элюате при измерении (МБк)
• Ge68ActivityMBq — активность германия-68 в том же образце элюата (МБк)
• EluateVolumeMl — объём полученного элюата (мл)
• EluatePH — рН элюата
• AluminiumPPM — содержание алюминия (ppm)
• IronPPM — содержание железа (ppm)
• EndotoxinsEU — эндотоксины (EU/vial)
• SterilityTest — стерильность (0=стерильно, 1=контаминация)

Пример:
  Ga68-Gen-2026-001,1000.0,0.01,7.5,2.0,5.0,5.0,100.0,0
  → Прорыв Ge-68 = (0.01 / 1000.0) × 100% = 0.001% (в пределе)

— ЗАЧЕМ ЭТО НУЖНО?
Генераторы ⁶⁸Ge/⁶⁸Ga — основной источник галлия-68 для ПЭТ-диагностики нейроэндокринных опухолей и рака простаты:
• Ежедневное получение стерильного, апирогенного элюата с Ga-68
• Используется для мечения пептидов (DOTATATE, PSMA) в радиофармацевтических лабораториях
• Генератор содержит Ge-68 (T½=271 дней), который распадается в Ga-68 (T½=68 мин)
⚠️ КРИТИЧЕСКИ ВАЖНО:
• Прорыв Ge-68 ≤0.001% — Ge-68 имеет период полураспада 271 ДЕНЬ! Даже 0.0011% создаёт ЗНАЧИТЕЛЬНУЮ ХРОНИЧЕСКУЮ ЛУЧЕВУЮ НАГРУЗКУ на пациента при каждом исследовании. Недопустим для клинического применения!
• Объём элюата 5.0–10.0 мл — обеспечивает оптимальную концентрацию Ga-68 для последующего мечения
• рН элюата 1.5–3.0 — критично для эффективности мечения пептидов. Вне диапазона — снижение выхода меченого препарата!
• Алюминий ≤10 ppm — концентрации ≥10 ppm вызывают артефакты накопления в костях на ПЭТ
• Железо ≤10 ppm — влияет на стабильность и эффективность мечения
• Эндотоксины ≤175 EU/vial — критично для последующего внутривенного введения меченого препарата
• Стерильность — ОБЯЗАТЕЛЬНО для элюата, используемого в производстве стерильных препаратов
⚠️ Особое внимание: Прорыв Ge-68 измеряется через 10 минут после элюирования (когда Ga-68 частично распался, а Ge-68 остался). Измерение активностей Ge-68 и Ga-68 ДОЛЖНО проводиться в ОДНО И ТО ЖЕ ВРЕМЯ с коррекцией на время! Расчёт: (Активность Ge-68 / Активность Ga-68) × 100%. Генератор считается непригодным при превышении прорыва Ge-68 даже на 0.0001%! Контроль проводится ПЕРЕД КАЖДЫМ элюированием.
Критические параметры:
• Прорыв Ge-68: ≤0.001% от активности Ga-68 (Ph. Eur. 2.14.1, USP <823>, EMA)
• Объём элюата: 5.0–10.0 мл
• рН элюата: 1.5–3.0
• Алюминий: ≤10 ppm
• Железо: ≤10 ppm
• Эндотоксины: ≤175 EU/vial
• Стерильность: отсутствие роста микроорганизмов
⚠️ Особенность: Утилита рассчитывает процент прорыва АВТОМАТИЧЕСКИ на основе измеренных активностей. Это исключает человеческие ошибки при ручном расчёте. Все измерения активности должны быть скорректированы на время и выполнены на калиброванном детекторе. Генератор считается непригодным при превышении прорыва Ge-68 даже на 0.0001%! Регулярный контроль прорыва — обязательное условие для клинического использования генератора.

input.csv

BatchNumber,Ga68ActivityMBq,Ge68ActivityMBq,EluateVolumeMl,EluatePH,AluminiumPPM,IronPPM,EndotoxinsEU,SterilityTest
Ga68-Gen-2026-001,1000.0,0.01,7.5,2.0,5.0,5.0,100.0,0
Ga68-Gen-2026-002,850.0,0.015,6.0,1.8,8.0,7.0,120.0,0

URS & FS — пользовательские требования и функциональная спецификация

Этот документ описывает требования пользователя и функциональную спецификацию для утилиты контроля качества. Он предназначен для обсуждения внедрения, подготовки IQ/OQ и интеграции в контур ОКК/QC.

Утилита: Gallium68GeneratorQualityCheckerAPI / объект: Gallium68 GeneratorКатегория: Radiopharmaceuticals

1. Область применения

Утилита Gallium68 Generator Quality Checker применяется для объекта Gallium68 Generator. Источником истины для структуры входных данных является фактический input.csv; критерии контроля задаются исполняемым модулем и предметным описанием.

Утилита не использует машинное обучение; решение формируется детерминированными правилами.

Категории: Radiopharmaceuticals

Теги: decay correction, endotoxins, impurities, microbiology, PET, radionuclide purity, radiopharma, SPECT, sterility

2. Режимы запуска

Gallium68GeneratorQualityChecker.exe                            → демо-режим (вывод в консоль)
Gallium68GeneratorQualityChecker.exe input.csv output.json      → оценка ваших данных

3. Ключевые контролируемые области

  • чистота и примеси
  • микробиология и патогены
  • pH и физико-химические параметры
  • радиоактивность, распад и радиохимическая чистота

4. Предметные ограничения и критические параметры

  • ℹ️ Утилита проверяет критические параметры элюата генератора: прорыв германия-68 (рассчитывается как % от активности Ga-68), объём элюата, рН элюата, металлические примеси (алюминий, железо), эндотоксины, стерильность.
  • ⚠️ КРИТИЧНО: Прорыв Ge-68 (≤0.001%) — недопустим из-за 271-дневного периода полураспада! Даже 0.0011% создаёт хроническую лучевую нагрузку на пациента при каждом использовании элюата!
  • ⚠️ КРИТИЧЕСКИ ВАЖНО:
  • Прорыв Ge-68 ≤0.001% — Ge-68 имеет период полураспада 271 ДЕНЬ! Даже 0.0011% создаёт ЗНАЧИТЕЛЬНУЮ ХРОНИЧЕСКУЮ ЛУЧЕВУЮ НАГРУЗКУ на пациента при каждом исследовании. Недопустим для клинического применения!
  • Объём элюата 5.0–10.0 мл — обеспечивает оптимальную концентрацию Ga-68 для последующего мечения
  • рН элюата 1.5–3.0 — критично для эффективности мечения пептидов. Вне диапазона — снижение выхода меченого препарата!
  • Алюминий ≤10 ppm — концентрации ≥10 ppm вызывают артефакты накопления в костях на ПЭТ
  • Железо ≤10 ppm — влияет на стабильность и эффективность мечения
  • Эндотоксины ≤175 EU/vial — критично для последующего внутривенного введения меченого препарата
  • Стерильность — ОБЯЗАТЕЛЬНО для элюата, используемого в производстве стерильных препаратов
  • ⚠️ Особое внимание: Прорыв Ge-68 измеряется через 10 минут после элюирования (когда Ga-68 частично распался, а Ge-68 остался). Измерение активностей Ge-68 и Ga-68 ДОЛЖНО проводиться в ОДНО И ТО ЖЕ ВРЕМЯ с коррекцией на время! Расчёт: (Активность Ge-68 / Активность Ga-68) × 100%. Генератор считается непригодным при превышении прорыва Ge-68 даже на 0.0001%! Контроль проводится ПЕРЕД КАЖДЫМ элюированием.
  • Критические параметры:
  • Прорыв Ge-68: ≤0.001% от активности Ga-68 (Ph. Eur. 2.14.1, USP <823>, EMA)
  • Объём элюата: 5.0–10.0 мл
  • рН элюата: 1.5–3.0
  • Алюминий: ≤10 ppm
  • Железо: ≤10 ppm
  • Эндотоксины: ≤175 EU/vial
  • Стерильность: отсутствие роста микроорганизмов
  • ⚠️ Особенность: Утилита рассчитывает процент прорыва АВТОМАТИЧЕСКИ на основе измеренных активностей. Это исключает человеческие ошибки при ручном расчёте. Все измерения активности должны быть скорректированы на время и выполнены на калиброванном детекторе. Генератор считается непригодным при превышении прорыва Ge-68 даже на 0.0001%! Регулярный контроль прорыва — обязательное условие для клинического использования генератора.
Пределы, указанные в описании, должны быть сверены с актуальной утверждённой спецификацией, фармакопейной монографией и регистрационным досье перед продуктивным применением.

5. URS — пользовательские требования

IDТребованиеКритичностьКритерий приемки
URS-001Система должна принимать файл input.csv для Gallium68 Generator с точным набором колонок, перечисленным в разделе «Контракт входных данных».HighФайл с корректным заголовком читается без ручного редактирования; отсутствие обязательной колонки приводит к FAIL/ошибке импорта.
URS-002Система должна обрабатывать запуск без аргументов в демонстрационном режиме и запуск с аргументами input.csv output.json для пользовательских данных.MediumОба сценария запуска дают предсказуемый результат или понятное сообщение об ошибке.
URS-003Система должна выполнять rule-based контроль по областям: чистота и примеси, микробиология и патогены, pH и физико-химические параметры, радиоактивность, распад и радиохимическая чистота.HighКаждый контролируемый параметр получает статус и сообщение; результат не зависит от скрытых Excel-формул или ML.
URS-004Система должна сохранять трассируемость между серией/партией, исходными значениями, применёнными правилами и итоговым вердиктом.HighВ выходе присутствуют идентификатор серии, исходные значения, статусы параметров и критические находки.
URS-005Система должна формировать машинно-читаемый output.json для LIMS/ELN/MES, batch record и QA/QC review.HighJSON содержит общий статус, массив проверок, предупреждения, отказы и ссылку на исходный файл.
URS-006Система должна поддерживать применение в валидационном пакете клиента: URS/FS, IQ/OQ-подготовка, проверка установки и операционных сценариев.HighДокумент, тестовые сценарии и воспроизводимый CSV/JSON-поток пригодны для аудита и внутреннего согласования.
URS-007Система должна явно отделять технические ошибки данных от предметных несоответствий спецификации.MediumОшибки схемы/типов не смешиваются с фармакопейными отклонениями и отображаются отдельно.

6. Контракт входных данных input.csv

Источник истины для схемы входа — фактический заголовок input.csv. Имена колонок технические и не переводятся.

#КолонкаТипЕд.ОписаниеПримерПравило контроля
1BatchNumberидентификаторas specifiedBatch NumberGa68-Gen-2026-001обязательное поле; используется для трассируемости серии/партии
2Ga68ActivityMBqдесятичное числоMBqGa68 Activity MBq1000.0обязательное числовое значение; сравнение с правилом выполняет утилита
3Ge68ActivityMBqдесятичное числоMBqGe68 Activity MBq0.01обязательное числовое значение; сравнение с правилом выполняет утилита
4EluateVolumeMlдесятичное числоas specifiedEluate Volume Ml7.5обязательное числовое значение; сравнение с правилом выполняет утилита
5EluatePHдесятичное числоas specifiedEluate PH2.0обязательное числовое значение; сравнение с правилом выполняет утилита
6AluminiumPPMдесятичное числоppmAluminium PPM5.0обязательное числовое значение; сравнение с правилом выполняет утилита
7IronPPMдесятичное числоppmIron PPM5.0обязательное числовое значение; сравнение с правилом выполняет утилита
8EndotoxinsEUдесятичное числоas specifiedEndotoxins EU100.0число; критический показатель безопасности, сравнивается с лимитом эндотоксинов
9SterilityTestлогический флаг0/1Sterility Test0значение должно быть допустимым флагом; для запрещённых микроорганизмов и роста обычно ожидается 0 / отсутствие

Пример CSV

BatchNumber,Ga68ActivityMBq,Ge68ActivityMBq,EluateVolumeMl,EluatePH,AluminiumPPM,IronPPM,EndotoxinsEU,SterilityTest
Ga68-Gen-2026-001,1000.0,0.01,7.5,2.0,5.0,5.0,100.0,0

7. FS — функциональная спецификация

IDФункцияОписание реализации
FS-001CLI entry pointИсполняемый файл Gallium68GeneratorQualityChecker.exe принимает режим демонстрации и режим обработки input.csv output.json.
FS-002CSV parserМодуль импорта читает CSV, проверяет заголовок, порядок/наличие колонок, количество значений и кодировку. Для десятичных значений ожидается точка.
FS-003Field conversionДля каждой колонки выполняется преобразование к ожидаемому типу: идентификатор, текст, десятичное число, дата/время или логический флаг.
FS-004Domain rule engineДля объекта Gallium68 Generator применяются явные правила: диапазон, минимум, максимум, отсутствие запрещённого признака, полнота данных или расчётная проверка.
FS-005Criticality handlingКритичные нарушения формируют FAIL; некритичные отклонения и неполные данные формируют WARNING; соответствие всем правилам формирует PASS.
FS-006JSON writeroutput.json сохраняет общий статус, результаты по каждому параметру, исходные значения, предупреждения, отказы и диагностические сообщения.
FS-007Integration contractФормат CSV → JSON стабилен для вызова из LIMS/ELN/MES, планировщика задач или wrapper-сервиса.
FS-008Error handlingПри ошибке схемы, отсутствующем файле, нечисловом значении или невозможности записи JSON возвращается диагностируемая ошибка без тихого PASS.

8. Выходной контракт output.json

Выходной файл должен быть пригоден для автоматической обработки, аудита и сопоставления с исходной строкой input.csv.

{
  "utility": "Gallium68GeneratorQualityChecker",
  "api": "Gallium68 Generator",
  "batchNumber": "Ga68-Gen-2026-001",
  "overallStatus": "PASS|WARNING|FAIL",
  "checkedAtUtc": "2026-05-18T00:00:00Z",
  "checks": [
    {
      "parameter": "BatchNumber",
      "value": "Ga68-Gen-2026-001",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Ga68ActivityMBq",
      "value": "1000.0",
      "unit": "MBq",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Ge68ActivityMBq",
      "value": "0.01",
      "unit": "MBq",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "EluateVolumeMl",
      "value": "7.5",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "EluatePH",
      "value": "2.0",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "AluminiumPPM",
      "value": "5.0",
      "unit": "ppm",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "IronPPM",
      "value": "5.0",
      "unit": "ppm",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "EndotoxinsEU",
      "value": "100.0",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    }
  ],
  "criticalFindings": [],
  "sourceFile": "input.csv"
}

9. Тестовые сценарии OQ/PQ

IDСценарийОжидаемый результат
TC-001Валидный CSV с заголовком и строкой из примераВсе строки обработаны; результат содержит PASS/WARNING/FAIL и детализацию по параметрам.
TC-002Отсутствует обязательная колонка из input.csvИмпорт отклоняется или строка получает FAIL со ссылкой на схему.
TC-003Числовое поле содержит текст или пустое значениеФиксируется ошибка преобразования типа; результат не маскируется как PASS.
TC-004Параметр выходит за предел спецификации / критического лимитаДля критического параметра формируется FAIL; для некритического — WARNING согласно правилу.
TC-005Положительный патогенный/микробиологический флаг или превышение микробиологического лимитаФормируется критический FAIL с указанием параметра.
TC-008Некорректная активность, время отсчёта или радиохимическая чистотаФормируется FAIL/WARNING с расчётной трассировкой.

10. QA/QC, CSV и управление изменениями

  • Перед применением на производстве клиент фиксирует версию исполняемого файла, контрольную сумму, версию спецификации/монографии, тестовый CSV, ожидаемый JSON и результаты IQ/OQ.
  • Нельзя менять имена колонок без обновления валидатора и тестовых сценариев.
  • Исходный CSV, output.json и версия утилиты должны храниться вместе как пакет доказательств.
  • Любое изменение правил контроля должно проходить change control и повторную проверку OQ-сценариев.

Входит в пакеты

Андрология

Пакет для андрологии: андрогены, препараты эректильной дисфункции, ДГПЖ/простата, фертильность и связанные гормональные проверки.

Открыть

Эндокринология

Пакет для эндокринологии: щитовидная железа, гипофизарные/пептидные гормоны, кортикостероиды, половые гормоны и часть метаболических препаратов.

Открыть

Неврология

Пакет для неврологии и психоневрологии: противоэпилептические, противопаркинсонические, антидепрессанты, антипсихотики, анальгетики и диагностические радиофармпрепараты.

Открыть

PetRad QC Suite

Пакет специализированных утилит для контроля качества радиофармпрепаратов: ПЭТ, SPECT, терапевтические радионуклиды, генераторы и расчёты распада.

Открыть

Радиология

Пакет для радиологии и диагностической визуализации: радиофармпрепараты, PET/SPECT, контрастные вещества, йодсодержащие и гадолиниевые препараты, а также проверки частиц, стерильности и эндотоксинов.

Открыть

RPH: объединённый радиофармацевтический QC-пакет

RPH объединяет PetRad, PetRad2 и PetRad3 в один обзорный пакет для PET/SPECT, терапевтических радионуклидов, генераторов, меченых соединений, расчётов распада, стерильности, эндотоксинов и радиохимической/радионуклидной чистоты.

Открыть

Урология

Пакет для урологии: препараты ДГПЖ, мочекаменной болезни, гиперактивного мочевого пузыря, инфекций мочевых путей и сопутствующие антимикробные QC-проверки.

Открыть