onnxscript
ONNX Script enables developers to naturally author ONNX functions and models using a subset of Python.
File Explorer
Download Latest Version (.zip)- release-steps.yml
- release-stage.yml
- publish-dev.yml
- publish.yml
- release-dev.yml
- release.yml
- codeql-config.yml
- codeql-analysis.yml
- lint.yaml
- main.yaml
- pages.yaml
- copilot-instructions.md
- dependabot.yaml
- release.yml
- extensions.json
- custom.css
- logo-dark.png
- logo-light.png
- logo.ai
- logo_main.png
- classtemplate.rst
- classtemplate_inherited.rst
- functiontemplate.rst
- converter.md
- decorator.md
- index.md
- opsets.md
- optimizer.md
- rewriter.md
- rewriter_pattern.md
- testing.md
- values.md
- version_converter.md
- debugging_screenshot.png
- index.md
- intellisense_screenshot.png
- ten_chunks_model.png
- index.md
- 01_plot_selu.py
- 02_plot_square_loss.py
- 03_export_lib.py
- 04_plot_eager_mode_evaluation.py
- 05_plot_model_props.py
- 06_plot_model_local_funs.py
- README.txt
- index.md
- test_documentation_examples.py
- graph_builder.md
- index.md
- dropout.py
- firstdim.py
- forloop.py
- forwhileloop.py
- hardmax_end_to_end.py
- leaky_relu.py
- leaky_relu_attr_promoted.py
- omitted_input.py
- outerscope_redef_error.py
- scanloop.py
- softplus.py
- tensor_attr.py
- tensor_attr2.py
- tensor_attr_short.py
- whileloop.py
- index.md
- optimize.md
- broadcast_01.png
- broadcast_02.png
- erfgelu_01.png
- erfgelu_02.png
- erfgelu_03_commute.png
- erfgelu_04_commute.png
- erfgelu_05_commute.png
- erfgelu_06_commute.png
- erfgelu_07_commute.png
- allow_other_attributes.py
- allow_other_inputs.py
- broadcast_matmul.py
- domain_option.py
- erfgelu.py
- or_pattern.py
- outputs_option.py
- allow_other_inputs.md
- attributes.md
- commute.md
- conditional_rewrite.md
- domain_option.md
- index.md
- node_value_checkers.md
- or_pattern.md
- outputs_option.md
- rewrite_patterns.md
- simple_example.md
- index.md
- conf.py
- index.md
- update_readme.py
- custom_op_expansion.py
- pattern_matching_example.py
- pattern_rewriting.py
- __init__.py
- torch_2_11.py
- torch_2_5.py
- torch_2_6.py
- torch_2_7.py
- torch_2_8.py
- torch_2_9.py
- __init__.py
- _inference.py
- _inliner.py
- analysis.py
- analysis_test.py
- ast_utils.py
- autocast.py
- builder.py
- builder_test.py
- converter.py
- converter_test.py
- deprecation.py
- evaluator.py
- evaluator_test.py
- irbuilder.py
- main.py
- param_manipulation.py
- param_manipulation_test.py
- sourceinfo.py
- tape_builder.py
- type_annotation.py
- type_annotation_test.py
- utils.py
- values.py
- values_test.py
- version_utils.py
- __init__.py
- onnx_backend.py
- onnx_backend_test.py
- onnx_export.py
- onnx_export_test.py
- deduce_type_constraints.py
- deduce_type_constraints_test.py
- generate_aten_signatures.py
- generate_prims_signatures.py
- __init__.py
- __init__.py
- common.py
- core.py
- fft.py
- linalg.py
- nested.py
- nn.py
- prims.py
- quantized_decomposed.py
- sparse.py
- special.py
- vision.py
- __init__.py
- _constants.py
- _flags.py
- registration.py
- tensor_typing.py
- __init__.py
- __init__.py
- __init__.py
- _schemas.py
- _schemas_test.py
- convenience.py
- README.md
- __init__.py
- _module.py
- _module_list.py
- _module_test.py
- _parameter.py
- _sequential.py
- opset1.py
- opset10.py
- opset11.py
- opset12.py
- opset13.py
- opset14.py
- opset15.py
- opset16.py
- opset17.py
- opset18.py
- opset19.py
- opset2.py
- opset20.py
- opset21.py
- opset22.py
- opset23.py
- opset24.py
- opset25.py
- opset26.py
- opset27.py
- opset3.py
- opset4.py
- opset5.py
- opset6.py
- opset7.py
- opset8.py
- opset9.py
- opset_ai_onnx_ml1.py
- opset_ai_onnx_ml2.py
- opset_ai_onnx_ml3.py
- opset_ai_onnx_ml4.py
- opset_ai_onnx_ml5.py
- opset_ai_onnx_preview1.py
- __init__.py
- __init__.py
- _constant_folding.py
- _constant_folding_test.py
- _function_folding_test.py
- _optimizer.py
- _optimizer_test.py
- _bart_encoder.py
- _phi2lm.py
- _phi4lm.py
- _rotary_embedding_models.py
- _smollm_1.py
- _smollm_2.py
- _test_models.py
- _whisper_decoder.py
- _whisper_encoder.py
- __init__.py
- _onnx_fusions.py
- bfloat16_converter.py
- bfloat16_converter_test.py
- __init__.py
- README.md
- __init__.py
- _core.py
- _test_utils.py
- attention.py
- attention_test.py
- bias_gelu.py
- bias_gelu_test.py
- cos_sin_cache.py
- cos_sin_cache_extended_test.py
- cos_sin_cache_test.py
- erfgelu.py
- erfgelu_test.py
- fuse_xformers_test.py
- fused_matmul_rule_sets.py
- fused_matmul_rule_sets_test.py
- gelu.py
- gelu_test.py
- gqa.py
- gqa_extended_test.py
- gqa_packed_qkv.py
- gqa_packed_qkv_extended_test.py
- gqa_packed_qkv_test.py
- gqa_test.py
- group_normalization_merge_silu.py
- group_normalization_merge_silu_test.py
- instance_to_group_normalization.py
- instance_to_group_normalization_test.py
- mha.py
- mha_bias.py
- mha_bias_test.py
- mha_scale.py
- mha_scale_test.py
- mha_test.py
- mha_unit_test.py
- rms_normalization.py
- rms_normalization_test.py
- rms_normalization_unit_test.py
- rotary_embedding.py
- rotary_embedding_test.py
- rotary_embedding_unit_test.py
- sdpa.py
- sdpa_test.py
- sdpa_via_mha.py
- shape_optimization.py
- shape_optimization_test.py
- skip_normalization.py
- skip_normalization_test.py
- skip_normalization_unit_test.py
- softmax.py
- softmax_test.py
- __init__.py
- _basic_rules.py
- _basic_rules_test.py
- _broadcast_to_matmul.py
- _broadcast_to_matmul_test.py
- _cast_constant_of_shape.py
- _cast_constant_of_shape_extended_test.py
- _cast_constant_of_shape_test.py
- _collapse_slices.py
- _collapse_slices_test.py
- _fuse_batchnorm.py
- _fuse_batchnorm_test.py
- _fuse_conv_affine.py
- _fuse_conv_affine_extended_test.py
- _fuse_conv_affine_test.py
- _fuse_hardswish.py
- _fuse_hardswish_test.py
- _fuse_pad_into_conv.py
- _fuse_pad_into_conv_test.py
- _fuse_relus_clips.py
- _fuse_relus_clips_test.py
- _gemm_to_matmul_add.py
- _gemm_to_matmul_add_test.py
- _materialize_reshape_shape.py
- _materialize_reshape_shape_test.py
- _matmul_add_to_gemm.py
- _matmul_add_to_gemm_test.py
- _min_max_to_clip.py
- _min_max_to_clip_test.py
- _no_op.py
- _no_op_test.py
- _redundant_scatter_nd.py
- _redundant_scatter_nd_extended_test.py
- _redundant_scatter_nd_test.py
- _remove_expand_before_binary_op.py
- _remove_expand_before_binary_op_test.py
- _remove_optional_bias.py
- _remove_optional_bias_test.py
- __init__.py
- _gqa.py
- _gqa_extended_test.py
- _gqa_test.py
- _layer_norm.py
- _layer_norm_extended_test.py
- _layer_norm_test.py
- _rms_normalization.py
- _rms_normalization_extended_test.py
- _rms_normalization_test.py
- _rotary_embedding.py
- _rotary_embedding_extended_test.py
- _rotary_embedding_test.py
- __init__.py
- __init__.py
- _basics.py
- _context.py
- _context_test.py
- _fusion_utils.py
- _ir_utils.py
- _matcher.py
- _pattern_ir.py
- _pattern_ir_test.py
- _rewrite_rule.py
- match_context_test.py
- pattern.py
- pattern_base_test.py
- pattern_test.py
- testing.py
- __init__.py
- __init__.py
- llama.py
- llama_test.py
- mistral.py
- mistral_test.py
- phi.py
- phi3.py
- phi3_test.py
- phi_test.py
- __init__.py
- memory_peak.py
- memory_peak_test.py
- __init__.py
- evaluation_utils.py
- metadata_merger.py
- replace.py
- timing_utils.py
- utils.py
- __init__.py
- _c_api_utils.py
- _version_converter.py
- _version_converter_test.py
- __init__.py
- evaluator.py
- onnx_types.py
- onnx_types_test.py
- py.typed
- tensor.py
- tensor_test.py
- values.py
- __init__.py
- __main__.py
- onnx_opset_builder.py
- pygen.py
- pygen_test.py
- README.md
- requirements-onnx-weekly.txt
- requirements-ort-nightly.txt
- requirements-pytorch-nightly.txt
- requirements.txt
- llama_forward.onnx
- input_0.pb
- output_0.pb
- mobilenetv2_100_dynamo.onnx
- input_0.pb
- output_0.pb
- resnet18_dynamo.onnx
- input_0.pb
- input_1.pb
- output_0.pb
- output_1.pb
- output_10.pb
- output_11.pb
- output_12.pb
- output_13.pb
- output_2.pb
- output_3.pb
- output_4.pb
- output_5.pb
- output_6.pb
- output_7.pb
- output_8.pb
- output_9.pb
- Speech2Text2ForCausalLM_dynamo.onnx
- torchscript_model.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- input_8.pb
- output_0.pb
- output_1.pb
- output_2.pb
- attn_llama2_4_34_0.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- input_8.pb
- output_0.pb
- output_1.pb
- output_2.pb
- attn_llama2_4_34_1.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- input_8.pb
- output_0.pb
- output_1.pb
- output_2.pb
- attn_llama2_4_36_0.onnx
- input_0.pb
- input_1.pb
- input_10.pb
- input_11.pb
- input_12.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- input_8.pb
- input_9.pb
- output_0.pb
- output_1.pb
- output_2.pb
- attn_phi_1_5_0.onnx
- input_0.pb
- input_1.pb
- input_10.pb
- input_11.pb
- input_12.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- input_8.pb
- input_9.pb
- output_0.pb
- output_1.pb
- output_2.pb
- attn_phi_1_5_1.onnx
- input_0.pb
- input_1.pb
- input_10.pb
- input_11.pb
- input_12.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- input_8.pb
- input_9.pb
- output_0.pb
- output_1.pb
- output_2.pb
- attn_phi_1_5_2.onnx
- input_0.pb
- input_1.pb
- input_10.pb
- input_11.pb
- input_12.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- input_8.pb
- input_9.pb
- output_0.pb
- output_1.pb
- output_2.pb
- attn_phi_1_5_3.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- output_0.pb
- attn_stable_diffusion_unet_0.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- output_0.pb
- attn_stable_diffusion_unet_1.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- output_0.pb
- attn_stable_diffusion_unet_without_encoder_hidden_states_0.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- output_0.pb
- attn_stable_diffusion_unet_without_encoder_hidden_states_1.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- input_8.pb
- output_0.pb
- output_1.pb
- output_2.pb
- attn_yi_4_37_0.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- output_0.pb
- geglu_stable_diffusion_unet_0.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- output_0.pb
- geglu_stable_diffusion_unet_1.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- output_0.pb
- geglu_stable_diffusion_unet_2.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- output_0.pb
- geglu_stable_diffusion_unet_3.onnx
- input_0.pb
- output_0.pb
- gelu_phi_1_5_0.onnx
- input_0.pb
- output_0.pb
- gelu_phi_1_5_1.onnx
- input_0.pb
- output_0.pb
- gelu_phi_1_5_2.onnx
- input_0.pb
- output_0.pb
- gelu_phi_1_5_3.onnx
- input_0.pb
- input_1.pb
- output_0.pb
- ln_llama2_0.onnx
- input_0.pb
- input_1.pb
- output_0.pb
- ln_llama2_1.onnx
- input_0.pb
- input_1.pb
- output_0.pb
- ln_llama2_2.onnx
- input_0.pb
- input_1.pb
- output_0.pb
- ln_llama2_3.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- output_0.pb
- output_1.pb
- output_2.pb
- sdpa_llama2_0.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- output_0.pb
- output_1.pb
- output_2.pb
- sdpa_llama2_1.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- output_0.pb
- output_1.pb
- output_2.pb
- sdpa_llama2_2.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- output_0.pb
- output_1.pb
- output_2.pb
- sdpa_llama2_3.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- input_8.pb
- output_0.pb
- output_1.pb
- output_2.pb
- sdpa_llama2_4_38_0.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- output_0.pb
- output_1.pb
- output_2.pb
- sdpa_yi_0.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- output_0.pb
- output_1.pb
- output_2.pb
- sdpa_yi_1.onnx
- input_0.pb
- input_1.pb
- input_2.pb
- input_3.pb
- input_4.pb
- input_5.pb
- input_6.pb
- input_7.pb
- input_8.pb
- output_0.pb
- output_1.pb
- output_2.pb
- sdpa_yi_4_38_0.onnx
- __init__.py
- onnx_script_test_case.py
- testutils.py
- __init__.py
- e2e_ops_tests.py
- error_reproduction.py
- extra_opinfo.py
- ops_test.py
- ops_test_common.py
- ops_test_data.py
- README.md
- __init__.py
- attr_test.py
- gemmgelu.py
- gemmgelu_test.py
- if_test.py
- onnxfns1A_test.py
- onnxfns2_test.py
- onnxfns_test.py
- ort_custom_ops.py
- graph_view_test.py
- serde_roundtrip_test.py
- __init__.py
- attrref.py
- cast_like.py
- different_opset.py
- dropout.py
- eager_op.py
- eg1.py
- getitem.py
- graph_attr.py
- identity.py
- if_statement.py
- loops_break.py
- loops_while.py
- m1.py
- multi.py
- onnxfns1.py
- onnxfns1A.py
- onnxfns2.py
- opt_input.py
- opt_output.py
- renaming.py
- sequences.py
- signal_dft.py
- subfunction.py
- type_double.py
- test_models.py
- version_conversion_test.py
- __init__.py
- eager_mode_test.py
- eager_test.py
- external_tensor_test.py
- if_test.py
- loop_test.py
- onnx_types_test.py
- operator_test.py
- README.md
- model_zoo_test.py
- bench_model.py
- nsys_profile.py
- ort_rewrite.py
- profile_analysis.py
- README.md
- onnx2external.py
- onnx2script.py
- optimize.py
- .editorconfig
- .gitattributes
- .gitignore
- .lintrunner.toml
- CODE_OF_CONDUCT.md
- codecov.yml
- CONTRIBUTING.md
- LICENSE
- MANIFEST.in
- noxfile.py
- pyproject.toml
- README.md
- requirements-dev.txt
- ROADMAP.md
- SECURITY.md
- setup.py
- SUPPORT.md
- VERSION
# Installation Guide
1. Get the code
git clone https://github.com/microsoft/onnxscript
Downloads the entire project code from GitHub to your computer.
cd onnxscript
Moves into the project folder you just downloaded.
2. Official Install Script
Easy RecommendedPrerequisites
- Python 3 Python is required to use pip.
pip install --upgrade onnxscript
Installs the package published on PyPI directly โ no need to clone the source.
After installing, open a new terminal and run the program's version command (e.g. --version) to confirm it worked.
Pulled directly from this repo's README.
3. Python
EasyPrerequisites
pip install --upgrade onnxscript
Installs the package published on PyPI directly โ no need to clone the source.
pip install -r requirements-dev.txt
Installs the Python libraries listed in requirements.txt (or similar).
pip install -e .
Installs the Python libraries listed in requirements.txt (or similar).
If it runs without errors and prints output in the terminal, it worked.
Pulled directly from this repo's README.
// repository documentation
Was this content helpful?
(0 ratings)
