Repolode
pathwaycom

pathwaycom/pathway

Python-фреймворк ETL для потоковой обработки, аналитики в реальном времени, LLM-пайплайнов и RAG на базе движка на Rust.

Звёзды
62,089
Форки
1,683
Открытые issues
37
Последний коммит
позавчера

Что это?

Pathway — Python-фреймворк ETL для создания пайплайнов, обрабатывающих как пакетные, так и потоковые данные. Один и тот же код можно запускать при локальной разработке, в CI-тестах, пакетных заданиях, при повторном проигрывании потоков и в режиме обработки данных в реальном времени. Поэтому разработчикам не нужно поддерживать отдельные версии пайплайна для пакетной и потоковой обработки.

Python API работает поверх движка на Rust, построенного на Differential Dataflow и выполняющего инкрементальные вычисления. Пайплайны хранятся в памяти и могут работать в многопоточном, многопроцессном или распределённом режиме; их также можно развернуть с помощью Docker и Kubernetes. Среди коннекторов — источники данных Kafka, PostgreSQL, Google Drive и SharePoint, а коннектор Airbyte открывает доступ ещё более чем к 300 источникам.

В Pathway также есть расширение для LLM с обёртками, парсерами, эмбеддерами и сплиттерами, векторный индекс в памяти для работы в реальном времени, а также интеграции с LangChain и LlamaIndex для создания RAG-приложений на основе актуальных документов.

Ключевые возможности

  • 01Единый движок для пакетных и потоковых данных, использующий один и тот же код на Python.
  • 02Коннекторы для Kafka, PostgreSQL, Google Drive, SharePoint и более чем 300 источников через Airbyte.
  • 03Трансформации с состоянием, такие как объединение данных, оконная обработка и сортировка, а также поддержка произвольных функций Python.
  • 04Сохранение состояния вычислений, чтобы пайплайны могли перезапускаться после обновлений или сбоев.
  • 05Движок на Rust с поддержкой многопоточности, многопроцессной и распределённой обработки.
  • 06Встроенные инструменты для LLM, векторный индекс в памяти для работы в реальном времени и интеграции с LangChain и LlamaIndex.

Сценарии использования

  • ETL в реальном времени для перемещения и преобразования данных из Kafka или баз данных.
  • Пайплайны, реагирующие на события и отправляющие оповещения, например мониторинг логов.
  • RAG-приложения в реальном времени, которые обновляют векторный индекс при изменении документов.
  • Переход от существующего пакетного задания обработки данных к потоковой обработке без его переписывания.

Быстрый старт

  1. 1

    Установите Pathway из PyPI с помощью pip

    pip install -U pathway
  2. 2

    Сохраните пример кода в файле main.py и запустите его с помощью Pathway runner

    pathway spawn python main.py

Что важно знать

  • Доступно только в macOS и Linux; для других систем потребуется виртуальная машина.
  • Требуется Python 3.10 или выше.
  • В метаданных лицензия указана как NOASSERTION, а значок в README указывает на BSL, поэтому перед коммерческим использованием проверьте условия лицензии.
  • Согласованность exactly-once доступна только в Enterprise-версии; бесплатная версия обеспечивает at-least-once.

Темы

Частые вопросы

Что такое pathway?
Python-фреймворк ETL для потоковой обработки, аналитики в реальном времени, LLM-пайплайнов и RAG на базе движка на Rust. Pathway — Python-фреймворк ETL для создания пайплайнов, обрабатывающих как пакетные, так и потоковые данные. Один и тот же код можно запускать при локальной разработке, в CI-тестах, пакетных заданиях, при повторном проигрывании потоков и в режиме обработки данных в реальном времени. Поэтому разработчикам не нужно поддерживать отдельные версии пайплайна для пакетной и потоковой обработки.
pathway можно использовать бесплатно? Какая у него лицензия?
pathway распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
pathway всё ещё поддерживается?
Активно поддерживается. Последний коммит в pathway — 20 окт. 2026 г..
Для чего можно использовать pathway?
ETL в реальном времени для перемещения и преобразования данных из Kafka или баз данных. Пайплайны, реагирующие на события и отправляющие оповещения, например мониторинг логов. RAG-приложения в реальном времени, которые обновляют векторный индекс при изменении документов. Переход от существующего пакетного задания обработки данных к потоковой обработке без его переписывания.
Как установить pathway?
Установите Pathway из PyPI с помощью pip: pip install -U pathway Сохраните пример кода в файле main.py и запустите его с помощью Pathway runner: pathway spawn python main.py
Где скачать pathway?
Исходный код и инструкции по установке — на GitHub: https://github.com/pathwaycom/pathway

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты