Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 37 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,43 @@

We're always looking for your help to improve the product (bug fixes, new features, documentation, etc).

## Repository Organization

Repository is organized by "model's name" as root folder, with each folder containing recipes specific to it.
Each sub-folder within the root folder of the model might be organized by whatever criteria (based on devices, ExecutionProvider, maintainer, or something entirely different) best suits the recipes maintainer.

Each folder (and subsequent sub-folders), however, **are required to have a file named `info.yml`** that lists details about what that specific folder contains. This information file is not strictly structured expect that it be legal yaml file and contain a few required fields. An automation job scans these information file to collect and populate a table (viewable on repository's home page) for ease of navigation (and visibility) for users.

## Core requirements for `info.yml`

Each `info.yml` is unique to the folder it contains and, at the minimum, should contain the following information:

NOTE: All information is case-sensitive.

* arch [str]: Architecture of the model
* recipes [Recipe[]]: A list of recipes (file names) in the parent folder. For each entry,
* name [str]: Name of the file
* eps: [str | str[]]: One or list of supported EPs
* devices: [str | str[]]: One or list of supported devices

Beyond the required fields, the file can include any information relevant to the recipes maintainer.
Here's an example of `info.yml` file for a bert model.
```yaml
arch: bert
recipes:
- name: qdq.json
devices: cpu
eps: CPUExecutionProvider

- name: trtrtx.json
devices: gpu
eps: NvTensorRTRTXExecutionProvider

- name: vitis_ai.json
devices: cpu
eps: VitisAIExecutionProvider
```

## Coding conventions and standards

### Testing and Code Coverage
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<img alt="olive" src="images/olive-black-text.png" height="100" style="max-width: 100%;">
</picture>

## Olive Recipes For AI Model Optimization Toolkit Using ONNX Runtime
## Olive Recipes For AI Model Optimization Toolkit
</div>

This repository compliments [Olive](https://github.com/microsoft/Olive), the AI model optimization toolkit, and includes recipes demonstrating its extensive features and use cases. Users of Olive can use these recipes as a reference to either optimize publicly available AI models or to optimize their own proprietary models.
Expand Down
Binary file modified images/olive-black-text.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified images/olive-white-text.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading