本文介绍了PyTorch中的__torch_dispatch__,它是一个动态调度系统,可以根据输入的属性来决定调用哪个函数。torch_dispatch 是PyTorch的核心,可以深度集成到框架中,使PyTorch具有更高的灵活性。本文还介绍了__torch_dispatch__ 的一些应用,如自动混合精度、vmap、FLOP计数等。此外,torch_dispatch 还可以用于扩展PyTorch的功能,例如日志记录、追踪、批处理张量等。torch_dispatch 的长期愿景是实现对模型的抽象表示,使用户能够以相同的建模代码,实现多种不同的执行方式。
参考:What (and Why) is __torch_dispatch__? - frontend API - PyTorch Dev Discussions