Новые возможности GPT‑3: Редактирование и вставка
Мы выпустили новые версии GPT‑3 и Codex, которые могут редактировать или вставлять контент в существующий текст, а не только дополнять его.

Обновление от 16 мая 2025 г.: Мы занесли в релиз Codex — облачного агента для разработки программного обеспечения, способного выполнять множество задач параллельно. Узнать больше.
Мы выпустили новые версии GPT‑3 и Codex, которые умеют редактировать контент или вставлять его в существующий текст, а не только дополнять его. Эти новые возможности делают практичным использование OpenAI API для пересмотра уже существующего контента — например, переписывания абзаца текста или рефакторинга кода. Это открывает новые сценарии использования и улучшает существующие; так, функция вставки уже проходит пилотное тестирование в GitHub Copilot с многообещающими первыми результатами.
- Читать документацию по редактированию
- Читать документацию по вставке
Традиционно GPT‑3 и Codex добавляли текст в конец существующего материала на основе того, что шло до этого. Будь то текст или код, процесс письма — это не просто добавление в конец, это итеративный процесс, в ходе которого существующий текст перерабатывается. Теперь GPT‑3 и Codex могут редактировать текст, изменяя то, что уже есть, или добавляя текст в середину контента.
Вставка в середину текста
Новая функциявставки добавляет контекстно релевантный текст в середину существующего контента. Предоставление модели контекста будущих разделов может улучшить качество дополнений в таких задачах, как написание длинных текстов, переходы между абзацами, следование плану или направление модели к определенной концовке.
В приведенном выше примере требуется заполнить текст между двумя заголовками разделов плана. Без учета контекста последующих разделов модель генерирует дополнение, не имеющее отношения ко второму разделу. Когда контекст будущих разделов учитывается, модель генерирует дополнение, которое связывает оба раздела воедино.
Функция вставки особенно полезна при написании кода. По сути, Codex был нашей изначальной мотивацией для разработки этой возможности, поскольку в разработке ПО мы обычно добавляем код в середину существующего файла, где код присутствует как до, так и после дополнения. В примере выше модель успешно дописывает недостающую функцию prune, связывая ее с уже написанным кодом. Мы также добавляем строку документации (docstring) и недостающие импорты, что было бы невозможно без знания кода, который идет далее. В GitHub Copilot функция вставки в настоящее время проходит пилотное тестирование с многообещающими предварительными результатами.
Функция вставки доступна в API уже сегодня в режиме бета-тестирования в составе эндпоинта дополнений (completions endpoint) и через новый интерфейс в Playground. Эту возможность можно использовать с последними версиями GPT‑3 и Codex, text-davinci-002 и code-davinci-002. Цены остаются такими же, как для предыдущих версий Davinci.
Редактирование существующего текста
Значительная часть работы по написанию текста и кода уходит на редактирование существующего материала. Мы выпустили новый эндпоинт в бета-версии под названием edits, который изменяет существующий текст на основе инструкций, а не просто дополняет его.
Редактирование работает путем указания существующего текста в качестве промпта и инструкции по его модификации. Эндпоинт редактирования можно использовать для изменения тона или структуры текста, либо для точечных изменений, таких как исправление орфографии. Мы также заметили, что редактирование отлично работает с пустыми промптами, обеспечивая генерацию текста, аналогичную эндпоинту дополнений. В примере выше мы используем редактирование, чтобы: (1) добавить стихотворение, (2) изменить стихотворение так, чтобы оно было написан от первого лица, (3) превратить стихотворение в письмо с соответствующим приветствием и подписью.
Эндпоинт редактирования особенно полезен для написания кода. Он отлично справляется с такими задачами, как рефакторинг, добавление документации, перевод с одного языка программирования на другой и изменение стиля кода. В приведенном выше примере все начинается с входных данных JSON, содержащих города, отсортированные по численности населения. С помощью нашей первой правки Codex удаляет поле ранга из JSON и заменяет аббревиатуры штатов на полные названия. Вторая правка преобразует файл JSON в YAML, возвращаемый из функции.
Редактирование доступно в виде специализированного эндпоинта в API и через новый интерфейс в Playground. Его поддерживают модели text-davinci-edit-001 и code-davinci-edit-001. В настоящее время эндпоинт редактирования бесплатен в использовании и общедоступен в качестве бета-версии.
- Читать документацию по редактированию
- Читать документацию по вставке
Авторы
Полный текст статьи читайте на OpenAI
