← Назад к курсу

Использование искусственного интеллекта для работы с текстами

Введение

Искусственный интеллект (ИИ), особенно большие языковые модели (LLM), такие как GPT-5, Claude или Llama, позволяет автоматизировать работу с текстами. Это включает генерацию нового контента, обобщение (суммаризацию) информации, анализ и редактирование. ИИ экономит время копирайтерам, разработчикам, маркетологам и аналитикам.

Преимущества:

  • Быстрота: текст за секунды.
  • Масштабируемость: тысячи вариантов.
  • Адаптивность: на основе промпта (запроса).

Ограничения:

  • Может "галлюцинировать" (выдумывать факты).
  • Требует проверки.
  • Зависит от качества промпта.

В уроке разберём примеры генерации и обобщения, а также инструменты.

1. Генерация текстов

ИИ создаёт текст по промпту. Ключ: будьте конкретны (укажите стиль, длину, тон).

1.1. Статьи и книги

Промпт: "Напиши статью на 500 слов о влиянии ИИ на рынок труда. Структура: введение, плюсы, минусы, вывод. Тон: нейтральный, научный."

Пример результата (фрагмент):

Влияние ИИ на рынок труда: возможности и вызовы
Введение. Искусственный интеллект (ИИ) трансформирует глобальный рынок труда, автоматизируя рутинные задачи и создавая новые профессии...
Плюсы: рост производительности на 40% (данные McKinsey), новые роли (data scientist).
Минусы: потеря 800 млн рабочих мест к 2030 году...
[Полный текст ~500 слов]

Для книг: "Напиши главу 1 фантастического романа о будущем с ИИ" — ИИ генерирует 2000+ слов.

1.2. Код

Промпт: "Напиши функцию на Python для подсчёта уникальных слов в тексте, игнорируя регистр и пунктуацию."

Пример результата:

import re
from collections import Counter

def count_unique_words(text):
    # Удаляем пунктуацию и приводим к нижнему регистру
    clean_text = re.sub(r'[^\w\s]', ' ', text.lower())
    words = clean_text.split()
    return Counter(words).most_common()

# Пример использования
text = "Hello world! Hello again."
print(count_unique_words(text))  # [('hello', 2), ('world', 1), ('again', 1)]

1.3. Карточки товаров (для e-commerce)

Промпт: "Создай описание карточки товара: беспроводные наушники Sony WH-1000XM5, шумоподавление, 30 ч батареи, чёрный цвет. Длина: 150 слов. Включи ключевые слова: ANC, Bluetooth 5.2."

Пример результата:

Sony WH-1000XM5 — Беспроводные наушники с премиум шумоподавлением
Погрузитесь в идеальный звук с Sony WH-1000XM5! Активное шумоподавление (ANC) лидера отрасли блокирует внешний шум. 30 часов автономности без подзарядки. Bluetooth 5.2 для стабильного соединения. Лёгкие, складные, с сенсорным управлением. Идеальны для путешествий и работы. Цена: 29 990 руб. Купить сейчас!

1.4. Объявления (реклама)

Промпт: "Напиши объявление о продаже подержанного iPhone 13 Pro 256GB, состояние отличное, цена 60 000 руб. Для Avito, с эмодзи и призывом к действию."

Пример результата:

🔥 iPhone 13 Pro 256GB — как новый! 🔥
Состояние: идеальное, без царапин. Батарея 95%. Коробка, зарядка в комплекте.
Цена: 60 000 руб. (торг уместен).
📱 Звоните: +7 (XXX) XXX-XX-XX
Не упустите! 🚀

2. Обобщение информации

ИИ суммирует длинные тексты или анализирует код.

2.1. О чём текст (саммаризация)

Исходный текст (фрагмент статьи 1000 слов о климате): "Глобальное потепление вызвано антропогенными выбросами CO2... IPCC прогнозирует +1.5°C к 2030..."

Промпт: "Обобщи текст: о чём он, ключевые факты, вывод."

Пример результата:

Саммари: Статья о глобальном потеплении. Ключевые факты: +1.5°C к 2030 (IPCC), 80% выбросов от энергетики. Вывод: нужны зелёные технологии и Парижское соглашение.

2.2. Code-review

Исходный код (Python-функция с ошибками):

def divide(a, b):
    return a / b
print(divide(10, 0))  # Ошибка!

Промпт: "Проведи code-review: найди ошибки, предложи улучшения."

Пример результата:

Code-review:

  • Ошибка: деление на ноль (ZeroDivisionError).
  • Нет обработки исключений.
  • Улучшения: добавить try-except, типизацию.
    Исправленный код:
def divide(a: float, b: float) -> float:
    if b == 0:
        raise ValueError("Деление на ноль!")
    return a / b

3. Примеры программ и моделей для работы с текстом

3.1. Модели

  • GigaChat-2-Max (Сбер): Универсальная модель от российского разработчика для решения широкого круга задач.
  • YandexGPT 5 Pro (Яндекс): Модель для решения корпоративных задач, применяемая также в умных устройствах от Яндекс.
  • GPT-5 / GPT-4 (OpenAI): Универсальные модели для генерации текста, суммаризации, перевода и чат-ботов.
  • Grok 4 (xAI): Максимальная производительность в сложных логических и аналитических задачах, доступ к актуальной информации через интернет и за плату.
  • Qwen 3 (Alibaba Group): Универсальная, многоязычная и мультимодальная модель с открытым исходным кодом, которую можно свободно дообучать и адаптировать под свои нужды.
  • DeepSeek-V3/R1: Высокая кономическая эффективность, скорость работы и вы планируете интенсивно использовать модель для программирования или математических расчетов.
  • Claude 4 (Anthropic): Отличен для code-review, сложных рассуждений и этичного ИИ.
  • Llama 2/3 (Meta): Открытые модели, бесплатные (доступны на Hugging Face), подходят для локального развертывания.
  • BERT/T5 (Google/Hugging Face): Специализированы для суммаризации, NER (извлечение именованных сущностей), классификации текста.

3.2. Программы и API

  • ChatGPT / Gemini: Веб-интерфейсы для новичков — быстрый старт без кода.
  • Hugging Face Transformers (Python-библиотека): Для работы с открытыми моделями локально или через API.
  • OpenAI API: Платный, но мощный для production-приложений.
  • LangChain / LlamaIndex: Фреймворки для цепочек ИИ-задач (RAG, агенты).

3.3. Пример программы: Генерация текста через OpenAI API

Вот полный рабочий пример на Python. Установите библиотеку: pip install openai.

import openai

# Установите ваш API-ключ (получите на https://platform.openai.com/api-keys)
openai.api_key = "your-api-key-here"

response = openai.ChatCompletion.create(
    model="gpt-3.5-turbo",
    messages=[
        {"role": "system", "content": "Ты полезный помощник по программированию."},
        {"role": "user", "content": "Напиши функцию на Python, которая суммирует текст с помощью ИИ."}
    ],
    max_tokens=300,
    temperature=0.7
)

print(response['choices'][0]['message']['content'])

Пример вывода:

Вот простая функция на Python для суммаризации текста с использованием OpenAI API:

```python
import openai

def summarize_text(text, api_key, max_tokens=150):
    openai.api_key = api_key
    
    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[
            {"role": "system", "content": "Ты эксперт по суммаризации текста. Делай краткие и точные саммари."},
            {"role": "user", "content": f"Суммаризуй этот текст в {max_tokens} словах или меньше:\n\n{text}"}
        ],
        max_tokens=max_tokens
    )
    
    return response['choices'][0]['message']['content']

# Пример использования
text = "Длинный текст статьи о ИИ..."
summary = summarize_text(text, "your-api-key")
print(summary)

Эта функция отправляет текст в GPT и возвращает краткую версию.

### 3.4. Пример с Hugging Face: Суммаризация без API-ключа

Установите: `pip install transformers torch`.

```python
from transformers import pipeline

# Загружаем готовую модель для суммаризации
summarizer = pipeline("summarization", model="facebook/bart-large-cnn")

text = """
Искусственный интеллект революционизирует обработку текста. Модели вроде GPT позволяют генерировать, суммировать и анализировать огромные объемы данных.
BERT excels в понимании контекста, а T5 — в трансформациях текста.
"""

summary = summarizer(text, max_length=50, min_length=10, do_sample=False)
print(summary[0]['summary_text'])

Пример вывода:

Искусственный интеллект революционизирует обработку текста. Модели вроде GPT и BERT excels в понимании контекста.

3.5. Пример: Извлечение сущностей (NER) с BERT

from transformers import pipeline

ner = pipeline("ner", model="dbmdz/bert-large-cased-finetuned-conll03-english")

text = "Apple представила новый iPhone в Сан-Франциско. CEO Тим Кук объявил о запуске."
entities = ner(text)
print(entities)

Пример вывода:

[{'entity': 'B-ORG', 'score': 0.99, 'word': 'Apple', 'start': 0, 'end': 5}, ...]

4. Практические упражнения

  1. Задание 1: Напишите скрипт, который берет текст из файла input.txt, суммирует его с помощью OpenAI и сохраняет в summary.txt.
  2. Задание 2: Используя Hugging Face, создайте классификатор настроения текста (positive/negative). Протестируйте на отзывах.
  3. Задание 3: Реализуйте чат-бота на базе GPT, который отвечает на вопросы о Python-программировании.
  4. Задание 4: Сравните скорость и качество суммаризации GPT-5 vs. Qwen на одном тексте.

Решения: Проверьте в репозитории урока на GitHub (ссылка в ресурсах).

5. Полезные ресурсы

  • Документация: OpenAI API, Hugging Face.
  • Курсы: Coursera "NLP with Transformers", freeCodeCamp YouTube-туториалы.
  • Инструменты: Jupyter Notebook для экспериментов, Google Colab (бесплатный GPU).
  • Сообщества: Reddit r/MachineLearning, Hugging Face Discord.
  • Готовые проекты: LangChain examples на GitHub.

6. Заключение

Работа с текстом через ИИ — это мощный инструмент для разработчиков, аналитиков и контент-креаторов. Начните с простых API, экспериментируйте с открытыми моделями и масштабируйте до production. Следующий урок: "Компьютерное зрение с ИИ".

Домашнее задание: Создайте свой проект по обработке текста (например, анализ отзывов)