{"id":13832377,"url":"https://github.com/guildai/_guild-legacy","last_synced_at":"2025-03-10T19:22:45.176Z","repository":{"id":110398053,"uuid":"67781941","full_name":"guildai/_guild-legacy","owner":"guildai","description":"Legacy code for Guild's original implementation in Erlang","archived":false,"fork":false,"pushed_at":"2017-09-01T12:03:59.000Z","size":9263,"stargazers_count":53,"open_issues_count":4,"forks_count":5,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-01-17T15:15:32.040Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/guildai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-09-09T08:39:44.000Z","updated_at":"2022-11-09T04:16:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"48eddf4c-5147-4b25-8fb0-d026f1e12464","html_url":"https://github.com/guildai/_guild-legacy","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guildai%2F_guild-legacy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guildai%2F_guild-legacy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guildai%2F_guild-legacy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guildai%2F_guild-legacy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/guildai","download_url":"https://codeload.github.com/guildai/_guild-legacy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242910239,"owners_count":20205254,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T10:02:01.191Z","updated_at":"2025-03-10T19:22:45.155Z","avatar_url":"https://github.com/guildai.png","language":"HTML","funding_links":[],"categories":["HTML"],"sub_categories":[],"readme":"# Guild AI\n\nGuild AI supplements\nyour [TensorFlow\u0026trade;](https://www.tensorflow.org/) operations by\ncollecting a wide range of information about your model's performance,\nincluding GPU usage, CPU usage, memory consumption and disk IO. You\ncan view all of this information along with your TensorFlow summary\noutput in realtime using Guild AI view.\n\nGuild is used to measure model performance when running on specific\nsystems. The data you collect can be used to optimize your model for\nspecific applications. For example, you can collect metrics such as:\n\n- GPU memory usage for batch training, single inference, batch inference\n- Inference latency and throughput\n- Impact of hyper parameter tuning on model accuracy and training time\n\nWhen your model is trained you can run it using\nGuild's [Google Cloud Machine Learning](https://cloud.google.com/ml/)\ncompatible inference server. This can be used as a local dev/test\nenvironment in preparation for cloud deployment, or be run in\nproduction within your own environment.\n\n## Project status\n\nGuild is in a pre-release \"alpha\" state. All command interfaces,\nprogramming interfaces, and data structures may be changed without\nprior notice. We'll do our best to communicate potentially disruptive\nchanges.\n\n## Build dependencies\n\nGuild requires the following software for compilation:\n\n- make (available via Linux system package or Command Line Tools via Xcode on OSX)\n- [Erlang](http://www.erlang.org/) (18 or later)\n\n## Runtime dependencies\n\nGuild requires the following software for runtime (i.e. performing\nmodel related operations prepare, train, and evaluate).\n\n- [Python](https://www.python.org/) (2.7 recommended)\n- [TensorFlow](https://www.tensorflow.org/versions/r0.11/get_started/os_setup.html#download-and-setup)\n- [NVIDIA System Management Interface](https://developer.nvidia.com/cuda-downloads) (optional, for GPU stats)\n- [psutil](https://github.com/giampaolo/psutil)\n\n## Compiling Guild\n\nBefore building Guild, confirm that you have the required build\ndependencies installed (see above).\n\nClone the Guild repository:\n\n    $ git clone git@github.com:guildai/guild.git\n\nChange to the Guild directory and run make:\n\n    $ cd guild\n    $ make\n\nPlease report any compile errors to\nthe\n[Guild issues list on GitHub](https://github.com/guildai/guild/issues).\n\nCreate a symlink named `guild` to `guild/scripts/guild-dev` that's in\nyour `PATH` environment. The most convenient location would be\n`/usr/local/bin` (requires root access):\n\n    $ sudo ln -s GUILD_REPO/scripts/guild-dev /usr/local/bin/guild\n\nwhere `GUILD_REPO` is the local Guild repo you cloned above.\n\nAlternatively, create a symlink in a directory in your home directory\n(e.g. `~/Bin`) and include that directory in your `PATH` environment\nvariable.\n\n    $ sudo ln -s GUILD_REPO/scripts/guild-dev ~/Bin/guild\n\nFuture releases of Guild will provide precompiled packages for Linux\nand OSX to simplify the process of installing Guild.\n\nVerify that Guild is available by running:\n\n    $ guild --help\n\nIf you get an error message, verify that you've completed the steps\nabove. If you can't resolve the issue,\nplease [open an issue](https://github.com/guildai/guild/issues).\n\n## Using Guild\n\nThe easiest way to start using Guild is to run some of the\nexamples. Clone the example repository:\n\n    $ git clone git@github.com:guildai/guild-examples.git\n\nChange to the MNIST example and train the intro model. This model\ndownloads MNIST images and so requires an initial `prepare` operation\nbefore any of the models can be trained.\n\n    $ cd guild-examples/mnist\n    $ guild prepare\n\nThis operation will take some time to download the MNIST images. When\nit finished, train the intro model:\n\n    $ guild train intro\n\nThe intro example corresponds to\nTensorFlow's\n[MNIST for ML Beginners](https://www.tensorflow.org/versions/r0.11/tutorials/mnist/beginners/index.html). It's\na very simple model and should train in a few seconds even on a CPU.\n\nNext, run Guild View from the same directory:\n\n    $ guild view\n\nOpen [http://localhost:6333](http://localhost:6333) to view the\ntraining result. You should see the results of the intro training,\nincluding the model validation accuracy, training accuracy, steps, and\ntime. The view also includes time series charts that plot training\nloss, accuracy, and CPU/GPU information during the operation. Note\nthe training may not have run long enough in this simple case to\ncollect system stats.\n\nNext, train the expert version of MNIST. You can keep running View\nduring any Guild operation -- in that case, open another terminal,\nchange to `guild-examples/mnist` and run:\n\n    $ guild train expert\n\nThis model correspond to\nTensorFlow's\n[Deep MNIST for Experts](https://www.tensorflow.org/versions/r0.11/tutorials/mnist/pros/index.html) example. As\nit trains a multi-layer convolutional neural network it takes longer\nto train.\n\nYou can view the training progress in real time in Guild View --\nselect the latest training operation from the dropdown selector in the\ntop left of the View page.\n\nYou can compare the performance of multiple runs in Guild View by\nclicking the *Compare* tab. When the expert model finishes training,\nyou can compare its validation accuracy to the intro model -- it's\nsignificantly more accurate, at the cost of a longer and more\ncomputationally expensive training run.\n\nYou can train either model using more epochs (rounds of training using\nthe entire MNIST training set) -- this will improve validation\naccuracy up to a point:\n\n    $ guild train expert -F epochs=5\n\nThe `-F` sets a model *flag* that is used by the operation. In this\ncase we're asking the model to train over 5 epochs. You should see a\nslight improvement in validation accuracy -- again, at the cost of\nmore training.\n\nFinally, evaluate the model performance using the MNIST test data:\n\n    $ guild evaluate --latest-run\n\nThis will evaluate the model trained on the latest and print the test\naccuracy.\n\nFor background on why *test* is different from *validation*,\nsee\n[this section](https://www.tensorflow.org/versions/r0.9/how_tos/image_retraining/index.html#training-validation-and-testing-sets) in\nTensorFlow's documentation on network retraining.\n\n## Next Steps\n\nDocumentation for Guild is in process but not yet available. While\nlacking in detail, you may benefit from:\n\n- Reading Guild examples source code\n- Using `guild --help` and `guild COMMAND --help`\n- Guild-enable an existing project by running `guild init` and editing\n  the generated `Guild` project file\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguildai%2F_guild-legacy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fguildai%2F_guild-legacy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguildai%2F_guild-legacy/lists"}