jax.export.symbolic_shape#

jax.export.symbolic_shape(shape_spec, *, constraints=(), scope=None, like=None)[源代码]#

从字符串表示构造一个符号形状。

参见 https://jax.net.cn/en/latest/export/shape_poly.html 以查看示例。

参数:
  • shape_spec (str | None) – 一个符号形状规范。None 表示“...” 。形状规范是元组(括号可选)的字符串表示,其中包含逗号分隔的维度表达式。维度表达式可以是:整数常量、维度变量(以字母开头的字母数字),e1 + e2、e1 - e2、e1 * e2、floordiv(e1, e2)、mod(e1, e2)、max(e1, e2) 或 min(e1, e2)。

  • constraints (Sequence[str]) – 对符号维度表达式的一系列约束,形式为 e1 >= e2e1 <= e2e1 == e2。有关用法,请参阅[文档](https://jax.net.cn/en/latest/export/shape_poly.html#user-specified-symbolic-constraints)。

  • scope (SymbolicScope | None) – 可选地,您可以指定在给定作用域中创建解析后的符号表达式。如果缺失,则会使用给定的 constraints 创建一个新的 SymbolicScope。您不能同时指定 scopeconstraints。有关用法,请参阅[文档](https://jax.net.cn/en/latest/export/shape_poly.html#user-specified-symbolic-constraints)。

  • like (Sequence[int | None] | None) – 当 shape_spec 包含占位符(“_”、“...”)时,使用此形状填充占位符。用于填充的 like 的维度不能为 None。如果 like 中的维度不为 Noneshape_spec 中的对应维度是常量,则它们必须相等。

返回类型:

Sequence[DimSize]

返回:一个元组,其中包含整数或涉及维度变量的符号表达式。