用 Rust 插件为 Polars 注入 AI 能力

Extending Polars with Rust Expression Plugins

用 Rust 插件为 Polars 注入 AI 能力

fenic 是一个基于 Polars 构建的语义 DataFrame 库,专为处理 AI 和 LLM 流水线中的非结构化数据而设计。在开发过程中,我们发现 Python UDF 在处理文本分块、提示词模板渲染和模糊匹配等任务时,存在性能瓶颈且破坏了 Polars 的表达式组合优化。为此,我们利用 pyo3-polars 编写了九个 Rust 表达式插件,将这些操作转化为原生引擎的一部分。这些插件不仅运行在 Rust 层面,直接操作 Arrow 内存,还能与内置操作无缝组合,形成单一的表达式树。这使得复杂的文本处理流程能在单次引擎遍历中高效完成,既保留了类型安全,又实现了极致的性能。

将 Markdown 文档解析、用 jq 过滤其 AST、索引结果并转换为强类型结构体,这一切都融合在单个表达式中,由 Polars 规划并单次执行。

同日更多故事

2026-07-24