TL;DR
Метод — это связка из трёх приёмов: LLM сама пишет себе рабочий промпт (изучив лучшие практики промптинга и термины предметной области), несколько черновиков промпта объединяются в один «мастер-промпт», а затем извлечение данных запускается пять раз подряд — и берётся тот ответ, который повторился чаще всего. Дополнительно результаты нескольких разных моделей (GPT, Claude, Gemini и др.) сравниваются между собой — там, где модели расходятся, это сигнал: случай спорный, нужен человек.
Главная боль: LLM непостоянна. Один и тот же промпт на одной и той же статье может дать правильный ответ в трёх запусках из пяти и неправильный — в двух. В исследовании только 76% извлечённых значений совпадали во всех пяти прогонах подряд, а у некоторых моделей точность прыгала с 95% в одном запуске до 78% в другом. При этом сырые числа модели находят почти всегда правильно (99%), а вот понять, к какому именно условию относится это число (какой образец, какая температура, какой метод измерения) — получается заметно хуже (81%).
Метод решает это не через более умный промпт, а через повторение и перекрёстную проверку: пять запусков одного промпта + голосование большинством снимает случайный шум, а сравнение нескольких моделей находит систематические ошибки — включая ошибки в исходных данных, которые люди пропустили.
Схема метода
ШАГ 1 (отдельный запрос модели): Попроси LLM изучить практики промптинга для себя + термины твоей темы → черновик промпта
ШАГ 2: Повтори шаг 1 ещё 2 раза (можно с той же моделью, можно с разными) → 3 черновика
ШАГ 3 (отдельный запрос): Дай модели все 3 черновика → «объедини лучшее из них в один мастер-промпт»
ШАГ 4: Прогони мастер-промпт на своём документе 5 раз (5 отдельных чатов/запусков) → возьми ответ, который совпал минимум в 3 из 5 запусков
ШАГ 5 (опционально, для важных решений): Прогони тот же мастер-промпт в 2-3 разных LLM → если ответы расходятся — это спорный случай, проверяй сам
Пример применения
Задача: Аналитик венчурного фонда разбирает 15 пресс-релизов и годовых отчётов конкурентов, чтобы вытащить в таблицу: выручку, маржинальность, число активных клиентов и валюту/период отчётности. Проблема та же, что в исследовании: сами цифры LLM найдёт легко, а вот привязать их к правильному периоду и валюте (рубли или доллары, квартал или год) — сложнее.
Промпт (шаг 1-3, самописание):
Изучи лучшие практики составления промптов для извлечения финансовых данных из отчётов.
Изучи типовую терминологию финансовой отчётности (EBITDA, маржинальность, ARR, период отчёта).
На основе этого напиши промпт, который извлекает из финансового документа:
выручку, маржинальность, число клиентов, валюту и отчётный период,
с обязательной цитатой из текста, откуда взято каждое значение.
Формат вывода — таблица.
Повтори это 3 раза (можно в новых чатах), затем:
Вот три промпта для извлечения финансовых данных: [вставить 3 черновика].
Объедини лучшие элементы каждого в один финальный промпт.
Результат: На выходе получится готовый мастер-промпт, заточенный под финансовые отчёты. Прогони его 5 раз на каждом отчёте (в идеале — в новых чатах, чтобы избежать влияния контекста), сведи в таблицу и возьми значение, которое совпало минимум 3 раза. Там, где ответы разошлись во всех пяти запусках — это будет сигнал: документ неоднозначный, смотри вручную.
Почему это работает
LLM непостоянна между запусками — одна и та же модель может дать разные ответы на одинаковый вопрос, особенно если задача требует не просто найти число, а понять контекст (какому условию оно принадлежит). Это не баг, это природа генерации текста: модель каждый раз собирает ответ немного по-разному.
Но LLM хорошо справляется с механическим поиском и сопоставлением паттернов — числа она находит почти безошибочно. Голосование большинством по пяти прогонам убирает случайный шум: если ошибка случайна, она не повторится 3+ раза, а если систематична (например, модель путает две таблицы) — повторится всегда, и это тоже полезная информация.
Рычаги управления: - Число прогонов (5→3) — для простых задач можно снизить, для критичных решений — увеличить. - Число моделей для перекрёстной проверки — больше моделей = больше шансов поймать ошибку, но дороже по времени. - Требование цитаты рядом с каждым извлечённым значением — заставляет модель показывать, откуда она взяла данные, что упрощает проверку. - Критерий "спорного случая" — можно заменить голосование большинством на "любое расхождение = проверка человеком" для более консервативного подхода.
Шаблон промпта
ЭТАП 1 — самостоятельная подготовка промпта:
Изучи лучшие практики промптинга для задачи "{тип_задачи}".
Изучи специфическую терминологию в области "{предметная_область}".
Составь промпт для извлечения из документа следующих данных: {список_полей}.
Для каждого извлечённого значения приведи цитату из текста, откуда оно взято.
Формат вывода: таблица с колонками {список_полей}.
(повторить 3 раза, затем:)
ЭТАП 2 — объединение:
Вот три варианта промпта: {промпт_1}, {промпт_2}, {промпт_3}.
Объедини лучшие элементы каждого в один финальный промпт.
ЭТАП 3 — извлечение (повторить 5 раз на одном документе):
{финальный_промпт}
Документ: {текст_или_файл}
ЭТАП 4 — свод:
Вот 5 результатов извлечения по одному документу: {результат_1...5}.
Для каждого поля укажи значение, которое совпало минимум в 3 из 5 случаев.
Если совпадений меньше 3 — отметь как "спорное, нужна проверка человеком".
🚀 Быстрый старт — вставь в чат:
Вот шаблон метода самопромптинга и мажоритарного голосования для извлечения данных.
Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит, какие именно поля данных тебе нужны и из каких документов — потому что без этого невозможно составить рабочий промпт для извлечения. Она возьмёт структуру шаблона и наполнит её конкретикой твоей задачи.
Ограничения
⚠️ Контекстная классификация слабее числовой: модель почти всегда правильно находит само число, но заметно чаще ошибается, определяя, к какому именно условию (образцу, методу, периоду) это число относится. Не доверяй классификации контекста без проверки.
⚠️ Самописанный промпт хуже промпта эксперта: даже лучшая модель, сочиняя себе промпт, теряла несколько процентов точности по сравнению с промптом, написанным человеком-экспертом. Самопромптинг — это "почти хорошо", не "равно хорошо".
⚠️ Автономный поиск источников ненадёжен: если попросить модель самой найти нужные статьи/документы (а не просто обработать те, что ты дал), она либо пропустит большинство релевантных источников, либо начнёт придумывать несуществующие ссылки. Документы для анализа лучше предоставлять самому.
⚠️ Больше вывода — не значит лучше: некоторые модели выдают много "лишних" строк данных, которые не отвечают на вопрос напрямую. Это создаёт видимость полноты, но добавляет работу по ручной фильтрации.
⚠️ Метод требует времени: пять прогонов на документ плюс этапы самопромптинга — это не один запрос, а серия действий. Для быстрых разовых задач это избыточно.
Как исследовали
Команда взяла 18 настоящих научных статей 1980-2000-х годов о связывании кальция с белком тропонин — сложную тему с устаревшей терминологией, данными вразброс по таблицам и текстам, и даже отсканированными изображениями вместо текста. Семь топовых моделей (GPT, Claude Opus, Gemini, Qwen, Kimi, GLM, DeepSeek) тестировали через обычный браузерный интерфейс — то есть так, как работает большинство людей, а не через API.
Каждый из четырёх сценариев (экспертный промпт → самописанный промпт → автономный поиск источников → создание нового датасета в другой области) прогонялся по пять раз, а результаты сравнивались с эталонным набором данных, собранным людьми. Любопытная деталь: сами люди-эксперты не всегда соглашались друг с другом — их оценки совпадали лишь в 79% случаев, что показывает: даже "истина" в сложных научных задачах местами субъективна.
Главный неожиданный результат — точность одной и той же модели могла скакать почти на 17 процентных пунктов между запусками, и именно это оправдывает мажоритарное голосование по пяти прогонам как практический стандарт, а не излишество.
Ресурсы
Romanov V., Bax M., Niederer S. "Self-prompting and cross-model consensus enable reproducible data extraction from scientific literature with large language models". Imperial College London, University of Cambridge, Stanford University.
