jax.export.符号形状#
- jax.export.symbolic_shape(shape_spec, *, constraints=(), scope=None, like=None)[源代码][源代码]#
从字符串表示构建一个符号形状。
参见 https://jax.readthedocs.io/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 >= e2 或 e1 <= e2,或 e1 == e2。参见 [文档](https://jax.readthedocs.io/en/latest/export/shape_poly.html#user-specified-symbolic-constraints) 以了解用法。
scope (SymbolicScope | None) – 可选地,您可以指定在给定的范围内创建解析的符号表达式。如果缺少此项,则会使用给定的 constraints 创建一个新的 SymbolicScope。您不能同时指定 scope 和 constraints。有关用法,请参阅 [文档](https://jax.readthedocs.io/en/latest/export/shape_poly.html#user-specified-symbolic-constraints)。
like (Sequence[int | None] | None) – 当 shape_spec 包含占位符(”_”, “…”)时,使用此形状来填充这些占位符。用于填充的 like 的维度必须不是 None。如果 like 中的某个维度不是 None,并且 shape_spec 中对应的维度是一个常量,则它们必须相等。
- 返回类型:
Sequence[DimSize]
返回值: 一个包含整数或涉及维度变量的符号表达式的元组。