GPT-3: программирование на Python в примерах
Покупка
Новинка
Тематика:
Программирование и алгоритмизация
Издательство:
ДМК Пресс
Автор:
Aймен Эль Амри
Перевод:
Яценков В.
Год издания: 2023
Кол-во страниц: 220
Дополнительно
Вид издания:
Практическое пособие
Уровень образования:
Дополнительное образование
ISBN: 978-5-93700-221-1
Артикул: 855995.01.99
В книге рассказывается о том, как использовать генеративную текстовую модель (GPT) для создания приложений различного назначения, в числе которых медицинский чат-бот с пользовательской точной настройкой, интеллектуальный голосовой помощник, система предсказания категории новостей и многие другие. Вы узнаете, как управлять уровнем креативности моделей GPT, применять современные методы генерирования высококачественного текста, классифицировать изображения с помощью OpenAI CLIP. Примеры и практические упражнения помогут закрепить пройденный материал.
Издание предназначено для тех, кто владеет основами языка программирования Python и собирается использовать GPT в реальных сценариях для решения прикладных задач.
- Полная коллекция по информатике и вычислительной технике
- ДМК Пресс. Информационные системы и технологии
- ДМК Пресс. ИТ-технологии для профессионалов
- Интермедиатор. Информационные системы и технологии (сводная)
- Интермедиатор. ИТ-технологии для профессионалов (сводная)
- Программирование и алгоритмизация
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Aймен Эль Амри GPT-3: программирование на Python в примерах
OpenAI GPT For Python Developers Aymen El Amri
Москва, 2023 Aймен Эль Амри GPT-3: программирование на Python в примерах
УДК 004.04 ББК 32.371 А62 А62 Aймен Эль Амри GPT-3: программирование на Python в примерах / пер. с англ. В. Яценкова. – М.: ДМК Пресс, 2023. – 218 с.: ил. ISBN 978-5-93700-221-1 В книге рассказывается о том, как использовать генеративную текстовую модель (GPT) для создания приложений различного назначения, в числе которых медицинский чат-бот с пользовательской точной настройкой, интеллектуальный голосовой помощник, система предсказания категории новостей и многие другие. Вы узнаете, как управлять уровнем креативности моделей GPT, применять современные методы генерирования высококачественного текста, классифицировать изображения с помощью OpenAI CLIP. Примеры и практические упражнения помогут закрепить пройденный материал. Издание предназначено для тех, кто владеет основами языка программирования Python и собирается использовать GPTв реальных сценариях для решения прикладных задач. УДК 004.04 ББК 32.371 Copyright «OpenAI GPT for Python Developers», published by FAUN – www.faun.dev. Copyright © 2023 All rights reserved, Aymen EL Amri. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Материал, изложенный в данной книге, многократно проверен. Но, поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответственности за возможные ошибки, связанные с использованием книги. © Aymen El Amri, 2023 ISBN 978-5-93700-221-1 (рус.) © Оформление, издание, Books.kz, 2023
Оглавление Предисловие...............................................................................................................9 Об авторе..................................................................................................................10 Об этой книге............................................................................................................11 Глава 1.ChatGPT, GPT, GPT-3, DALL·E, Codex… Что это?......................................14 Глава 2. Как работает GPT?.....................................................................................17 Глава 3. Подготовка среды разработки................................................................20 3.1. Установка Python, pip и виртуальной среды для разработки..................20 3.2. Получение ключа API OpenAI....................................................................21 3.3. Установка официальных средств интеграции Python..............................22 3.4. Тестирование ключей API..........................................................................22 Глава 4. Доступные модели....................................................................................25 4.1. Три основные модели.................................................................................25 4.2. GPT-3: обработка и генерация естественного языка................................25 4.3. Codex: понимание и создание компьютерного кода................................26 4.4. Content Filter...............................................................................................27 4.5. Получение списка всех доступных моделей.............................................27 4.6. Какую модель использовать?.....................................................................31 4.7. Что дальше?.................................................................................................32 Глава 5. Применение GPT для генерации текста................................................33 5.1. Базовый пример завершения текста.........................................................33 5.2. Управление количеством токенов на выходе...........................................35 5.3. Параметр logprobs.......................................................................................36 5.4. Управление креативностью: параметр temperature..................................41 5.5. Использование параметра top_p................................................................42 5.6. Потоковая передача результатов...............................................................43 5.7. Контроль повторений: штрафы за частоту и наличие.............................46 5.8. Управление количеством выводимых результатов..................................48 5.9. Использование параметра best_of..............................................................49 5.10. Управляемое ограничение вывода..........................................................50 5.11. Использование суффикса после вывода текста......................................51 5.12. Пример: извлечение ключевых слов.......................................................52 5.13. Пример: генерация твитов.......................................................................54 5.14. Пример: сочинение песни в стиле рэп....................................................57
6 Оглавление 5.15. Пример: составление списка дел.............................................................58 5.16. Заключение................................................................................................60 Глава 6. Редактирование текста с помощью GPT...............................................61 6.1. Пример: перевод текста.............................................................................61 6.2. Инструкция нужна, но ввод необязателен................................................63 6.3. Использование конечных точек completions и edits..................................63 6.4. Форматирование вывода............................................................................65 6.5. Креативность или определенность?..........................................................67 6.6. Создание нескольких правок.....................................................................70 Глава 7. Примеры более сложной работы с текстом..........................................71 7.1. Последовательное использование completions и edits...............................71 7.2. Apple – это компания или фрукт?..............................................................72 7.3. Получение информации о криптовалюте на основе пользовательской схемы (наполнение контекста)...................................................................75 7.4. Создание помощника чат-бота для помощи с командами Linux............77 Глава 8. Встраивание...............................................................................................84 8.1. Что такое встраивание................................................................................84 8.2. Примеры использования............................................................................84 8.2.1. Tesla................................................................................................................85 8.2.2. Kalendar AI......................................................................................................85 8.2.3. Notion..............................................................................................................85 8.2.4. DALL·E 2..........................................................................................................86 8.3. Подготовка к работе....................................................................................86 8.4. Знакомство со встраиванием текста..........................................................87 8.5. Встраивания для нескольких вводов.........................................................88 8.6. Семантический поиск.................................................................................89 8.7. Косинусное сходство...................................................................................97 Глава 9. Более сложные примеры встраивания.............................................. 100 9.1. Предсказание вашего любимого сорта кофе..........................................100 9.2. Выполняем «нечеткий» поиск..................................................................108 9.3. Прогнозирование категории новостей с помощью встраивания.........109 9.4. Оценка точности классификатора...........................................................113 Глава 10. Тонкая настройка и передовые методы работы............................ 118 10.1. Обучение на ограниченных примерах..................................................118 10.2. Улучшенное обучение с ограниченными примерами..........................119 10.3. Тонкая настройка на практике...............................................................119 10.4. Наборы данных, запросы и ответы: особые приемы...........................123 Глава 11. Продвинутая тонкая настройка: классификация лекарств.......... 130 11.1. Набор данных, используемый в примере.............................................130 11.2. Подготовка данных и запуск тонкой настройки...................................130 11.3. Тестирование настроенной модели.......................................................134
Оглавление 7 Глава 12. Продвинутая тонкая настройка: создание ассистирующего чат-бота.................................................................................................................. 137 12.1. Интерактивная классификация.............................................................137 12.2. Как это будет работать?..........................................................................137 12.3. Создание диалогового веб-приложения...............................................144 Глава 13. Интеллектуальное распознавание речи с помощью Whisper...... 151 13.1. Что такое Whisper?..................................................................................151 13.2. С чего начать?.........................................................................................152 13.3. Транскрипция и перевод........................................................................154 Глава 14. Контекст и память: как сделать искусственный интеллект более реалистичным............................................................................................ 156 14.1. В чем проблема?......................................................................................156 14.2. Отсутствие контекста = хаос случайности............................................156 14.3. История = Контекст.................................................................................157 14.4. Недостатки прямого переноса истории................................................158 14.5. Память «последний вошел – первый вышел» (LIFO)............................159 14.6. Проблемы с памятью LIFO.....................................................................161 14.7. Выборочный контекст.............................................................................161 Глава 15. Создание собственного помощника Alexa на основе ИИ............. 167 15.1. Введение..................................................................................................167 15.2. Запись звука............................................................................................168 15.3. Расшифровка аудио................................................................................169 15.4. Ответ на запрос пользователя................................................................170 15.5. Функция main..........................................................................................171 15.6. Собираем все вместе...............................................................................172 15.7. Генерация более качественных ответов................................................174 Глава 16. Классификация изображений с помощью OpenAI CLIP................ 176 16.1. Что такое CLIP?........................................................................................176 16.2. Как использовать CLIP............................................................................177 16.3. Stable Diffusion наоборот: изображение в текст...................................181 Глава 17. Генерация изображений с помощью DALL·E................................... 183 17.1. Введение..................................................................................................183 17.2. Базовый пример генерации изображения по запросу.........................184 17.3. Создание нескольких изображений.......................................................185 17.4. Получение изображений разного размера............................................186 17.5. Улучшенные запросы на создание изображений..................................187 17.5.1. Подражание художникам..........................................................................187 17.5.2. Имитация художественных стилей...........................................................189 17.5.3. Атмосфера, чувства, эмоции.....................................................................191 17.5.4. Цвета...........................................................................................................194 17.5.5. Разрешение.................................................................................................195 17.5.6. Углы и положения......................................................................................196
8 Оглавление 17.5.7. Типы объективов........................................................................................197 17.5.8. Осветительные приборы...........................................................................198 17.5.9. Типы пленок и фильтры............................................................................199 17.6. Создание генератора случайных изображений....................................200 Глава 18. Редактирование изображений с помощью DALL·E........................ 206 18.1. Пример редактирования изображения.................................................206 Глава 19. Черпаем вдохновение из других изображений............................. 211 19.1. Как создать вариацию имеющегося изображения...............................211 19. 2. Примеры использования вариативных изображений........................214 Глава 20. Что дальше?.......................................................................................... 216 Предметный указатель........................................................................................ 217
Предисловие Когда люди спрашивают меня, чем я занимаюсь, мне всегда сложно дать им простой ответ. Моя карьера продвигалась извилистыми путями, и за эти годы я примерил много разных профессий. Я человек, который страстно любит учиться и пробовать что-то новое, оттого мне и довелось поработать в разных областях. Я занимался разработкой программного обеспечения, рекламой, маркетингом, сетями и телекоммуникациями, системным администрированием, преподаванием, написанием технических текстов, ремонтом компьютеров и многими другими делами. Мной всегда двигало желание узнать больше и расширить свой кругозор. По мере того как я изучал новые технологии, знакомился с новыми людьми и исследовал новые концепции, мой разум становился более открытым, а кругозор расширялся. Я начал видеть связи и возможности, которых раньше не замечал. Чем больше я узнавал сам, тем больше мне хотелось учить других, иногда даже бесплатно. Мне нравится это особое чувство, когда видишь, как в чьих-то глазах зажигается огонек понимания. Я всегда был учителем в душе, и мне всегда нравилось делиться своими знаниями с другими. Именно эти соображения побудили меня написать руководство по работе с большими моделями Open AI. Во время работы над этой книгой я постоянно думал о людях, которые будут ее читать. Я стремился создать доступное и простое руководство по NLP, GPT и смежным темам для людей, знающих Python, но владеющих ограниченными знаниями в этих областях. Моя цель состояла в том, чтобы предоставить практическую информацию, которую читатели смогут использовать для создания своих собственных интеллектуальных систем, не тратя многие часы на изучение теории, лежащей в основе этих концепций. В этом практическом руководстве я делюсь своими знаниями и опытом работы с моделями OpenAI, в частности GPT-3 (но также и другими моделями), и тем, как программисты Python могут использовать их для создания собственных интеллектуальных приложений. Книга выстроена как пошаговое руководство, которое охватывает основные понятия и методы использования GPT-3 и дает читателю прочные и разнообразные практические навыки. Мой почтовый ящик всегда полон, и я получаю много писем. Но наибольшее удовольствие мне доставляют письма с вопросами и пожеланиями от людей, которые прочитали мои онлайн-руководства и курсы и нашли их полезными. Пожалуйста, в любое время обращайтесь ко мне по адресу aymen@faun.dev. Мне важно узнать ваше мнение. Надеюсь, вы получите от чтения этой книги такое же удовольствие, какое я получил от работы над ней.
Об авторе Аймен Эль Амри – писатель, предприниматель, преподаватель и инженер-программист, который преуспел в различных профессиях в области информационных технологий, включая DevOps и Cloud Native, облачную архитектуру, Python, NLP, науку о данных и многое другое. Аймен лично обучил сотни программистов и написал множество книг и курсов, которые прочитали тысячи других инженеров и разработчиков. У Аймена Эль Амри практичный подход к обучению, который всегда находит отклик у его аудитории. Он разделяет сложные понятия на составные части, рассказывает о них понятным языком и иллюстрирует реальными примерами. Он основал несколько проектов: FAUN1, eralabs2 и Marketto3. Вы можете найти Аймена в Twitter4 и Linkedin5. 1 https://faun.dev. 2 https://eralabs.io. 3 https://marketto.dev. 4 https://twitter.com/@eon01. 5 https://www.linkedin.com/in/elamriaymen/.