← Ко всем open source проектам

Pathway

pathwaycom/pathway

Pathway — Python-фреймворк для потоковой обработки данных, аналитики в реальном времени и ИИ-конвейеров.

Форки 1,674
Автор pathwaycom
Язык Python
Лицензия NOASSERTION
Обновлено 2026-06-27

Что это такое

Pathway — фреймворк для обработки живых данных на Python. Он рассчитан на сценарии, где данные не лежат неподвижной таблицей, а постоянно приходят из файлов, очередей, баз, документов или внешних источников.

Проект особенно заметен в задачах аналитики в реальном времени и ИИ-конвейеров: индексы для RAG, обработка событий, обновление результатов при изменении входных данных, связка с векторными базами и LLM-приложениями.

Как работает модель

Pathway предлагает описывать преобразования данных декларативно, а выполнение берет на себя движок. Пользователь задает схему, источник, вычисления и место вывода результата.

Главное отличие от обычного пакетного скрипта — постоянное обновление. Когда входные данные меняются, система пересчитывает результат как поток, а не ждет следующего ручного запуска.

Минимальная обработка потока

Пример показывает общий стиль Pathway: определить схему, подключить источник, описать преобразование и вывести результат.

Язык: Python
import pathway as pw

class Input(pw.Schema):
    value: int

table = pw.io.csv.read("./data", schema=Input, mode="streaming")
positive = table.filter(table.value > 0)
result = positive.groupby().reduce(total=pw.reducers.sum(positive.value))

pw.io.jsonlines.write(result, "./out.jsonl")
pw.run()

Что внутри репозитория

В репозитории есть ядро фреймворка, Python API, соединители, примеры, шаблоны для ИИ-задач и документация по развертыванию. Проект старается соединить мир инженерии данных и современных приложений с LLM.

Pathway полезен там, где данные должны оставаться актуальными. Например, документ изменился, индекс обновился, и ответная система должна видеть новую версию без полного ручного пересбора.

Сильные стороны

Сильная сторона — ориентация на живые данные. Это отличает Pathway от простых ETL-скриптов, которые запускаются по расписанию и видят только снимок состояния.

Вторая сильная сторона — Python-интерфейс. Команды, которые уже пишут аналитику и ИИ-приложения на Python, могут описывать потоковую обработку в знакомой среде.

Ограничения

Pathway требует понимания потоковой модели. Если задача на самом деле статична и запускается раз в месяц, простой скрипт или SQL-запрос может быть понятнее.

Для рабочих систем также важны эксплуатация, память, мониторинг, обработка ошибок и повторяемость результатов. Фреймворк дает основу, но архитектуру данных все равно нужно проектировать.