{ "info": { "author": "Openfoodfacts Team", "author_email": "", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU Affero General Public License v3", "Operating System :: OS Independent", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "# Robotoff\n\n[![Build Status](https://travis-ci.org/openfoodfacts/robotoff.svg?branch=master)](https://travis-ci.org/openfoodfacts/robotoff)\n\nRobotoff is a service managing potential Open Food Facts updates (also known as _insights_).\nThese insights include a growing set of facts, including:\n- the product category, weight, brand, packager codes and expiration date\n- some of its labels\n- abusive pictures (selfies)\n- rotated pictures\n- ingredient spellchecking\n\nRobotoff provides an API to:\n\n- import a batch of insights in JSONL format\n- Fetch insights\n- Annotate an insight (accept or reject) and send the update to Openfoodfacts if the insight was accepted\n\nOnce generated, the insights can be applied automatically, or after a manual validation if needs be.\nA scheduler takes care of regularly marking insights for automatic annotation and for sending the update to Openfoodfacts.\n\nThe [API documentation](https://github.com/openfoodfacts/robotoff/blob/master/doc/api.md) describes the API endpoints.\n\nFor a quickstart of Robotoff as a library, go to the [Quickstart](https://github.com/openfoodfacts/robotoff/blob/master/doc/quickstart.md).\n\n## Installation\n\nRobotoff is made of an API web server, a scheduler, a pool of asynchronous workers and a an Elasticsearch server.\nAll these services are available as docker images. A `docker-compose.yml` file is used for service orchestration.\n\nTo start all services, simply run:\n\n`$ docker-compose up -d`\n\n\n## Licence\n\nRobotoff is licenced under the AGPLv3.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/openfoodfacts/robotoff", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "robotoff", "package_url": "https://pypi.org/project/robotoff/", "platform": "", "project_url": "https://pypi.org/project/robotoff/", "project_urls": { "Homepage": "https://github.com/openfoodfacts/robotoff" }, "release_url": "https://pypi.org/project/robotoff/1.0.11/", "requires_dist": [ "requests (<3.0.0,>=2.13.0)", "peewee (==3.10.0)", "psycopg2-binary (<2.9,>=2.8)", "elasticsearch (==6.3.1)", "Click (==7.0)", "sentry-sdk (==0.7.6)", "Pillow (>=5.0.0)", "numpy (>=1.9.1)", "protobuf (>=3.5.1)", "Pint (==0.9)", "dataclasses (>=0.6) ; python_version < \"3.7\"" ], "requires_python": "", "summary": "Real-time and batch prediction service for Openfoodfacts", "version": "1.0.11" }, "last_serial": 5873162, "releases": { "1.0.10": [ { "comment_text": "", "digests": { "md5": "a88ee15f83b8b0c95bac3c9bf0e2e22c", "sha256": "62e64cb2581815ca308efd01bf1cc6aaaa810cbca6d329bc54998d69e775b583" }, "downloads": -1, "filename": "robotoff-1.0.10-py3-none-any.whl", "has_sig": false, "md5_digest": "a88ee15f83b8b0c95bac3c9bf0e2e22c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 108591, "upload_time": "2019-09-18T16:20:22", "url": "https://files.pythonhosted.org/packages/87/4f/6c413a55a1fda920c6e2af4c4b4c0778487be476195a6a87eabdd34ad84a/robotoff-1.0.10-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "57d98d3fe3472d54d474ea41b3bc6f03", "sha256": "a863b613d34758f36f98512c71fd326d8ba5e0f8b32d22afc2d4607a299f00cc" }, "downloads": -1, "filename": "robotoff-1.0.10.tar.gz", "has_sig": false, "md5_digest": "57d98d3fe3472d54d474ea41b3bc6f03", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1943146, "upload_time": "2019-09-18T16:20:24", "url": "https://files.pythonhosted.org/packages/72/94/3b8aad9617b32e8a6c5f3cc510fc911e83a0f40c1a6052928842836bd99d/robotoff-1.0.10.tar.gz" } ], "1.0.11": [ { "comment_text": "", "digests": { "md5": "43e99eca9cab5354cf2872d46b9f5b66", "sha256": "2b32c67f4f9c6731a32b2b21db92586f206a9b905edce85bc352d7a1f105b19d" }, "downloads": -1, "filename": "robotoff-1.0.11-py3-none-any.whl", "has_sig": false, "md5_digest": "43e99eca9cab5354cf2872d46b9f5b66", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 108579, "upload_time": "2019-09-23T11:56:48", "url": "https://files.pythonhosted.org/packages/ab/f0/fdf1a59e51dc74f569cf3c3730a48bee4fc3a9f3dd2aea341f84e0a87f24/robotoff-1.0.11-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "053bf76234ae5ab24c046e0c68e593b1", "sha256": "bc472324c174369aff0e3e4bafb06c3c102e86bf27c531033aaeb10649cd5d32" }, "downloads": -1, "filename": "robotoff-1.0.11.tar.gz", "has_sig": false, "md5_digest": "053bf76234ae5ab24c046e0c68e593b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1943259, "upload_time": "2019-09-23T11:56:52", "url": "https://files.pythonhosted.org/packages/6b/3d/82cf8734db4b6c06bb0b11ce341778a04149a3fc6b2dddc3b2056f71f171/robotoff-1.0.11.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "d2bb31e0d0cc8d70f4c00cdcea1618f0", "sha256": "7c803c1463a6ad576015fe0f70b5df0034d0f3cc3c794600ac26846626961dd8" }, "downloads": -1, "filename": "robotoff-1.0.6-py3-none-any.whl", "has_sig": false, "md5_digest": "d2bb31e0d0cc8d70f4c00cdcea1618f0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 107324, "upload_time": "2019-09-11T12:31:53", "url": "https://files.pythonhosted.org/packages/c0/8f/540a294eac2ddc19c3790fb11ca7143c67e56477dd9a4f04a353a739ecd0/robotoff-1.0.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a1dcd0f614beb13ef16a17f74175ad87", "sha256": "47e500c8a266db14d39e5de3962afa0f0d2ca7c2ad6810d80a42d10b5ffdbb69" }, "downloads": -1, "filename": "robotoff-1.0.6.tar.gz", "has_sig": false, "md5_digest": "a1dcd0f614beb13ef16a17f74175ad87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68223, "upload_time": "2019-09-11T12:31:57", "url": "https://files.pythonhosted.org/packages/9b/79/44d5c0a40828918af0cb7cf2edf22f09a400be6ebd3b76c86797958a65d0/robotoff-1.0.6.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "c3d2a45926ee5ab626e1c449be70705e", "sha256": "0d09b666d7c23d898d07e60c05dea81dd276688b15dc393edd9479c113c7ff4c" }, "downloads": -1, "filename": "robotoff-1.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "c3d2a45926ee5ab626e1c449be70705e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 107776, "upload_time": "2019-09-11T15:48:17", "url": "https://files.pythonhosted.org/packages/69/0c/a74e3e4647ac73b8907feb58d6e6a6eeba6a401f95bc373337788912bca8/robotoff-1.0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6f8830d5528eac0a51313d439bc3c00b", "sha256": "60b755935263a3a229d22f5da0f34883029cb693c2cbe3ff6db9aeb2806176e4" }, "downloads": -1, "filename": "robotoff-1.0.7.tar.gz", "has_sig": false, "md5_digest": "6f8830d5528eac0a51313d439bc3c00b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68792, "upload_time": "2019-09-11T15:48:19", "url": "https://files.pythonhosted.org/packages/23/33/54a6596e76b32705e5b123fcac729ba2f3bcf6cada21c2cab8b11c6cbfd5/robotoff-1.0.7.tar.gz" } ], "1.0.8": [ { "comment_text": "", "digests": { "md5": "7f0a143e559cccf8fb99965850b59c8b", "sha256": "fb2e3c15bb7387eef24ba1cf9cd384fb2d5e19dbbdf9ae12afeb045cfbfb844e" }, "downloads": -1, "filename": "robotoff-1.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "7f0a143e559cccf8fb99965850b59c8b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 107908, "upload_time": "2019-09-12T09:11:41", "url": "https://files.pythonhosted.org/packages/69/0a/7c7f1aa263708c15cbcec6c40cef5ca4f5d37570c4737d1a3c64455759e0/robotoff-1.0.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "06a06573745408199effde6e5663097e", "sha256": "2f35c5f00de0643ea0f3094ab408b8e6143e22924c945d23720d7f4fed292cff" }, "downloads": -1, "filename": "robotoff-1.0.8.tar.gz", "has_sig": false, "md5_digest": "06a06573745408199effde6e5663097e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68948, "upload_time": "2019-09-12T09:11:44", "url": "https://files.pythonhosted.org/packages/28/1f/aef26a98819a56110b4a7df80ebb43ca06aa7e55bfdb8b1759f553f1dcd3/robotoff-1.0.8.tar.gz" } ], "1.0.9": [ { "comment_text": "", "digests": { "md5": "8fd69c8ffc51dc664303db42af11a5ef", "sha256": "29dec6ebb8c7f86d155a8bf5a22dd717dca454b61fe6526f3b2386bdaa3eb726" }, "downloads": -1, "filename": "robotoff-1.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "8fd69c8ffc51dc664303db42af11a5ef", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 108305, "upload_time": "2019-09-12T12:32:44", "url": "https://files.pythonhosted.org/packages/49/f7/bc37064458f86edf0589d01598910ae2316a172d55051ba2925c3d97ea37/robotoff-1.0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7030c9ae1db8d51ca1d3628dd1f8d42e", "sha256": "678f74ba4979fd6a495185d5e2a6540deebb5a19df87e7bad2f7c3ec24267a5f" }, "downloads": -1, "filename": "robotoff-1.0.9.tar.gz", "has_sig": false, "md5_digest": "7030c9ae1db8d51ca1d3628dd1f8d42e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1943197, "upload_time": "2019-09-12T12:33:46", "url": "https://files.pythonhosted.org/packages/21/cc/e38e7c476f78e55ea78c472e3f75e053fb208c45ff770cb26827fc384f3e/robotoff-1.0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "43e99eca9cab5354cf2872d46b9f5b66", "sha256": "2b32c67f4f9c6731a32b2b21db92586f206a9b905edce85bc352d7a1f105b19d" }, "downloads": -1, "filename": "robotoff-1.0.11-py3-none-any.whl", "has_sig": false, "md5_digest": "43e99eca9cab5354cf2872d46b9f5b66", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 108579, "upload_time": "2019-09-23T11:56:48", "url": "https://files.pythonhosted.org/packages/ab/f0/fdf1a59e51dc74f569cf3c3730a48bee4fc3a9f3dd2aea341f84e0a87f24/robotoff-1.0.11-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "053bf76234ae5ab24c046e0c68e593b1", "sha256": "bc472324c174369aff0e3e4bafb06c3c102e86bf27c531033aaeb10649cd5d32" }, "downloads": -1, "filename": "robotoff-1.0.11.tar.gz", "has_sig": false, "md5_digest": "053bf76234ae5ab24c046e0c68e593b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1943259, "upload_time": "2019-09-23T11:56:52", "url": "https://files.pythonhosted.org/packages/6b/3d/82cf8734db4b6c06bb0b11ce341778a04149a3fc6b2dddc3b2056f71f171/robotoff-1.0.11.tar.gz" } ] }