Инженеры ненавидят CLI. Особенно если CLI — это 200 страниц документации по сейсмической миграции
Нефтегаз — одна из последних крепостей, где сложность конфигурации до сих пор оправдывали «спецификой отрасли». Halliburton, один из гигантов индустрии, решил сломать этот стереотип. Их Seismic Engine — мощный инструмент для обработки сейсмических данных — требует от инженеров вручную задавать десятки параметров в командной строке. Параметры вроде --migration-type=kirchhoff --aperture=3000 знакомы каждому геофизику, но время на их подбор и проверку — часы.
В 2025 году Halliburton запустил проект по созданию AI-ассистента на базе Amazon Bedrock, который переводит запросы на естественном языке в команды для Seismic Engine. Результат: скорость настройки сократилась с 40 минут до 2 минут. А общее время цикла обработки — в 20 раз. Но самое интересное даже не цифры, а то, как они этого добились.
1 Проблема: документация в 200 страниц и ни одного API-чата
Попробуйте объяснить джуниору, как настроить миграцию до суммирования для данных с высоким уровнем шума. Даже если он прочитает мануал, он потратит полдня на эксперименты. А старший инженер — просто вспомнит нужный флаг. Halliburton поняли: нужно передать этот «интуитивный опыт» машине.
Проблема классическая: знания есть, но они размазаны по PDF, Confluence, комментариям в коде. Извлечь их вручную — дорого. Обучить LLM на всех этих данных — можно, но Halliburton выбрали RAG (Retrieval-Augmented Generation) на Bedrock, чтобы не переучивать модель каждый раз при обновлении документации. Грамотное решение, кстати — про гибридный RAG с OpenSearch я писал отдельно.
2 Архитектура ассистента: Bedrock + Knowledge Bases + Nova Pro 2.0
Halliburton развернули ассистента в AWS. Выбор пал на Amazon Bedrock — полностью managed сервис, не нужно думать о GPU. Модель — Amazon Nova Pro 2.0 (вышла в начале 2026 года, отлично понимает технические контексты). Для хранения эмбеддингов использовали векторную базу внутри Bedrock Knowledge Bases.
Схема простая:
- Пользователь задаёт вопрос на английском (или русском — Nova поддерживает мультиязычность).
- Запрос попадает в Bedrock, который через Knowledge Base извлекает релевантные фрагменты документации.
- Nova Pro 2.0 генерирует ответ: либо объяснение, либо готовую команду для Seismic Engine.
- В ряде случаев ассистент вызывает Lambda-функцию, которая выполняет команду напрямую — но это уже опционально.
Звучит логично? Да. Но есть нюанс: без правильной настройки промпта Nova начинает галлюцинировать параметры. Например, предлагает флаг --filter=butterworth для данных, где нужен --filter=bandpass. Решение — добавить в промпт жёсткие ограничения: «если не уверен — скажи, что не знаешь».
3 Пошаговая реализация (как это сделали Halliburton)
Дальше — сухие технические шаги, без которых кейс не повторить. Повторяйте на здоровье.
Шаг 1. Сбор и разметка данных
Инженеры Halliburton собрали всю актуальную документацию по Seismic Engine — около 3000 страниц. Разбили на чанки по 512 токенов. Каждый чанк — отдельная запись в Knowledge Base. Важно: удалили устаревшие инструкции, иначе модель будет путать версии. (Да, я знаю, что это боль. Но автоматизировать чистку можно — про это кейс Associa.)
Шаг 2. Создание Knowledge Base в Bedrock
Через консоль AWS выбрали Bedrock > Knowledge Bases. Указали S3-бакет с документами. Выбрали модель эмбеддингов — Titan Text Embeddings v2 (актуальная на 2026, даёт 1536-мерные векторы). Важно: для сейсмической терминологии Halliburton использовали кастомный парсер, который выделял ключевые параметры (тип миграции, размер апертуры) и добавлял их как метаданные. Это резко повысило точность поиска.
Шаг 3. Выбор и настройка модели
Тестировали Claude 4 Sonnet (Anthropic) и Nova Pro 2.0. Выбрали Nova — она быстрее и дешевле. Настроили системный промпт:
Ты — ассистент по сейсмической обработке Halliburton. Отвечай только на основе документов из Knowledge Base. Если ответа нет — напиши 'Запроси у инженера'. Команды выводи в формате: seismic-engine [опции].
Метрики отслеживали через CloudWatch — смотрели TimeToFirstToken и EstimatedTPMQuotaUsage. Подробнее — в моей статье про метрики Bedrock.
Шаг 4. Интеграция с AgentCore и Slack
Чтобы инженеры не ходили в веб-интерфейс, Halliburton подключили ассистента через Bedrock AgentCore к корпоративному Slack. Команда: @seismic-assistant примени Kirchhoff к данным из скв. X — и ассистент генерирует команду, отправляет на выполнение. Про интеграцию со Slack уже писал — всё идентично, только промпт другой.
Шаг 5. Валидация и обратная связь
Самый важный шаг. Halliburton добавили кнопку «Like/Dislike» под каждым ответом. На основе негативных отзывов донастроили промпт и расширили Knowledge Base. Через месяц точность ответов выросла с 72% до 94%.
4 Ошибки, которые Halliburton (и вы) сделаете
- Забили на перекрёстные ссылки. В документации часто пишут «как в разделе 4.2». Но модель не ходит по ссылкам. Решение — заранее развернуть все перекрёстные ссылки в тексте.
- Экономили на метаданных. Если не добавить метаданные (версия софта, дата), модель может выдать команду для старой версии. Halliburton платили за это перезапусками.
- Не ограничили контекст. Изначально ставили topK=10 чанков. Но Nova начинала «пережёвывать» и выдавать противоречивые советы. Остановились на topK=5.
Кстати, про контроль затрат: Halliburton используют теги для каждого запроса к Bedrock, чтобы понимать, какой отдел сколько тратит. Я описал этот механизм в отдельном гайде.
5 Цифры, ради которых всё затевалось
| Показатель | До | После |
|---|---|---|
| Время настройки параметров | 40 мин | 2 мин |
| Количество ошибок в командах | 12% | <3% |
| Время цикла обработки (типовой проект) | 22 часа | 1.1 часа |
И да — ассистент работает до сих пор. Никто не откатывал.
Нефтегаз — только начало. Если ассистент Halliburton справился с сейсмикой, представьте, что будет, когда аналогичные RAG-системы внедрят в фармацевтику, юриспруденцию, авиастроение. Через год-два мы будем удивляться, что раньше люди читали документацию, а не спрашивали у модели. Готовьте промпты.