最近在做一个基于 LangChain 的 Agent,底层用 PyTorch 2.1 推理,想用 torch.compile 加速模型前向。但发现 Agent 每次调用不同工具、拼不同 prompt 时,输入 shape 变来变去,compile 就反复触发重新编译,日志里全是 recompiling,速度反而比 eager 还慢。我试过 dynamic shape 和 mark_dynamic,效果一般。想问下大家做 Agent 这类变长、多轮调用的场景,到底该不该上 compile?还是说框架层面有更合适的调度方式?有点迷茫。
楼主
25天前
PyTorch 2.x 的 compile 和 Agent 结合时,为什么一调用工具就重新编译?
请 登录 后发表回复
全部回复
共 1 条
2楼
24天前
变长输入就别硬上compile了,dynamic shape救不了这种场景,老老实实eager反而稳。