-
Notifications
You must be signed in to change notification settings - Fork 82
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
Update installation docs for Prophet #2713
Conversation
Codecov Report
@@ Coverage Diff @@
## main #2713 +/- ##
=======================================
+ Coverage 99.2% 99.9% +0.8%
=======================================
Files 301 301
Lines 27827 27827
=======================================
+ Hits 27581 27778 +197
+ Misses 246 49 -197
Continue to review full report at Codecov.
|
README.md
Outdated
@@ -30,6 +30,23 @@ Prophet is currently only supported via pip installation in EvalML. | |||
```shell | |||
pip install evalml[prophet] | |||
``` | |||
Another option for installing Prophet with CmdStan as a backend is to use `make installdeps-prophet`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You might want to think about moving this instructions to Install page on the docs. This currently will make the README.md much longer. You could link from the README.md to the Install documentation page.
We put graphviz install instructions in our Install docs:
https://featuretools.alteryx.com/en/latest/install.html#installing-graphviz
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@gsheni Thanks for the recommendation!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I also agree with this recommendation @ParthivNaresh !
@@ -70,6 +70,14 @@ installdeps: | |||
pip install --upgrade pip -q | |||
pip install -e . -q | |||
|
|||
SITE_PACKAGES_DIR=$$(python -c 'import site; print(site.getsitepackages()[0])') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When I first tried this out in a fresh environment, I got the infamous no such file ...prophet_model.bin
error when I tried running the unit tests.
I was really confused about why this happened, but when I looked at the pip install, I saw:
Collecting prophet==1.0.1
Using cached prophet-1.0.1-py3-none-any.whl
This stood out to me because as we all know by now, prophet does not publish any wheels! So I was confused why we weren't building from source.
Then I read the pip documentation, and I learned that locally built wheels are added to the cache.
So my guess as to what went wrong for me is that I had installed prophet beforehand without a cmdstan backend and then subsequent installs with a cmdstan backend were using the cached version so it was not properly setting up cmdstan.
So in short, I think we need to do pip install --no-cache-dir prophet==1.0.1
instead. That properly set up the cmdstan backend and I was able to get the unit tests to pass.
Apparently, --no-cache-dir
is discouraged, but the workaround in the pip docs did not work for me.
README.md
Outdated
Another option for installing Prophet with CmdStan as a backend is to use `make installdeps-prophet`. | ||
This command will do the following: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As a beginner user, I'm a bit confused on how to use this command. This assumes that a user actually has the evalml repo; that is, I can't just create a new virtual env, pip install evalml, and then run this. I'd need to have cloned the evalml repo and run this while in the evalml repo, correct?
If that's true, we should make that clear! (though also makes me question how often people would take this route)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seemed clear and it worked for me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @ParthivNaresh !
Fixes #2688