CocoIndex выпустила v1: новый инкрементальный ETL-движок для агентов ИИ с поддержкой Python-API и отказом от DSL

Владимир Платонов · 5 мая, 2026 15:17

CocoIndex выпустила первую стабильную версию v1 своего инкрементального ETL-движка для агентов ИИ. Теперь пайплайн описывается на Python-API без DSL, а Postgres больше не обязателен. Движок обновляет индексы в реальном времени, экономя ресурсы.

ИИCocoIndex выпустила v1: новый инкрементальный ETL-движок для агентов ИИ с поддержкой Python-API и отказом от DSL
  • Первый стабильный релиз v1 инкрементального ETL-движка CocoIndex для агентов длительного действия
  • Отказ от DSL: пайплайн теперь описывается асинхронными функциями Python с прямым использованием типов PIL.Image, pyarrow.Table и torch.Tensor
  • Postgres больше не обязателен: состояние движка хранится в одном локальном файле, но остаётся полноценным таргетом
  • Инкрементальная обработка данных: движок обновляет индексы в реальном времени, пересчитывая только изменившиеся чанки
  • Поддержка нескольких таргетов: Postgres, LanceDB, Neo4j, Kafka, S3 и файловые системы с автоматическим управлением схемами
  • Лицензия Apache 2.0, документация и примеры пайплайнов доступны на GitHub

Компания CocoIndex представила первую стабильную версию v1 своего инкрементального ETL-движка для построения данных под агентов длительного действия. Инструмент автоматизирует обработку данных и их мгновенную индексацию в векторные базы или графы знаний, обновляя информацию в реальном времени.

Как только исходные данные меняются, CocoIndex точечно пересчитывает только нужные части индекса, исключая дорогостоящую полную переиндексацию всей базы. Главное изменение в релизе v1 — полный отказ от DSL. Теперь пайплайн описывается обычными асинхронными функциями Python, которые вызывают друг друга. Движок продолжает отслеживать изменения и материализовать целевые состояния, но делает это через нативное Python-API.

Авторы вдохновлялись тезисом Джеффа Дина и Билла Далли с GTC 2026 о том, что агенты работают в 50 раз быстрее человека, но опираются на инструменты, рассчитанные на человеческий темп.

Ночные пересборки индексов становятся проблемой — нужен движок, синхронизирующий производные данные с источником инкрементально. Помимо отказа от DSL, релиз принёс три ключевых изменения. Во-первых, движок использует систему типов Python: PIL.Image, pyarrow.Table, torch.Tensor и любые классы из импортированных библиотек можно передавать в функции напрямую, без обёрток.

Во-вторых, Postgres больше не обязателен: состояние движка хранится в одном локальном файле, хотя Postgres остаётся полноценным таргетом. В-третьих, источники и таргеты создаются во время выполнения: можно монтировать отдельный таргет на каждого тенанта или подключать Kafka-топик по фича-флагу.

Ядро движка остаётся на Rust: горячая логика по детекции и применению изменений реализована там. На уровне Python декоратор подключает функцию к отслеживанию изменений, а отдельный флаг кеширует её результат по хешу аргументов и кода. Контракт управляемых таргетов сохранился: разработчик декларирует, как должна выглядеть таблица, граф или директория, а CocoIndex сам выполняет create/alter/drop для контейнеров и insert/update/delete для содержимого. Примеры пайплайнов, от эмбеддингов кода в LanceDB до сборки графа знаний из разговоров, доступны в репозитории на GitHub.

CocoIndex v1 — это значимый шаг в развитии инструментов для агентов ИИ, особенно в части инкрементальной обработки данных. Отказ от DSL в пользу Python-API делает инструмент более доступным для разработчиков, а отмена обязательной зависимости от Postgres снижает порог входа. Теперь команды могут быстрее тестировать и внедрять решения, не жертвуя производительностью. Интересно, как скоро другие платформы последуют примеру CocoIndex и перейдут на подобные подходы.

Владимир Платонов

Владимир Платонов — автор и обозреватель финансовых рынков. Специализируется на Forex, брокерских сервисах и торговой инфраструктуре. В материалах анализирует условия торговли, исполнение ордеров и риски для частных трейдеров.