jax.named_call#
- jax.named_call(fun, *, name=None)[源代码]#
在暂存 JAX 计算时,为函数添加用户指定的名称。
当为即时编译到 XLA(或其他后端,如 TensorFlow)暂存计算时,JAX 运行您的 Python 程序,但默认情况下不保留与程序关联的任何函数名称或其他元数据。这可能会使调试程序的暂存(和/或编译)表示变得复杂,因为每个正在执行的操作的上下文信息有限。
named_call 告诉 JAX 将给定的函数暂存为一个具有特定名称的子计算。当使用 XLA 编译暂存程序时,这些命名的子计算会被保留,并显示在 TensorBoard 等调试工具(如 TensorFlow Profiler)中。当使用
experimental.jax2tf.convert()
将 JAX 程序暂存到 TensorFlow 时,名称也会被保留。- 参数:
fun (F) – 要包装的函数。这可以是任何可调用对象。
name (str | None | None) – 可选。用于命名名称作用域内创建的所有子计算的前缀。如果未指定,则使用 fun.__name__。
- 返回:
一个版本的 fun,它被包装在 name_scope 中。
- 返回类型:
F