Cómo ampliamos Polars con plugins de expresiones en Rust para fenic
Extending Polars with Rust Expression Plugins
fenic, una biblioteca de DataFrames semánticos para pipelines de IA y LLM sobre datos no estructurados, usa Polars como motor. Para operaciones de texto como chunking, plantillas de prompts, jq, coincidencia difusa y parseo de transcripciones, que no existen en Polars, las UDF de Python eran lentas y rompían la composición. La solución: nueve plugins de expresiones en Rust vía pyo3-polars. Estos se ejecutan en el motor sobre Arrow, conservan tipos declarados y se componen con operaciones nativas en un solo árbol de expresiones. El artículo explica por qué y cómo se construyen, con código real.
Para el motor, es indistinguible de una función integrada.