"Доктор, у вас руки не из того места растут" — и что с этим делать
Анна — врач-кардиолог с 12-летним стажем. Её день: пациенты, анализы, протоколы. Компьютер для неё — инструмент для заполнения электронных карт и поиска статей в PubMed. До прошлого месяца.
Потом случилось то, что случается со многими врачами: рутина. Ежедневно она тратила 2-3 часа на ручной перенос данных из PDF-отчетов диагностического оборудования в Excel. Форматы разные, названия колонок меняются, даты путаются. Стандартного софта для автоматизации нет — оборудование старое, производитель давно не обновлял ПО.
Классическая ситуация: задача идеально подходит для автоматизации, но нет ни времени учиться программировать, ни бюджета на разработчика. Особенно в государственной клинике.
Анна попробовала ChatGPT. Получила общие советы по Python. Запуталась в установке библиотек. Не поняла, как адаптировать общий код под свои специфические PDF. Сдалась через два дня.
Потом она нашла NotebookLM.
Почему обычный ChatGPT не работает для обучения с нуля
Проблема не в Анне. Проблема в том, как устроены большинство AI-ассистентов.
- Контекст сбрасывается: Сегодня объяснил переменные, завтра начинаешь с чистого листа
- Нет структуры: Ответы на вопросы, а не учебный план
- Общие советы: "Используй pandas для анализа данных" — отлично, а что такое pandas?
- Нет привязки к материалам: Нельзя загрузить свои PDF, учебники, примеры кода
NotebookLM от Google решает это одним махом. Это не просто чат-бот. Это цифровая записная книжка, которая:
- Позволяет загружать свои документы (PDF, тексты, код)
- Строит ответы ИСКЛЮЧИТЕЛЬНО на основе этих документов + базовых знаний
- Сохраняет весь контекст обучения в одном месте
- Предлагает автоматически сгенерированные учебные материалы
Неделя из жизни врача-программиста: пошаговый разбор
1 День 1: Подготовка учебной базы
Анна не стала бросаться писать код. Вместо этого она собрала в NotebookLM:
- 5 примеров своих PDF-отчетов (разных форматов)
- Скриншот желаемого результата в Excel
- Главу из книги "Автоматизация рутины с Python" в PDF
- Официальную документацию библиотеки PyPDF2
Важный момент: она не искала "идеальные" учебные материалы. Она использовала то, что было под рукой. NotebookLM сам выстроил связи между документами.
# Пример того, что НЕ надо делать в первый день:
# Бросаться писать сложный код
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
# ... и ещё 10 библиотек, о которых вы не знаете
2 День 2: Первый диалог с ментором
Вопрос Анны был конкретным: "Вот мой PDF. Вот как данные выглядят внутри. Как мне извлечь таблицу на странице 3?"
NotebookLM, анализируя загруженные PDF и документацию PyPDF2, ответил не просто кодом, а с объяснениями:
- Что такое "page object" в PyPDF2
- Как найти нужную страницу по тексту
- Почему PDF таблицы сложнее, чем кажется
- Альтернатива: конвертировать PDF в текст и искать паттерны
Ключевое отличие: ответ был привязан к ЕЁ документам. Не абстрактный "используй extract_text()", а "в вашем PDF на странице 3 таблица начинается после строки 'Результаты анализов', используйте этот маркер".
3 День 3-4: От прототипа к рабочему скрипту
Здесь случилась магия. Анна скопировала код из NotebookLM в VS Code, запустила — получила ошибку.
Раньше это был бы конец. Теперь она:
- Скопировала ошибку в NotebookLM
- Загрузила новый PDF с другой структурой
- Спросила: "Почему код работает на одном файле, но не работает на другом?"
NotebookLM сравнил два PDF, нашёл различия в структуре и предложил универсальное решение. Не "почини ошибку", а "вот почему возникает проблема и как сделать код устойчивым к разным форматам".
# Плохо: хрупкий код, работающий только на одном формате
def extract_data(pdf_path):
text = extract_text_from_page(pdf_path, page_number=3)
# Жёстко закодированные индексы
patient_name = text[120:150]
result = text[300:320]
# Хорошо: адаптивный код, который ищет паттерны
def extract_data_smart(pdf_path):
text = extract_text_from_page(pdf_path, page_number=3)
# Ищем маркеры в тексте
name_index = text.find("Пациент:")
result_index = text.find("Результат:")
if name_index != -1 and result_index != -1:
patient_name = text[name_index+9:name_index+50].strip()
result = text[result_index+10:result_index+60].strip()
4 День 5-7: От скрипта к инструменту
К концу недели у Анны был не просто скрипт. У неё был:
- Python-скрипт, обрабатывающий 95% её PDF
- Лог-файл для проблемных документов
- Инструкция для коллег (тоже в NotebookLM)
- План улучшений на будущее
Но главное — она поняла логику программирования. Не синтаксис Python (его можно забыть), а принцип: разбить задачу на шаги, найти инструменты, протестировать на краевых случаях.
Технические лайфхаки: как выжать из NotebookLM максимум
| Что делают новички | Как делать правильно | Результат |
|---|---|---|
| Загружают один документ | Загружают 5-7 связанных документов разных типов | AI находит cross-references, даёт более точные ответы |
| Спрашивают "как написать код" | Спрашивают "как решить мою задачу" с контекстом | Получают решение, а не общую теорию |
| Удаляют старые диалоги | Сохраняют всю историю в одном notebook | AI учится на ваших же ошибках и вопросах |
| Копируют код без понимания | Просят объяснить каждую строку на их примере | Формируется реальное понимание, а не копипаст |
Специфика для врачей и других не-технарей
У медицинских работников есть преимущество: они мыслят структурированно. Протоколы, алгоритмы, decision trees — это уже программирование, просто на естественном языке.
NotebookLM помогает сделать мост между:
- Медицинским протоколом → Псевдокоду
- Псевдокоду → Python
- Python → Рабочему скрипту
Пример из практики Анны:
# Медицинская логика:
# ЕСЛИ давление > 140/90 И возраст > 60
# ТОГДА категория "риск"
# ИНАЧЕ категория "норма"
# В Python:
def assess_risk(blood_pressure, age):
systolic, diastolic = map(int, blood_pressure.split('/'))
if systolic > 140 and diastolic > 90 and age > 60:
return "риск"
else:
return "норма"
Ограничения и подводные камни
NotebookLM — не волшебная таблетка. Есть нюансы:
AI не проверяет код на безопасность. Если вы обрабатываете медицинские данные, даже локально, нужно думать о HIPAA/GDPR. NotebookLM может помочь написать код, но не сделает его compliant автоматически.
- Качество ответов зависит от качества документов: Загрузите мусор — получите мусорные советы
- Нет замены практике: 80% времени всё равно уйдёт на отладку в реальной среде
- Ограниченный контекст: Очень большие документы могут обрабатываться не полностью
- Требует Google аккаунта: Для некоторых организаций это проблема
Что дальше? От скрипта к системе
Через месяц после своего первого скрипта Анна сделала следующее:
- Автоматизировала сбор статистики по отделению
- Написала простой веб-интерфейс на Streamlit (с помощью того же NotebookLM)
- Подключила оповещения в Telegram при критических значениях
Но важнее другое: она перестала бояться технологий. Теперь, когда возникает рутинная задача, её первый вопрос: "А можно ли это автоматизировать?"
Это меняет всё. Не потому что она стала программистом (она им не стала). А потому что она научилась говорить на одном языке с технологиями. Иметь AI-ментора — это как иметь переводчика, который не просто переводит слова, а объясняет культуру.
FAQ: Ответы на вопросы, которые вы постеснялись задать
«У меня нет времени учиться»
У Анны тоже не было. Она выделила 30 минут в день. За неделю — 3.5 часа. Раньше она тратила 3.5 часа в НЕДЕЛЮ на рутинный перенос данных. Теперь тратит 10 минут. ROI — 2100%.
«Я попробовал, но ничего не получилось»
Скорее всего, вы:
- Начинали со слишком сложной задачи
- Не загрузили достаточно примеров
- Ждали готового решения, а не учились
Начните с задачи, которая раздражает вас 15 минут каждый день. Не с создания ИИ для диагностики рака.
«А чем это лучше курсов на Coursera?»
Курсы учат программировать. NotebookLM учит решать ВАШИ задачи. Разница как между учебником анатомии и наставником в операционной, который показывает именно на вашем пациенте.
«Что если AI даст неправильный код?»
Даст. И вы получите ошибку. И скопируете ошибку в NotebookLM. И он объяснит, почему ошибка. Это и есть обучение. Традиционное образование создаёт иллюзию, что ошибки — это плохо. В программировании ошибки — это процесс.
Следующий шаг: от ментора к коллеге
Самый интересный тренд — не просто обучение с AI, а совместная работа. Представьте:
- Врач описывает клинический случай
- NotebookLM, обученный на медицинских журналах, предлагает аналогии
- Вместе они пишут скрипт для анализа похожих случаев в базе
Это уже происходит. Инструменты вроде DeepMath показывают, как AI может работать с кодом в песочнице. AI-кодинг агенты становятся умнее. Скоро врач сможет сказать: "Найди всех пациентов с похожей историей и посчитай статистику по эффективности лечения X" — и получить не просто данные, но и код, который эти данные собрал.
Но это будущее. А настоящее — это Анна, которая сегодня сэкономила 2 часа. Которые потратила не на рутину, а на пациента с сложной аритмией.
Вот что на самом деле меняет AI-ментор: не делает из вас программиста. Делает из вас специалиста, который может заставить технологии работать на свою область. Без 5 лет обучения. Без смены профессии. Без ощущения, что "это не для меня".
Попробуйте. Загрузите в NotebookLM то, что вас бесит. И спросите: "Как это автоматизировать?" Первый ответ будет странным. Пятый — понятным. Десятый — рабочим.
А потом напишете мне, как оно.