jax.debug.callback#

jax.debug.callback(callback, *args, ordered=False, **kwargs)[源代码]#

调用一个可阶段化的 Python 回调。

更多解释请参阅外部回调

jax.debug.callback 使您能够传入一个 Python 函数,该函数可以在阶段性的 JAX 程序中调用。 jax.debug.callback 遵循现有的 JAX 转换操作语义,因此不知道副作用。这意味着在存在高阶原语和转换的情况下,效果可能会被删除、重复或可能重新排序。

我们希望有这种行为,因为我们希望 jax.debug.callback 是“无害的”,即我们希望这些原语尽可能少地改变 JAX 计算,同时尽可能多地揭示它们的信息,例如计算的哪些部分被复制或删除。

参数:
  • callback (Callable[..., None]) – 一个返回 None 的 Python 可调用对象。

  • *args (Any) – 回调的位置参数。

  • ordered (bool) – 一个仅限关键字的参数,用于指示分阶段计算是否会对这个回调函数相对于其他有序回调函数强制执行顺序。

  • **kwargs (Any) – 传递给回调函数的关键字参数。

返回值:

None

返回类型:

None

另请参阅