Repolode
pathwaycom

pathwaycom/pathway

基于 Rust 引擎的 Python ETL 框架,用于流处理、实时分析、LLM 管道和 RAG。

Star
62,089
Fork
1,683
未关闭 Issue
37
最近提交
前天

这是什么?

Pathway 是一个 Python ETL 框架,用于构建同时处理批量数据和流式数据的管道。同一份代码可以用于本地开发、CI 测试、批处理任务、流数据回放和实时处理,无需分别维护批处理和流处理两套逻辑。

Python API 底层由基于 Differential Dataflow 的 Rust 引擎执行,支持增量计算。管道数据保存在内存中,可以使用多线程、多进程或分布式方式运行,并能通过 Docker 和 Kubernetes 部署。连接器支持 Kafka、PostgreSQL、Google Drive、SharePoint 等数据源,另外通过 Airbyte 连接器可接入 300 多种数据源。

项目还提供 LLM 扩展模块,包含模型封装、解析器、向量化工具和文本切分器,并内置内存中的实时向量索引,同时集成 LangChain 和 LlamaIndex,便于基于实时更新的文档构建 RAG 应用。

核心功能

  • 01同一套 Python 代码统一处理批量和流式数据。
  • 02支持 Kafka、PostgreSQL、Google Drive、SharePoint 等连接器,并可通过 Airbyte 接入 300 多种数据源。
  • 03提供 join、窗口和排序等有状态转换,也可直接调用任意 Python 函数。
  • 04支持状态持久化,管道在更新或崩溃后可以恢复运行。
  • 05Rust 引擎支持多线程、多进程和分布式计算。
  • 06内置 LLM 工具,包括内存实时向量索引,并集成 LangChain 和 LlamaIndex。

适用场景

  • 从 Kafka 或数据库中实时抽取、转换和加载数据。
  • 构建带告警功能的事件驱动管道,例如日志监控。
  • 构建实时 RAG 应用,文档变化时同步更新向量索引。
  • 将已有的批处理任务迁移为流处理,而无需重写代码。

快速上手

  1. 1

    使用 pip 从 PyPI 安装 Pathway

    pip install -U pathway
  2. 2

    将示例代码保存为 main.py 并用 Pathway 运行器运行

    pathway spawn python main.py

使用前须知

  • 仅支持 macOS 和 Linux,其他系统需要使用虚拟机。
  • 需要 Python 3.10 或更高版本。
  • 元数据中许可证显示为 NOASSERTION,README 徽章指向 BSL,商业使用前请核实许可条款。
  • 精确一次(exactly-once)一致性仅企业版提供,免费版提供至少一次(at-least-once)。

标签

常见问题

pathway 是什么?
基于 Rust 引擎的 Python ETL 框架,用于流处理、实时分析、LLM 管道和 RAG。 Pathway 是一个 Python ETL 框架,用于构建同时处理批量数据和流式数据的管道。同一份代码可以用于本地开发、CI 测试、批处理任务、流数据回放和实时处理,无需分别维护批处理和流处理两套逻辑。
pathway 可以免费使用吗?用的什么许可证?
pathway 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
pathway 还在维护吗?
活跃维护中。pathway 最近一次提交是在 2026年10月20日。
pathway 适合用来做什么?
从 Kafka 或数据库中实时抽取、转换和加载数据。 构建带告警功能的事件驱动管道,例如日志监控。 构建实时 RAG 应用,文档变化时同步更新向量索引。 将已有的批处理任务迁移为流处理,而无需重写代码。
pathway 怎么安装和运行?
使用 pip 从 PyPI 安装 Pathway: pip install -U pathway 将示例代码保存为 main.py 并用 Pathway 运行器运行: pathway spawn python main.py
在哪里获取 pathway?
源代码和安装说明在 GitHub 上:https://github.com/pathwaycom/pathway

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目