Розробка ШІ-системи фармаконагляду (Pharmacovigilance AI)

Ручний розбір повідомлень про небажані реакції не встигає за обсягом і потребує дедалі більше людей. Ми розробляємо ШІ-систему фармаконагляду під ключ: витягуємо дані, класифікуємо випадки та вибудовуємо простежуваний процес звітності. Терміни обробки скорочуються в рази, а повнота розбору перестає залежати від завантаження команди.
Часті запитання

Фармаконагляд ШІ: де ручний розбір повідомлень ламається

Потік повідомлень про небажані явища ніколи не буває однорідним: звернення пацієнтів, звіти лікарів, листи, заповнені форми, дзвінки до служби підтримки, публікації та обмін із партнерами надходять у вільній формі та різними мовами.

У кожному потрібно знайти діючу речовину, реакцію, наслідок, супутні препарати та терміни приймання — а потім оцінити серйозність випадку.

Саме на цьому кроці потік перестає проходити: ручний розбір випадків упирається в кількість фахівців, і вузьке місце виявляється не в аналітиці, а в розборі.

Поки обсяг невеликий, помилки кодування майже непомітні: один фахівець тримає в голові трактування й кодує терміни однаково. Коли потік зростає, долучаються різні люди та чергування, і той самий випадок починають кодувати по-різному.

Дублікати не відсіюються, зв'язок «препарат — реакція — наслідок» розривається під час копіювання між системами, а черга необроблених повідомлень зростає швидше, ніж її встигають закривати.

Ціна проявляється в затримці звітності: серйозні випадки відправляються в регламентний термін, що вимірюється днями, а час витрачається на читання й розмітку, а не на оцінку сигналу.

Прострочення й неповне повідомлення — це вже не внутрішня метрика, а ризик для реєстраційного статусу. Гірше того, рідкісний зв'язок «препарат — реакція» тоне в загальній масі й виявляється на місяці пізніше, коли когорта випадків уже зібралася.

Розбираємо, як це закривається: вилучення сутностей і нормалізація термінів за словником знімають із людини рутину, маршрутизація за класом серйозності виводить на ручний розбір лише спірні випадки, а контроль якості та дедуплікація не дають помилкам кодування накопичуватися.

Вимірювані ефекти: швидкість, повнота, простежуваність

Перший вимірюваний зсув — термін первинної обробки випадку. Раніше він визначався тим, як швидко фахівець розбере вхідний потік: лист, форму зворотного зв'язку, дзвінок до медичної підтримки.

Модель класифікує звернення, виокремлює небажану реакцію, препарат, дозування й наслідок, а фахівець перевіряє та підтверджує результат — час іде на верифікацію, а не на ручний розбір.

Повнота даних про випадки перестає залежати від уважності окремої людини. Обов'язкові поля — дата початку реакції, критерій серйозності, супутня терапія — перевіряються на вході, а не на етапі вивантаження в регуляторний звіт.

Незаповнене поле не йде далі: система запитує відсутнє в джерела або ставить випадок у чергу на уточнення.

Простежуваність рішень — те, що найчастіше цікавить перевіряльників. У кожного кроку залишається запис: яка версія моделі дала підказку, що вона запропонувала, що підтвердив або виправив фахівець, на якій версії словника MedDRA виконано кодування.

Відповідь на питання «чому випадок віднесли до серйозних» збирається з журналу, а не відновлюється з пам'яті.

Частка ручних операцій падає насамперед на сортуванні та первинному розборі — наймасовіших кроках.

Зникає й клас відмов, пов'язаних із людським фактором на рутині: прострочені терміни щодо випадків із неявною серйозністю, загублені дублікати одного пацієнта, розбіжності між формою E2B(R3) та внутрішньою карткою. На виході в команди залишається один набір метрик, за яким видно, де саме потрібне доопрацювання.

Варіанти організації: хмара, контур клієнта, гібрид

Вибір схеми розміщення визначає не зручність експлуатації, а те, які дані фізично залишають периметр замовника. Для фармаконагляду це принципово: повідомлення про небажані реакції містять персональні дані пацієнта, а терміни подання звітів регулятору жорсткі. Тому схему вибирають за вимогами до ізоляції медичних даних, а не за зручністю команди.

Порівняння схем

Варіант Коли підходить Обмеження
Хмарний контур Обробка знеособлених даних поза периметром допустима, потрібен швидкий запуск Псевдонімізація на вході; канал зв'язку стає частиною контуру — потрібен буфер і повторне надсилання в разі обриву
Контур замовника Персональні дані не залишають інфраструктуру, є власні потужності та служба експлуатації Оновлення моделей відбувається через внутрішні погодження; резервні копії та журнал доступу — на боці замовника
Гібридна схема Дані залишаються всередині, навчання й оновлення моделей — зовні Дві точки інтеграції, синхронізація версій моделей, розмежування доступу між контурами

Схему фіксуємо на етапі проєктування й закладаємо змінним шаром: приймання повідомлень і черга живуть на межі контуру, тому перехід із хмари в контур замовника не вимагає переписувати логіку обробки та правила маршрутизації випадків.

Етапи впровадження: від аудиту процесів до передачі

Порядок робіт тут зворотний до звичного розроблення: спочатку розбираємо, як випадки народжуються й живуть в організації, і лише потім пишемо код. Правила, витягнуті з регламентів і живої практики, лягають у систему відразу, а не переробляються після першого приймання.

  1. Аудит процесів фармаконагляду. Проходимо по всіх джерелах — пошта, портали, література, звернення контакт-центру, — фіксуємо формати, обсяг, затримки та те, хто ухвалює рішення на кожному кроці. На виході карта джерел із частотою та якістю даних.
  2. Схема потоків даних. Погоджуємо цільову схему: що вилучається автоматично, що йде на ручну перевірку, де стоять точки контролю та як ведеться історія змін щодо кожного випадку.
  3. Налаштування словників. Підключаємо медичні словники й довідники, налаштовуємо зіставлення термінів, правила визначення серйозності, дублікатів і очікуваності — на реальних прикладах з архіву замовника.
  4. Правила маршрутизації випадків. Прописуємо, кому й за який час надходить кожен випадок, як працює ескалація в разі прострочення, хто чергує та що відбувається за недоступності співробітника.
  5. Приймальні перевірки. Проганяємо систему на історичних випадках із відомою правильною відповіддю: дивимося частку коректно розібраних, кількість хибних спрацювань і час до передачі далі за процесом.
  6. Передача та навчання. Віддаємо конфігурації, схеми й регламенти, навчаємо команду, запускаємо паралельний режим: система й фахівці працюють одночасно, розбіжності розбираються, і лише потім ручний контур вимикається.

Що залишається в замовника: конфігурації та регламенти

Впровадження закінчується не демонстрацією працюючого сервісу, а передачею комплекту, за яким систему зможе вести будь-яка команда. Усе перелічене лежить у спільному репозиторії та внутрішній базі знань — без усних домовленостей і «знання одного інженера».

  • Конфігурація системи — параметри контурів розроблення, приймання та промислової експлуатації: ліміти на паралельну обробку повідомлень, правила повторних спроб у разі збоїв обміну, налаштування черг.
  • Схеми потоків даних — шлях повідомлення від джерела (поштова скринька, портал, файловий обмін) через нормалізацію й кодування до запису в базу та вивантаження, з позначеними точками ручної перевірки.
  • Політики доступу — ролі за принципом мінімально необхідних прав, журнал дій користувачів, окремі контури для персональних даних і правила для зовнішніх підрядників.
  • Налаштовані словники — термінологія небажаних явищ, зіставлення з внутрішніми довідниками, правила склеювання дублів і повторних повідомлень про один випадок.
  • Комплект документації — опис архітектури, інструкція оператора, чек-ліст приймання та матриця простежуваності «вимога — перевірка — звіт».
  • Регламент супроводу — періодичність перенавчання та перевірки якості розпізнавання на розміченій вибірці, порядок оновлення словників, умови й процедура відкату до попередньої версії, схема ескалації інцидентів.

Комплект знімає головний ризик таких проєктів: коли модель поводиться інакше, ніж на демонстрації, розбиратися є з чим і кому.

Розбір кейса: до і після на потоці повідомлень

До впровадження потік повідомлень про небажані явища розбирався вручну: листи, форми зворотного зв'язку та звернення медпредставників ішли в одну чергу.

Щодо кожного випадку фахівець заново визначав речовину, реакцію, серйозність і зв'язок із уже відкритим випадком, а в пікові дні термін первинної обробки сягав чотирьох годин.

Що змінили

Розбір тексту російською та англійською спирається на галузевий довідник термінів; додали правила дедуплікації за ключовими полями та оцінку впевненості для кожної ознаки. На ручну перевірку йдуть лише випадки нижче порогу впевненості.

Результат збирається в структуру, сумісну з E2B(R3), — вивантаження в регуляторний контур не потребувало окремого складання.

Заміри на тому самому потоці: медіанний термін первинної обробки скоротився з чотирьох годин до сорока хвилин, пікові дні перестали переходити в понаднормову роботу. Частка випадків без ручних правок зросла приблизно з половини до дев'яти з десяти.

Кількість ескалацій на перевірку впала майже втричі, і фахівці зайнялися спірними та серйозними випадками замість механічної розмітки.

Кожне автоматичне рішення зберігає слід: які поля вилучено, з якою впевненістю, за яким правилом склеїлися повтори. Це дає змогу розібрати будь-яку розбіжність і донавчити модель на накопичених прикладах, не переробляючи інтеграції.

Чим відрізняється сигнальний менеджмент від розбору випадків?

Розбір окремого випадку — це обробка одного повідомлення: валідація, кодування термінів за MedDRA, оцінка серйозності та причинно-наслідкового зв'язку, надсилання регулятору в строк.

Одиниця роботи тут — повідомлення, а перевірка зводиться до повноти й коректності конкретного запису.

Сигнальний менеджмент влаштований інакше: він не розбирає повідомлення, а агрегує однотипні події по всій базі, зіставляє спостережувану частоту з очікуваною та відокремлює статистичний шум від нового ризику. Одиниця роботи — сигнал, а не випадок, тому й дані, і строки, і логіка перевірок тут інші.

Контур Дані Строки Що перевіряє ШІ
Розбір окремих випадків одне повідомлення строк за критерієм серйозності пропуски полів, розбіжності кодування
Агрегація сигналів вся база за період цикл перерахунку зростання частоти, несподівані поєднання
Періодична звітність підтверджені сигнали та зведення календарний період повнота й несуперечливість зведення

Третій контур — періодична звітність — збирає вже підтверджені сигнали та сумарні дані за період у регулярний документ.

Змішувати контури не можна: модель, натренована шукати рідкісні поєднання по всій базі, на окремому повідомленні дає хибні спрацювання, а правила валідації одного випадку не бачать зростання частоти.

Тому в архітектурі це роздільні гілки обробки зі спільною нормалізацією даних і єдиним довідником термінів.

Часті сумніви: фармаконагляд, ШІ та перевірки

Технічні сумніви щодо фармаконагляду рідко звучать як «чи віримо ми в ШІ» — частіше це питання, як система поводиться на межах: неоднозначний випадок, нетипове формулювання, накопичена база. Нижче — відповіді на те, що зазвичай піднімають до старту.

Як система визначає серйозність випадку?

Критерії серйозності задаються правилами, виведеними з нормативних вимог, а модель вилучає з тексту ознаки: наслідок, госпіталізацію, загрозу життю, скасування препарату.

Якщо ознаки конфліктують або впевненість нижче порогу, випадок не йде далі автоматично — він потрапляє в ручну чергу з позначкою причини. Кожне рішення фіксується в журналі, тому розбір відтворюваний під час перевірки.

Що відбувається з нерозпізнаними повідомленнями?

Контроль якості розпізнавання будуємо на розміченій вибірці: вимірюємо частку автоматично розібраних повідомлень і точність за кожним типом полів. Усе, що не пройшло поріг, не губиться — залишається в ручній черзі разом з вихідним файлом. Ми показуємо, на яких формулюваннях модель помиляється, і донавчаємо її на цих прикладах.

Як відсіюються дублікати повідомлень?

Один випадок надходить із різних джерел у різних формулюваннях. Зіставляємо версії за поєднанням ознак — препарат, дати, реакція, дані пацієнта — і за близькістю тексту.

Збіги об'єднуються в один випадок із посиланнями на первинні повідомлення, спірні пари йдуть на ручне підтвердження.

Як проходить валідація і що робити з чинною базою?

Валідація — це зафіксовані вимоги, тестові сценарії та протокол перевірки на заздалегідь розміченому наборі плюс журнал версій моделей і правил. Чинну базу підключаємо поетапно: зіставляємо поля, сумнівні записи виводимо окремим звітом і звіряємо результат після завантаження. На виході ті самі дані, але з готовою чергою та історією рішень.

Обговоримо задачу: з чого почати у вашому контурі

Оцінка обсягу робіт спирається на дані, а не на опис процесу, — тому розбір починаємо з вашого контуру. Нижче мінімальний набір, який закриває більшу частину питань на вході: решту уточнюємо вже під час обговорення.

  • Канали надходження: перелік джерел повідомлень про небажані реакції — спонтанні звернення, клінічні програми, література — і в якому вигляді вони надходять сьогодні.
  • Зразки даних: 30–50 знеособлених карток і 2–3 повністю розібрані сигнали — на них перевіряємо досяжну повноту вилучення.
  • Еталон: якщо фахівці вже розмічали випадки вручну, потрібні пари «вхід — перевірена відповідь», інакше вимірювати якість немає на чому.
  • Доступи: тестовий контур, облікові записи лише для читання, довідники препаратів і медичної термінології, правила обробки персональних даних.
  • Регуляторний контур: які звіти й у які строки формуються зараз, хто погоджує зміни та як влаштована валідація системи.
  • Точка стику: куди повертаємо результат — у чинну систему безпеки, в електронний документообіг або файловим обміном.

Далі домовляємося про пілотний запуск: фіксуємо одне джерело й один клас сигналів, задаємо метрики на еталонній вибірці та перевіряємо їх на ваших даних, а не на демонстраційних.

За підсумками повернемося з оцінкою обсягу робіт і планом впровадження — з етапами, ролями та тим, що ви отримуєте після кожного. Опишіть задачу й поточний процес: цього достатньо, щоб запропонувати конкретну схему старту.

Напрямки AI-розробки

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1543
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1374
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    816
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1142