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

[Feature]C#/.NET Bindings and Nuget package? #74

Closed
mfagerlund opened this issue Nov 11, 2016 · 10 comments
Closed

[Feature]C#/.NET Bindings and Nuget package? #74

mfagerlund opened this issue Nov 11, 2016 · 10 comments

Comments

@mfagerlund
Copy link

Any plans to package this for C# devs, preferably through a nuget package?

@guolinke
Copy link
Collaborator

Sure, please follow the update of this thread.

@mfagerlund
Copy link
Author

Will do!

@chivee chivee changed the title C#/.NET Bindings and Nuget package? [Feature]C#/.NET Bindings and Nuget package? Nov 12, 2016
@h-hasanov
Copy link

When can we expect the C# Nuget package to be finished?

@chivee
Copy link
Collaborator

chivee commented Jan 13, 2017

@ycdoit could you help on creating the PR of Nuget package.

@guolinke
Copy link
Collaborator

@fstandhartinger
Copy link

fstandhartinger commented Feb 28, 2018

Thanks for providing the nuget package and the excellent work on LightGBM in general!

But IMHO a nuget package that provides an .exe and an unmanaged .dll is not at all what you would wish for as an .NET developer.
You'll hardly find any C# developer that can make use of this nuget package in real life. Creating a .NET wrapper for the natively compiled .dll requires huge efforts and skills rarely found in the .NET development community. Plus knowledge about the original LightGBM sourcecode that most likely won't be found outside the LightGBM team itself.

Anyhow as we don't have anything else at the moment, could you please tell me if the executable delivered in the nuget package is ready to use GPU acceleration?
If yes I would probably consider writing a simple (and probably incomplete) C# wrapper library that calls the executable as a seperate process and exchanges data with it in a file based manner.
Neighter elegant nor satisfiying really, but at least an approach thats managable regarding effort and complexity.

It feels like Microsoft leaves its .NET developer community behind when it comes to machine learning.

@mfagerlund
Copy link
Author

mfagerlund commented Feb 28, 2018 via email

@fstandhartinger
Copy link

I experimented a bit with creating an executable based wrapper.
I also found out that the .exe in the nuget package is not providing GPU support.
Is there any chance to get a nuget package that contains a GPU ready compiled .exe?

@fstandhartinger
Copy link

fstandhartinger commented Mar 4, 2018

Hi there,

I have created a .NET wrapper for LightGBM (including GPU support) based on the executable version of LightGBM.

If interrested, check it out: LightGbmDotNet.

But of course a proper .NET wrapper for LightGBM, maintained by the original team would be even better.

Best regards

Florian

@guolinke
Copy link
Collaborator

refer to dotnet/machinelearning#392
LightGBM will be in ML.Net soon.

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

No branches or pull requests

5 participants