Как превратить текст в структурированные данные одним скриптом
Представьте: перед вами 100 страниц медицинских заключений, сотни отзывов клиентов или полное собрание сочинений Шекспира. Как быстро найти и систематизировать нужную информацию? С проектом LangExtract от Google эта задача решается буквально в несколько строк кода.
Что скрывается за текстом
LangExtract — это Python-библиотека, которая использует большие языковые модели (LLM) для анализа неструктурированного текста и извлечения из него конкретных данных по заданным правилам. Причем делает это с удивительной точностью, сохраняя привязку к исходному тексту.
Кому это нужно? Практически всем, кто работает с текстовыми данными:
- Аналитикам, обрабатывающим отзывы клиентов
- Медицинским исследователям, анализирующим истории болезней
- Литературоведам, изучающим тексты
- Юристам, работающим с договорами
Пять причин попробовать LangExtract
-
Точечная привязка к источнику Каждое извлечение сопровождается ссылкой на конкретное место в тексте. Можно буквально подсветить фрагмент, откуда были взяты данные.
-
Гибкость без переобучения Достаточно нескольких примеров, чтобы научить систему извлекать нужные вам данные. Не требуется тонкая настройка моделей.
-
Работа с большими документами Библиотека умеет разбивать текст на части, обрабатывать их параллельно и делать несколько проходов для повышения точности.
-
Визуализация результатов Генерируется интерактивный HTML-файл, где можно удобно просматривать извлеченные данные в контексте.
-
Поддержка разных моделей Работает как с облачными решениями (Gemini, OpenAI), так и с локальными LLM через Ollama.
Как это работает на практике
Вот пример извлечения информации из «Ромео и Джульетты»:
import langextract as lx
import textwrap
# Определяем, что хотим извлечь
prompt = """
Извлекаем персонажей, их эмоции и отношения в порядке появления.
Используем точный текст, не перефразируем.
Добавляем значимые атрибуты для каждого элемента.
"""
# Показываем пример правильного извлечения
examples = [...] # Примеры извлечений
# Запускаем обработку
result = lx.extract(
text_or_documents="Полный текст пьесы",
prompt_description=prompt,
examples=examples,
model_id="gemini-2.5-flash"
)
После обработки получаем структурированные данные, которые можно сохранить в JSONL и визуализировать:

Где это особенно пригодится
-
Медицина Автоматическое извлечение данных из медицинских карт: диагнозы, препараты, дозировки. Есть даже специальный пример с радиологическими отчетами.
-
Корпоративная аналитика Обработка тысяч отзывов клиентов с выделением ключевых тем и эмоций.
-
Академические исследования Анализ литературных произведений или исторических документов.
Как начать использовать
Установка проще некуда:
pip install langextract
Для работы с облачными моделями понадобится API-ключ, но можно обойтись и локальными LLM через Ollama.
Вывод: стоит ли пробовать?
LangExtract — это:
✔ Мощный инструмент для работы с текстами ✔ Простота интеграции в Python-проекты ✔ Гибкость в настройке под конкретные задачи
Особенно рекомендую тем, кому нужно:
- Обрабатывать большие объемы текстовых данных
- Сохранять точную привязку к источнику
- Быстро адаптировать систему под новые задачи без переобучения моделей
Проект активно развивается, имеет открытый исходный код и уже собрал более 6 тысяч звезд на GitHub. Идеальное время, чтобы попробовать его в действии!
