Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extend ONNX Frontend with com.microsoft.Range operator #17575

Open
p-wysocki opened this issue May 17, 2023 · 25 comments · May be fixed by #28202
Open

Extend ONNX Frontend with com.microsoft.Range operator #17575

p-wysocki opened this issue May 17, 2023 · 25 comments · May be fixed by #28202
Assignees
Labels
good first issue Good for newcomers no_stale Do not mark as stale ONNX Related to support for ONNX standard.

Comments

@p-wysocki
Copy link
Contributor

p-wysocki commented May 17, 2023

Context

Neural networks are graphs consisting of nodes called operators. Each operator corresponds to a mathematical function, usually described in framework's documentation or an AI standard, such as ONNX.

OpenVINO ONNX Frontend is a component responsible for working with ONNX graphs and requires implementation of different ONNX operators in order to use ONNX models.

This task requires extending OpenVINO ONNX Frontend with com.microsoft.Range operator.

Necessary help will be provided by ONNX Fronted team.

Operator specification

Operator details can be found in official ONNX Runtime docs.

To do list

  1. Create .hpp and .cpp files for com.microsoft.Range here
  2. Prepare an implementation of this operator in form of a function. It should be placed in opset 1 namespace. The implementation should be the same as standard ONNX Range operator
  3. Register the function in ops_bridge.cpp while keeping alphabetical order
  4. Create test model(s) in ONNX models directory. OpenVINO test infrastructure then converts prototxt files to ONNX models - you will use those models later in tests
  5. Add tests covering all use cases here

More details in adding operators to ONNX Frontend guide

Resources

Example PRs

Contact points

@tomdol
@mbencer
@p-wysocki
Don't hesitate to reach out, we're here to help!

@p-wysocki p-wysocki added the good first issue Good for newcomers label May 17, 2023
@p-wysocki p-wysocki added the no_stale Do not mark as stale label May 17, 2023
@tomahu111
Copy link

Hi, I wanted to do some work on OpenVino as OS contributor, could you assign this issue to me?

@mlukasze
Copy link
Contributor

mlukasze commented Jun 7, 2023

Hi, I wanted to do some work on OpenVino as OS contributor, could you assign this issue to me?

and you are, let us know if you need any guidance :)

@p-wysocki
Copy link
Contributor Author

I'm returning the task to being open due to current assignee's inactivity.

@bagrorg
Copy link

bagrorg commented Sep 15, 2023

Hello!
Can I take this task if it is still available?
@p-wysocki

@p-wysocki
Copy link
Contributor Author

Hello @bagrorg, thanks for taking a look! I assigned you.

@p-wysocki
Copy link
Contributor Author

@bagrorg could you please confirm whether you're still working on this issue?

@bagrorg
Copy link

bagrorg commented Oct 2, 2023

@p-wysocki Hi!

Yes, I've done it except tests part. I had to distract myself, I didn't have time to come back yet, hope will complete it this week. Sorry =(

@p-wysocki
Copy link
Contributor Author

No worries, I'm just updating the task statuses in the main good first issue list. :)

@p-wysocki p-wysocki moved this to Contrubutors needed in Good first issues Oct 3, 2023
@p-wysocki p-wysocki moved this from Contrubutors needed to Assigned in Good first issues Oct 3, 2023
@mlukasze mlukasze added the ONNX Related to support for ONNX standard. label Oct 26, 2023
@p-wysocki
Copy link
Contributor Author

Hi @bagrorg, are you still working on this issue or can I return it to be picked up by other contributors?

@p-wysocki p-wysocki moved this from Assigned to Contributors Needed in Good first issues Nov 24, 2023
@vbayeva
Copy link

vbayeva commented Dec 11, 2023

.take

Copy link
Contributor

Thank you for looking into this issue! Please let us know if you have any questions or require any help.

@p-wysocki p-wysocki moved this from Contributors Needed to Assigned in Good first issues Dec 11, 2023
@p-wysocki
Copy link
Contributor Author

Hello @vbayeva, thanks for taking a look! Please let us know if you have any questions or need any help. :)

You can use our WIP roadmap for contributors at #21322, if you do - please let us know if it helped and give us any feedback on how it could be improved. :)

@p-wysocki
Copy link
Contributor Author

I am happy to announce that we have created a channel dedicated to Good First Issues support on our Intel DevHub Discord server! Join it to receive support, engage in discussions, ask questions and talk to OpenVINO developers.

@mlukasze mlukasze moved this from Assigned to Contributors Needed in Good first issues Feb 27, 2024
@adityashibu
Copy link

Hi I was interested in doing this task, although I'm pretty new to this, would it be possible to brief me on what to do? and I could proceed from there

@p-wysocki
Copy link
Contributor Author

Hi @adityashibu! I assigned you. If I were you I would start with:

  1. Go through the technical guide linked in the contribution guidelines in Resources
  2. Find a similar PR you like which has been already merged into OpenVINO as a reference - you can just search for phrase "Extend ONNX Frontend" in the OpenVINO issues to see a completed one.
  3. Start writing code by following the steps in the To Do list from issue description.
  4. Join Intel DevHub Discord server (link is in the CONTRIBUTING.md) and ask questions, or you can also ask them here.

@p-wysocki p-wysocki moved this from Contributors Needed to Assigned in Good first issues Feb 28, 2024
@adityashibu
Copy link

Hi @adityashibu! I assigned you. If I were you I would start with:

  1. Go through the technical guide linked in the contribution guidelines in Resources
  2. Find a similar PR you like which has been already merged into OpenVINO as a reference - you can just search for phrase "Extend ONNX Frontend" in the OpenVINO issues to see a completed one.
  3. Start writing code by following the steps in the To Do list from issue description.
  4. Join Intel DevHub Discord server (link is in the CONTRIBUTING.md) and ask questions, or you can also ask them here.

Alright, I'll start working on it then. Thank you so much for the support

@adityashibu
Copy link

Hi, I've created files called range.cpp and range.hpp under "src/frontends/onnx/frontend/src/op/com.microsoft", is that the first task?

@p-wysocki
Copy link
Contributor Author

Hi, it's first part of the task :) Now you need to go to point 2:

Prepare an implementation of this operator in form of a function. It should be placed in opset 1 namespace. The implementation should be the same as standard ONNX Range operator

I believe you can more or less copy the existing implementation from the second link, but I'm not certain. You can find more information about ONNX Range under https://onnx.ai/onnx/operators/onnx__Range.html.

@adityashibu
Copy link

Alright gotcha, working on it rn

@adityashibu
Copy link

@p-wysocki I have created a PR with the requested changes, can you have a look at it and check if there's anything else that needs to be improved upon?

@mlukasze
Copy link
Contributor

mlukasze commented Mar 6, 2024

could you please link PR to ticket or ticket to PR?

@adityashibu
Copy link

could you please link PR to ticket or ticket to PR?

I linked it, please check

@mlukasze mlukasze moved this from Assigned to In Review in Good first issues Mar 7, 2024
@mlukasze mlukasze moved this from In Review to Contributors Needed in Good first issues Jun 18, 2024
@11happy
Copy link
Contributor

11happy commented Dec 4, 2024

Hello @mlukasze , @p-wysocki , is this issue still open? I am interested to work on it.

@mlukasze
Copy link
Contributor

mlukasze commented Dec 5, 2024

hey @11happy!!
yes, the task is yours now :)
have fun!

@11happy
Copy link
Contributor

11happy commented Dec 25, 2024

@mlukasze I have linked the fresh PR.

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