SuperAPI AI 工具集

ruleflow-generating-reusable-program

数据与分析

查看项目

更新于 10-16 01:34

技能介绍

用途:优化 Python 脚本或 Jupyter Notebook 中的 Pandas DataFrame/Series 操作,适用于性能剖析发现慢调用(iterrows、链式索引、带 lambda 的 apply、drop/rename 等复制密集操作)、需要为大量相似模式生成可复用优化规则、批量为 notebook 集合应用改进,或构建 CI linter 与 pre-commit 钩子标记慢模式等场景。

主要能力:核心是解耦“发现”与“部署”,LLM 仅使用两次——SnippetGen 发现优化变体,RuleGen 将变体泛化为抽象重写规则;之后由确定性编译器 CodeGen 应用规则,不再涉及 LLM。规则含三部分:左侧类型化抽象模式(如 @{Name: v1}、@{Const(str): c1})、使用同名变量的右侧替换、以及保证安全所需的运行时前置条件(如 isinstance(@{v1}, pd.DataFrame))。RuleGen 采用 4 代理分解提升规则有效率(资料称 68% 对单代理 18%)。工作流包括:剖析热点、生成等价候选、在代表性 DataFrame 上验证等价、计时验证(如 >2x 加速)、抽象成规则、合成前置条件、基于 AST 模式匹配应用规则,必要时用条件守卫回退原代码,并按加速幅度贪心调度多条规则。文中给出 drop→pop、rename inplace、方括号索引→.loc、apply(lambda x: x.strip())→.str.strip() 等示例,并列出各例的加速数据。

限制:规则面向 Pandas,虽方法可推广但具体规则仅限 Pandas;语义等价靠随机数据测试而非形式化证明,边界情况可能未覆盖;原地改写会改变别名行为;LLM 候选接受率低(约 3.79%);规则假设标准 Pandas,自定义子类、猴子补丁或非标准 dtype 可能静默违反前置条件。使用方式、安装命令、收费与平台信息:暂未提供。