Skip to content

2.0.26

Choose a tag to compare

@PINTO0309 PINTO0309 released this 27 Feb 15:20
· 2112 commits to main since this release
f237546

2.0.26

Summary

This PR improves flatbuffer_direct conversion stability and builtin coverage, with a focus on string/optional handling and redundant layout-wrapper reduction.

Improvements in fix-str

  • Added builtin lowering support for StringNormalizer under constrained runtime patterns.
    • Added no-op and stopword-filter paths for string tensors.
    • Added constant-input fold path including case conversion and stopword filtering semantics.
  • Added builtin lowering support for determinable OptionalHasElement cases to reduce custom-op fallback.
  • Extended Unsqueeze builtin axis normalization with output-rank semantics (covers opset8-style patterns).
  • Expanded Pad builtin path to support non-zero constant padding via PADV2 (for non-quantized tensors).
  • Improved dtype support in flatbuffer_direct tensor metadata handling (including STRING).
  • Added/extended transpose and reshape optimization passes to remove redundant wrappers:
    • Transpose -> Reshape -> Transpose (including NHWC/NCHW channel-tail singleton variants)
    • redundant Squeeze -> Reshape identity chains
    • multiple SE/BiFPN-style layout wrapper cleanup patterns
  • Improved op error-report/evaluation behavior around subprocess/in-process execution paths.

Validation

  • pytest -q tests/test_tflite_builder_direct.py -k "string_normalizer or optional_has_element or unsqueeze or pad or transpose_se_conv_mul_prepost_nhwc_chain or squeeze_reshape_identity_chains_removed or transpose_reshape_transpose_to_expanddims_nhwc"
    • 28 passed
  • pytest -q tests/test_accuracy_evaluator_subprocess.py
    • 2 passed

Notes

  • README builtin-op coverage table and notes were updated to document new constraints/coverage.

What's Changed

  • flatbuffer_direct: improve String/Optional builtins and transpose-reshape chain optimization by @PINTO0309 in #889

Full Changelog: 2.0.25...2.0.26