Как пересказать длинный документ

Урок 66 из 299 курса «OpenAI Cookbook»: официальный курс OpenAI Academy (ОпенАИ) на русском языке. Урок входит в платный доступ; первые уроки курса бесплатно.

О чём урок

Цель этого notebook — продемонстрировать, как можно суммировать объемные документы с контролируемым уровнем детализации. Если вы дадите модели GPT задачу по суммированию длинного документа (например, 10 тысяч или более tokens), вы, как правило, получите относительно короткое summary, которое не будет пропорционально длине документа. Например, summary документа объемом 20 тысяч tokens не будет в два раза длиннее summary документа объемом 10 тысяч tokens. Один из способов исправить это — разбить наш документ на части, и создать summary по частям. После множества запросов к модели GPT полное summary может быть реконструировано. Контролируя количество текстовых chunks и их размеры, мы можем в конечном итоге управлять уровнем детализации в output. Мы определим простую утилиту для обертывания вызовов к OpenAI API. Далее мы определим несколько утилит для разбиения большого документа на более мелкие части (chunks). Теперь мы можем определить утилиту для суммирования текста с контролируемым уровнем детализации (обратите внимание на параметр detail). Функция сначала определяет количество chunks, интерполируя между минимальным и максимальным количеством chunks на основе управляемого параметра detail. Затем она разбивает текст на chunks и суммирует каждый chunk. Теперь мы можем использовать эту утилиту для создания summaries с различным уровнем детализации. Увеличивая detail от 0 до 1, мы получаем постепенно более длинные summaries исходного документа. Более высокое значение параметра detail приводит к более детальному summary, потому что утилита сначала разбивает документ на большее количество chunks. Затем каждый chunk суммируется, и итоговое summary представляет собой конкатенацию всех summaries chunks. Исходный документ имеет длину почти 15 тысяч tokens. Обратите внимание, насколько велика разница между длиной summary_with_detail_0 и summary_with_detail_1. Оно почти в 25 раз длиннее! Давайте рассмотрим summaries, чтобы увидеть, как меняется уровень детализации при увеличении параметра detail от 0 до 1. Обратите внимание, что эта утилита также позволяет передавать дополнительные инструкции.

Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.

Полезные гиды