jax.export.symbolic_shape#

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

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

请参阅 https://jax.ac.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.ac.cn/en/latest/export/shape_poly.html#user-specified-symbolic-constraints)。

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

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

返回类型:

Sequence[DimSize]

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