torch.fx.experimental.symbolic_shapes.definitely_true¶
- torch.fx.experimental.symbolic_shapes.definitely_true(a)[原始碼][原始碼]¶
僅當我們能確定 `a` 為 True 時返回 True,此過程可能會引入 guard。如果 `a` 依賴於某個未支援的 SymInt,即使存在一個 SymInt 的可能值會使表示式返回 True,我們也可能返回 False。
何時適合使用 definitely_true?首先,如果可以使用更高級別的組合器,請優先使用它們,它們絕對安全(除了短路評估)。其次,如果程式在 definitely_true 始終返回 False 時行為等效,則可以使用它。最後,即使程式行為不等效,只要更改是語義保持的,也可以使用它。如果程式在比之前更多的情況下報錯(但其他方面行為相同),或者以不影響結果的方式改變了某個量(例如,步長通常屬於此類),則該更改是語義保持的。
- 返回型別