chaotic-aur / packages

The packages Mason, what do they mean? (Package requests and bug reports here) 📑
https://aur.chaotic.cx
327 stars 20 forks source link

[Request] python-onnxruntime #2876

Closed Jcuhfehl closed 4 months ago

Jcuhfehl commented 11 months ago

Package:

https://aur.archlinux.org/packages/python-onnxruntime

Purpose:

Used as a runtime some machine learning/llm stuff

Benefits:

No response

Building:

No response

Copyright:

MIT

Expected Interest:

Some

Already available?

No

Unique request?

Yes

Banned package?

No

More information:

No response

FabioLolix commented 11 months ago

It have a couple of depends on AUR (nsync, python-coloredlogs) and some optdepends too (python-py3nvml, python-onnx, python-transformers)

xiota commented 11 months ago

some machine learning/llm stuff

What program do you need this for?

Technetium1 commented 11 months ago

@xiota Could be used for training, inference, and even quantization acceleration, as seen here in 2.2. Definitely nice to provide Python bindings. I am curious to know the final size.

xiota commented 11 months ago

@Technetium1 This falls under dependency without any dependents.

There are a lot of python modules related to AI. Don't really want to add all of them. Someone asked that all related packages be added to an AI-related modules' optdeps. Don't remember how many hundreds of packages that would have been.

AI programmers switch packages pretty rapidly. If no program is actually using this, how does anyone know that it isn't just the flavor of the week that everyone will soon abandon? (Naming one substantive program is a pretty low barrier.)

Technetium1 commented 11 months ago

@xiota It's used independently or alongside other frameworks! It's a large project that's kept momentum for ~5 years. Check out https://onnxruntime.ai to see some of the backing forces

Even if this was just a dependency, it's one that an exception can be made for on the grounds that it's difficult to build (pinned comment). Some acceleration is included in the Pypi release, but for example, some CUDA features are not supported unless it's built this way.

Unless this ends up proving to be a HUGE burden, we should try to make it available

xiota commented 11 months ago

I don't question that someone somewhere finds it useful. But if it's not worth the effort for OP to explain its use better than a generic one-liner, it's not worth the effort to try to build. The more "difficult to build" a package is, the better I expect the explanation to be.

The request template clearly asks that AUR dependencies be listed, and OP didn't do that either. There are five first-level AUR depends and three first-level optdeps. While the required dependencies don't appear to have recursive dependencies, the optdeps do, and the nature of AI modules is for a lot of important functionality to be in the optdeps.

Technetium1 commented 4 months ago
extra/python-onnxruntime 1.16.3-10
    Cross-platform, high performance scoring engine for ML models
extra/python-onnxruntime-opt 1.16.3-10
    Cross-platform, high performance scoring engine for ML models (with AVX2 CPU optimizations)
extra/python-onnxruntime-opt-rocm 1.16.3-10
    Cross-platform, high performance scoring engine for ML models (with ROCm and AVX2 CPU
    optimizations)
extra/python-onnxruntime-rocm 1.16.3-10
    Cross-platform, high performance scoring engine for ML models (with ROCm)