-
Notifications
You must be signed in to change notification settings - Fork 63
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
Turn this into a Ruby gem: Simple and reliable install on Ubuntu and OSX + add to Rubygems.org #49
Comments
@Arafatk so can you explain what are the issues of why it cant currently be a gem? you mentioned docker as an issue? this definitely needs to be gemified to get more people easily using it. Does the code depend on docker being around? |
@jtoy It can be easily converted into a gem, we can just do This situation is pretty similar with Thus the easiest way for someone who doesn't want to go through the entire build process is to use Docker, which has everything pre-built. The ideal scenario is if someone build an installer for each OS, which automates the entire build process on the user's system. |
@Arafatk Using docker to play around with ruby-tensorflow is simple, just install docker on your system, and just do |
Docker is a bad decision for a real project on tensorflow. It is better to take an example from nokogiri, and write a normal manual installation of additional components / libraries. |
@riley-usagi I agree Docker is a bad decision for getting a gem setup. On the other side, almost every time I install nokogiri, I always run into some path/libxml issue. we should probably look into how the python tensorflow package is structured. For that, all I do is "pip install tensorflow". The ruby version must be just as simple. |
@jtoy and @riley-usagi I agree that this should be made into a proper gem and that it should install without much user intervention on main OSs, e.g. latest two versions of Ubuntu and latest two OSX or something along those lines. This was also my reason, #31 (comment), to why I wanted to do a Travis-CI build instead of relying on docker. However, a working CircleCI is better than a broken TravisCI 😄! A solid install script that can be used both for the end-user's (those that'll use this gem) OS could probably be reused for CI (Travis or Circle) and would be my preferred. During my failed efforts to setup TravisCI, #31 ("enjoying" many evenings on this), I found a bunch of resources for building Tensorflow on various OSes, such as Tensorflow's own: https://github.com/tensorflow/tensorflow/tree/master/tensorflow/tools/ci_build. However, I think an install script would be best and fastest achieved by someone with experience in this area – it's not really super AI/ML-related after all :) E.g. if we could agree on specs for an install script (I'm happy to draft these) we can add this as an issue and add it to to the 0.1.0 milestone for someone to pick up. |
@chrhansen Could you please clarify your points about using Travis vs. Docker? Without Docker wouldn't it mean rebuilding Google's tensorflow code every time we change ruby-tensorflow? |
@nethsix and @chrhansen Thanks for the valuable input and all for the effort you have done for making the testing possible. This problem may seem easy at first but it was really tough. I had even put a bounty on Stackoverflow question asked by Christian but got no good response. Despite all the difficulties, its good to know that circle ci is working fine. I think it would be nice to have easily installable gem and adding this in our milestone would be good. |
@nethsix For me it's not really about Travis vs. Docker, but more about making a gem that installs easily and reliably – with least amount of dependencies. SotThat would be why I'd prefer not requiring users installing and running Docker before they can run Tensorflow.rb, but if the benefits (anything else than avoiding building the shared lib?) are overwhelming, for sure! I could very well be wrong (happens a lot :-), but I'm quite sure |
@Arafatk if you're working on the install script (we discussed that by email a few days ago), assign this issue to you so we don't risk double work and any helpers can assist you. Here are my suggestions for what is needed to complete this issue:
|
I've been swamped. I plan to work on this mid September. -- Sent from my mobile
|
I think it's worth uploading to RubyGems, if only for discoverability. For many Rubyists looking to try TensorFlow (myself included), their first step will be to go to rubygems.org and type Currently, it's very easy to overlook this gem. |
there are some issues with this, will list them out later
The text was updated successfully, but these errors were encountered: