# qairt.api.common.backends.common.tuner

- *class* qairt.api.common.backends.common.tuner.Criteria(*value*)

    - Bases: `str`, `Enum`

Enum representing criteria types.

- BANDWIDTH *= 'bandwidth'*

    - 

- LATENCY *= 'latency'*

    - 

- *static* is\_valid\_criteria(*criteria\_str: str*) → bool

    -

- qairt.api.common.backends.common.tuner.get\_graph\_names(*model: [CompiledModel](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-core-api.html#qairt.CompiledModel)*) → List[str]

    - Get graph names to update graph\_custom\_config.

- Parameters

    - **model** ([*CompiledModel*](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-core-api.html#qairt.CompiledModel)) – Compiled model.

- Returns

    - List of graph names.

- Return type

    - list

- qairt.api.common.backends.common.tuner.get\_report\_details(*profiler: [Profiler](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-core-api.html#qairt.Profiler)*, *criteria: [Criteria](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-common-backends-common.html#qairt.api.common.backends.common.tuner.Criteria)*) → Tuple[int, [OpTraceReport](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-profiler.html#qairt.api.profiler.report.OpTraceReport)]

    - Generate report and extract criteria value.

- Parameters

    - - **profiler** ([*Profiler*](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-core-api.html#qairt.Profiler)) – Profiler object.
- **criteria** ([*Criteria*](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-common-backends-common.html#qairt.api.common.backends.common.tuner.Criteria)) – Criteria for optimization.

- Returns

    - Criteria value and report data.

- Return type

    - tuple

- qairt.api.common.backends.common.tuner.optimize(*model: [Model](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-core-api.html#qairt.Model)*, *criteria: str*, *compile\_args: dict*, *execution\_args: dict*) → Tuple[[CompiledModel](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-core-api.html#qairt.CompiledModel), [OpTraceReport](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-profiler.html#qairt.api.profiler.report.OpTraceReport)]

    - Optimize the given model based on the specified criteria.

- Parameters

    - - **model** ([*Model*](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-core-api.html#qairt.Model)) – The model to be optimized.
- **criteria** (*str*) – The optimization criteria (options: latency, bandwidth).
- **compile\_args** (*dict*) – A dictionary of arguments for the compilation process.
See [`qairt.compile()`](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-core-api.html#qairt.compile) for the full list of compile\_args.
- **execution\_args** (*dict*) – A dictionary of arguments for the execution process.
See `qairt.api.compiled_model.CompiledModel.__call__()` for the full list
of execution\_args. Note that an instance of [`qairt.api.configs.device.Device`](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-configs.html#qairt.api.configs.device.Device)
must be provided.

Example

from qairt import Model, CompileConfig, ExecutionConfig, Device, DevicePlatformType
    from qairt.api.common.backends.common import tuner
    
    model = qairt.load("model.dlc")
    device = qairt.Device(type=DevicePlatformType.ANDROID, identifier="abcd123")
    compile_args = {"config": CompileConfig(backend="HTP")}  # Replace with your compile arguments
    execution_args={"inputs": {"input1": input_data}, "device": device}  # Replace with your execution arguments
    optimized_model, report = tuner.optimize(model, "latency", compile_args, execution_args)
    Copy to clipboard

- Returns

    - The optimized model and corresponding op trace report.

- Return type

    - tuple

- qairt.api.common.backends.common.tuner.update\_graph\_configs(*config: [CompileConfig](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-compiler.html#qairt.api.compiler.config.CompileConfig)*, *p\_value: int*, *graph\_names: List[str]*) → [CompileConfig](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-compiler.html#qairt.api.compiler.config.CompileConfig)

    - Set optimization\_type and add finalize\_config to graph\_custom\_configs.

- Parameters

    - - **config** ([*CompileConfig*](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-compiler.html#qairt.api.compiler.config.CompileConfig)) – Compilation configuration.
- **p\_value** (*int*) – P value for optimization.
- **graph\_names** (*list*) – List of graph names.

- Returns

    - Updated compilation configuration.

- Return type

    - [CompileConfig](https://docs.qualcomm.com/doc/80-87189-2/topic/qairt-api-compiler.html#qairt.api.compiler.config.CompileConfig)

- qairt.api.common.backends.common.tuner.validate\_backend\_type(*value: str*)

    - Validate backend type.

- Parameters

    - **value** – Backend type value.

- Raises

    - **ValueError** – If the backend type is not supported.

Last Published: Jun 19, 2026

[Previous Topic
qairt.api.common.backends.htp\_mcp](https://docs.qualcomm.com/bundle/publicresource/80-87189-2/topics/qairt-api-common-backends-htp_mcp.md) [Next Topic
qairt.api.compiler](https://docs.qualcomm.com/bundle/publicresource/80-87189-2/topics/qairt-api-compiler.md)