Documentation

This commit is contained in:
allegroai 2020-06-18 01:07:52 +03:00
parent 1475f0e98d
commit b0cb4db6a1

View File

@ -1,5 +1,5 @@
# TRAINS
## Auto-Magical Experiment Manager & Version Control for AI
# Allegro Trains
## Auto-Magical Experiment Manager, Version Control and ML-Ops for AI
## :confetti_ball: Now with Full ML/DL DevOps - See [TRAINS AGENT](https://github.com/allegroai/trains-agent) and [Services](https://github.com/allegroai/trains-server#trains-agent-services--)
## :station: [Documentation is here!](https://allegro.ai/docs) `wubba lubba dub dub` and a [Slack Channel](https://join.slack.com/t/allegroai-trains/shared_invite/enQtOTQyMTI1MzQxMzE4LTY5NTUxOTY1NmQ1MzQ5MjRhMGRhZmM4ODE5NTNjMTg2NTBlZGQzZGVkMWU3ZDg1MGE1MjQxNDEzMWU2NmVjZmY) :train2:
@ -14,12 +14,12 @@
### :point_right: Help improve Trains by filling our 2-min [user survey](https://allegro.ai/lp/trains-user-survey/)
TRAINS is our solution to a problem we share with countless other researchers and developers in the machine
Trains is our solution to a problem we share with countless other researchers and developers in the machine
learning/deep learning universe: Training production-grade deep learning models is a glorious but messy process.
TRAINS tracks and controls the process by associating code version control, research projects,
Trains tracks and controls the process by associating code version control, research projects,
performance metrics, and model provenance.
We designed TRAINS specifically to require effortless integration so that teams can preserve their existing methods
We designed Trains specifically to require effortless integration so that teams can preserve their existing methods
and practices. Use it on a daily basis to boost collaboration and visibility, or use it to automatically collect
your experimentation logs, outputs, and data to one centralized server.
@ -27,10 +27,10 @@ your experimentation logs, outputs, and data to one centralized server.
### :steam_locomotive: [Getting Started Tutorial](https://allegro.ai/blog/setting-up-allegro-ai-platform/) :rocket:
**You can try out TRAINS and [test your code](#integrate-trains), with no additional setup.**
**You can try out Trains and [test your code](#integrate-trains), with no additional setup.**
<a href="https://demoapp.trains.allegro.ai"><img src="https://github.com/allegroai/trains/blob/master/docs/webapp_screenshots.gif?raw=true" width="100%"></a>
## TRAINS Automatically Logs Everything
## Trains Automatically Logs Everything
**With only two lines of code, this is what you are getting:**
* Git repository, branch, commit id, entry point and local git diff
@ -50,19 +50,19 @@ your experimentation logs, outputs, and data to one centralized server.
* Seamless integration (including version control) with **Jupyter Notebook**
and [*PyCharm* remote debugging](https://github.com/allegroai/trains-pycharm-plugin)
**Additionally, log data explicitly using [TRAINS Explicit Logging](https://github.com/allegroai/trains/blob/master/docs/logger.md).**
**Additionally, log data explicitly using [Trains Explicit Logging](https://github.com/allegroai/trains/blob/master/docs/logger.md).**
## Using TRAINS <a name="using-trains"></a>
## Using Trains <a name="using-trains"></a>
TRAINS is a two part solution:
Trains is a two part solution:
1. TRAINS [python package](https://pypi.org/project/trains/) auto-magically connects with your code
1. Trains [python package](https://pypi.org/project/trains/) auto-magically connects with your code
**TRAINS requires only two lines of code for full integration.**
**Trains requires only two lines of code for full integration.**
To connect your code with TRAINS:
To connect your code with Trains:
- Install TRAINS <a name="integrate-trains"></a>
- Install Trains <a name="integrate-trains"></a>
pip install trains
<details>
@ -84,33 +84,33 @@ TRAINS is a two part solution:
* If project_name is not provided, the repository name will be used instead
* If task_name (experiment) is not provided, the current filename will be used instead
- Run your code. When TRAINS connects to the server, a link is printed. For example
- Run your code. When Trains connects to the server, a link is printed. For example
TRAINS Results page:
Trains Results page:
https://demoapp.trains.allegro.ai/projects/76e5e2d45e914f52880621fe64601e85/experiments/241f06ae0f5c4b27b8ce8b64890ce152/output/log
- Open the link and view your experiment parameters, model and tensorboard metrics
**See examples [here](https://github.com/allegroai/trains/tree/master/examples)**
2. [TRAINS-server](https://github.com/allegroai/trains-server) for logging, querying, control and UI ([Web-App](https://github.com/allegroai/trains-web))
2. [Trains Server](https://github.com/allegroai/trains-server) for logging, querying, control and UI ([Web-App](https://github.com/allegroai/trains-web))
**We already have a demo server up and running for you at [https://demoapp.trains.allegro.ai](https://demoapp.trains.allegro.ai).**
**You can try out TRAINS without the need to install your own *trains-server*, just add the two lines of code, and it will automatically connect to the TRAINS demo-server.**
**You can try out Trains without the need to install your own *trains-server*, just add the two lines of code, and it will automatically connect to the Trains demo-server.**
*Note that the demo server resets every 24 hours and all of the logged data is deleted.*
When you are ready to use your own TRAINS server, go ahead and [install *TRAINS-server*](https://github.com/allegroai/trains-server).
When you are ready to use your own Trains server, go ahead and [install *trains-server*](https://github.com/allegroai/trains-server).
<img src="https://github.com/allegroai/trains/blob/master/docs/system_diagram.png?raw=true" width="50%">
## Configuring Your Own TRAINS server <a name="configuration"></a>
## Configuring Your Own Trains server <a name="configuration"></a>
1. Install and run *TRAINS-server* (see [Installing the TRAINS Server](https://github.com/allegroai/trains-server))
1. Install and run *trains-server* (see [Installing the Trains Server](https://github.com/allegroai/trains-server))
2. Run the initial configuration wizard for your TRAINS installation and follow the instructions to setup TRAINS package
2. Run the initial configuration wizard for your Trains installation and follow the instructions to setup Trains package
(http://**_trains-server-ip_**:__port__ and user credentials)
trains-init
@ -122,18 +122,18 @@ Sample configuration file available [here](https://github.com/allegroai/trains/b
## Who We Are
TRAINS is supported by the same team behind *allegro.ai*,
Trains is supported by the same team behind *allegro.ai*,
where we build deep learning pipelines and infrastructure for enterprise companies.
We built TRAINS to track and control the glorious but messy process of training production-grade deep learning models.
We are committed to vigorously supporting and expanding the capabilities of TRAINS.
We built Trains to track and control the glorious but messy process of training production-grade deep learning models.
We are committed to vigorously supporting and expanding the capabilities of Trains.
## Why Are We Releasing TRAINS?
## Why Are We Releasing Trains?
We believe TRAINS is ground-breaking. We wish to establish new standards of experiment management in
We believe Trains is ground-breaking. We wish to establish new standards of experiment management in
deep-learning and ML. Only the greater community can help us do that.
We promise to always be backwardly compatible. If you start working with TRAINS today,
We promise to always be backwardly compatible. If you start working with Trains today,
even though this project is currently in the beta stage, your logs and data will always upgrade with you.
## License
@ -154,7 +154,7 @@ Additionally, you can always find us at *trains@allegro.ai*
## Contributing
See the TRAINS [Guidelines for Contributing](https://github.com/allegroai/trains/blob/master/docs/contributing.md).
See the Trains [Guidelines for Contributing](https://github.com/allegroai/trains/blob/master/docs/contributing.md).
_May the force (and the goddess of learning rates) be with you!_