Skip to content

Track: revisit/deprecate MobiusBuilder's components_to_export once MobiusBuilder sees wider adoption #2631

Description

Summary

PR #2456 added components_to_export to MobiusBuilder, which lets an Olive recipe declaratively select a subset of a multimodal model's components to export. Under the hood this is a thin wrapper around mobius's own ModelPackage.save(components=...) predicate filter (present in mobius since March 2026, unrelated to components_to_export itself).

This issue is a forward-looking tracking item, not an active bug: once MobiusBuilder sees wider adoption as the standard exporter for multi-component/VLM models (i.e. once we're no longer routing individual components like the decoder through a separate exporter such as ORT GenAI's native ModelBuilder), we should revisit whether Olive still needs its own components_to_export pass config, or whether it can be deprecated in favor of:

Why this isn't done now

components_to_export currently exists because some components (notably the decoder) still need to go through a different exporter than MobiusBuilder (e.g. ORT GenAI's ModelBuilder) for that component alone, requiring MobiusBuilder to skip exporting it. Once MobiusBuilder itself can produce a decoder graph that's equivalent to (or supersedes) whatever the alternate exporter produces — i.e. once there's no longer a reason to route any component through a different exporter — the export-time filtering need mostly goes away, since a full export can just contain everything and downstream passes can select/skip what they need.

Suggested follow-up

  • Re-evaluate once MobiusBuilder is the default/sole exporter path for at least the VLM recipes currently depending on split export (e.g. Qwen VL family recipes).
  • If components_to_export is deprecated, keep components_to_skip (feat: add components_to_skip to OnnxBlockWiseRtnQuantization #2457) and/or the builds mechanism (Add multi build support #2480, if merged) as the supported way to scope per-component processing on an already-exported composite model.
  • Not urgent; revisit when planning the next MobiusBuilder-adoption milestone.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions