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__。

返回值:

一个被包装在 name_scope 中的 fun 版本。

返回类型:

F