{ "info": { "author": "CarLabs", "author_email": "blake@carlabs.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Scientific/Engineering :: Artificial Intelligence", "Topic :: Text Processing :: Linguistic" ], "description": "# Innatis\n\nThis is a library of custom [Rasa NLU](https://github.com/RasaHQ/rasa_nlu/) components that we (CarLabs) are building.\n\n## What does the name mean?\n\n_Viribus Innatis_ means \"innate abilities\" in Latin. It's a joke...\n\n\"Rasa\" comes from \"tabula rasa\" - _blank slate_ in Latin. We (just Sam) thought it would be funny for this project to have the opposite name, since this is meant to be a suite of tools to fill in functionality for Rasa... that is, make it a not-blank-slate. So \"Innate Abilities\" -> Viribus Innatis.\n\n## Usage\n\n`$ pip install innatis`\n\nThen add to your pipeline in your `rasa_config.yml`. Example pipeline can be found in [`sample_rasa_innatis_config.yml`](sample_configs/sample_rasa_innatis_config.yml).\n\n## Components\n\n### Classifiers\n\n* `intent_classifier_bert` - Pulls the bert model from TF HUB and pretrains on given data.\n\n#### Example config\n\n```yaml\nlanguage: en\npipeline:\n - name: \"tokenizer_whitespace\"\n - name: \"ner_crf\"\n - name: \"ner_synonyms\"\n - name: \"innatis.classifiers.BertIntentClassifier\"\n pretrained_model_dir: '/path/to/uncased_L-24_H-1024_A-16'\n epochs: 10\n batch_size: 64\n```\n\n### Extractors\n\n* `composite_entity_extractor` - Given entities extracted by another extractor (`ner_crf` seems to be the best for now), splits them into composite entities, similar to [DialogFlow](https://dialogflow.com/docs/entities/developer-entities#developer_composite).\n* EntitySynonymMapper (replaces `ner_synonyms`) - this is the `ner_synonyms` adapted for `composite_entity_extractor`. You most likely need it if you use `composite_entity_extractor`. It replaces the synonyms with the original entities inside composite entities. It can also do fuzzy matching when matching synonyms (enabled by default). See example config: [`config_composite_entities.yml`](sample_configs/config_composite_entities.yml)\n\n### Featurizers\n\n* `universal_sentence_encoder_featurizer` - Pulls the smaller USE model from TF HUB and embeds inputs as document vectors, and that vector gets sent downstream to be used as a feature.\n\n## Development\n\n```sh\ngit clone git@github.com:Revmaker/innatis.git\ncd innatis\npipenv install\n# pipenv install --skip-lock if locking takes too long\n\n# do some stuff\n# write some tests\n\npipenv run python test.py\n```\n\nDependencies suck, as is always the case in Python. I started out using `pipenv` because I thought that was _the_ package manager for Python. But I guess you need to put dependencies in the `install_requires` section of `setup.py`. So, the (currently manual, but automatable) process for moving dependencies from the `Pipfile` to `setup.py` is:\n\n```sh\n$ cd innatis\n# you are now in parent/innatis, not innatis/innatis\n$ python ir_from_pipfile.py | pbcopy\n['scikit-learn', 'scipy', 'sklearn-crfsuite', 'tensorflow', 'word2number', 'rasa_nlu==0.13.8', 'tensorflow-hub', 'spacy']\n\n# that array is copied; paste it into setup.py\n```\n\nAlso, please manually bump the version in a semver-ish way.", "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/Revmaker/innatis", "keywords": "rasa,nlu,components", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "", "name": "innatis", "package_url": "https://pypi.org/project/innatis/", "platform": "", "project_url": "https://pypi.org/project/innatis/", "project_urls": { "Homepage": "https://github.com/Revmaker/innatis" }, "release_url": "https://pypi.org/project/innatis/0.7.0/", "requires_dist": null, "requires_python": ">=3.5", "summary": "A library of useful custom Rasa components", "version": "0.7.0" }, "last_serial": 5909942, "releases": { "0.5.0": [ { "comment_text": "", "digests": { "md5": "48be99e7fe484677a19aeb11d00e77a7", "sha256": "f1cdd649d48b564f514dd7b1a2621b8b00dc266761ec0a4564cdef7ba8ea953b" }, "downloads": -1, "filename": "innatis-0.5.0.tar.gz", "has_sig": false, "md5_digest": "48be99e7fe484677a19aeb11d00e77a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6262, "upload_time": "2019-02-01T23:45:51", "url": "https://files.pythonhosted.org/packages/14/fe/666c3f55cadd78bbcde68914697368f7b620d86d009a9da8218ed933cdb8/innatis-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "0196449554b447da9934a91f4a74ef8d", "sha256": "600f47a5a68f46ed8b93f0ee8a7346609824de96a781a37b2f3370e8974f0df2" }, "downloads": -1, "filename": "innatis-0.5.1.tar.gz", "has_sig": false, "md5_digest": "0196449554b447da9934a91f4a74ef8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6322, "upload_time": "2019-02-25T19:24:25", "url": "https://files.pythonhosted.org/packages/39/e6/ef1701098ef9c24ba1d68e63c5b73c1236a762b0939f7348b3d68590d0d4/innatis-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "d7d7059ab3d529cbe2ad05c4bf3e8f8e", "sha256": "dfde0a3d5800358aee4efb6c5a7e36c91c62f9608a781a16bbf274499de75222" }, "downloads": -1, "filename": "innatis-0.5.2.tar.gz", "has_sig": false, "md5_digest": "d7d7059ab3d529cbe2ad05c4bf3e8f8e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6561, "upload_time": "2019-03-04T20:33:20", "url": "https://files.pythonhosted.org/packages/18/0d/8738a52fe3b90650484c8bdd6efa58a25adcfbeb7cc4f6abd4a6085fc7be/innatis-0.5.2.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "0e9eabe644379fc5c4c44a0734fa097c", "sha256": "8e038826c0f964a4b166433a612432a15b7d2c8181a41f8c833ae16774246fbd" }, "downloads": -1, "filename": "innatis-0.5.3.tar.gz", "has_sig": false, "md5_digest": "0e9eabe644379fc5c4c44a0734fa097c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6562, "upload_time": "2019-03-04T20:39:54", "url": "https://files.pythonhosted.org/packages/51/de/e98665cc6f77f908047c7ff1700db26b365ea8d41568f87a75a240722ed5/innatis-0.5.3.tar.gz" } ], "0.5.4": [ { "comment_text": "", "digests": { "md5": "d1d015a4a8e2c5e7614d66752960e84a", "sha256": "84e1362f2c6100e5419701fa7a4486aa5961ef78eb914459d6316b10c7cd5816" }, "downloads": -1, "filename": "innatis-0.5.4.tar.gz", "has_sig": false, "md5_digest": "d1d015a4a8e2c5e7614d66752960e84a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8900, "upload_time": "2019-03-04T20:58:17", "url": "https://files.pythonhosted.org/packages/19/39/b108e8f42725ed87e339a858bcaaa2f729f1b561cdd03193c07b7c0ac982/innatis-0.5.4.tar.gz" } ], "0.5.5": [ { "comment_text": "", "digests": { "md5": "466fa690e0b5099f4cb11a47228d920d", "sha256": "23587b71590725af42ef202709dd6315610a56adf0c0490f8aeea38c9b117a61" }, "downloads": -1, "filename": "innatis-0.5.5.tar.gz", "has_sig": false, "md5_digest": "466fa690e0b5099f4cb11a47228d920d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8903, "upload_time": "2019-03-04T21:02:15", "url": "https://files.pythonhosted.org/packages/ce/00/1ed768015a7581293710ff816b60db4bf312c7409d789626b967d29a3fdb/innatis-0.5.5.tar.gz" } ], "0.5.6": [ { "comment_text": "", "digests": { "md5": "07a94e0db92a7dc4389a7e5ad011dae5", "sha256": "f918c91bcfc1819c9c94c5a5c58d811613782dd2f40bee775253deed3e7675a9" }, "downloads": -1, "filename": "innatis-0.5.6.tar.gz", "has_sig": false, "md5_digest": "07a94e0db92a7dc4389a7e5ad011dae5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18500, "upload_time": "2019-03-04T21:03:22", "url": "https://files.pythonhosted.org/packages/b4/da/9211b8c0333313e066c9cf4f15988c30d3c6805cd06bda723f0da5fb41be/innatis-0.5.6.tar.gz" } ], "0.5.7": [ { "comment_text": "", "digests": { "md5": "4e06ed682e216ea49036bd62d65751a8", "sha256": "ef78e75874be080da07c7e96897704123fef69208926c66ca90a74cdec456a5a" }, "downloads": -1, "filename": "innatis-0.5.7.tar.gz", "has_sig": false, "md5_digest": "4e06ed682e216ea49036bd62d65751a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20090, "upload_time": "2019-03-11T17:08:42", "url": "https://files.pythonhosted.org/packages/dd/65/d0a458d2090dd91b2c76dd0fdc795449e62bb379a50b6f368a2fe50b4d83/innatis-0.5.7.tar.gz" } ], "0.5.8": [ { "comment_text": "", "digests": { "md5": "bd7b1e7bc9e6d5a4de2179be58e84121", "sha256": "c67cfcd19e2bb7f75b75e5ca177c7919094f7184d12f7492934e72467a82c6c8" }, "downloads": -1, "filename": "innatis-0.5.8-py3-none-any.whl", "has_sig": false, "md5_digest": "bd7b1e7bc9e6d5a4de2179be58e84121", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 25309, "upload_time": "2019-03-13T17:16:05", "url": "https://files.pythonhosted.org/packages/0e/9c/cba9560b8ff1a78b94bb1b037931a65d8d6464bdf1a42d83ae0e1ae154d1/innatis-0.5.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb266a7cecf1c5dceb83ab703f115cd5", "sha256": "767df5363dbdf97e5b6c0e12af18b26cad0fd0b03a536447f2e56533d6259209" }, "downloads": -1, "filename": "innatis-0.5.8.tar.gz", "has_sig": false, "md5_digest": "cb266a7cecf1c5dceb83ab703f115cd5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20114, "upload_time": "2019-03-13T17:16:07", "url": "https://files.pythonhosted.org/packages/31/cf/65d59e7d3836cd047ec2815afb878e9483946a1ae9c2491f818e088670bf/innatis-0.5.8.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "1edd52489a5877e5ad9e66cdd6820398", "sha256": "9900ef65a9189ca6563c3191b4539f9ec7340866a97fab5936e5a0b35bde99d5" }, "downloads": -1, "filename": "innatis-0.7.0.tar.gz", "has_sig": false, "md5_digest": "1edd52489a5877e5ad9e66cdd6820398", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 31244, "upload_time": "2019-10-01T01:43:24", "url": "https://files.pythonhosted.org/packages/e0/b4/012b76f606431276e7f6f02773f630af63ab062dc7d665d013ecd242a57e/innatis-0.7.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1edd52489a5877e5ad9e66cdd6820398", "sha256": "9900ef65a9189ca6563c3191b4539f9ec7340866a97fab5936e5a0b35bde99d5" }, "downloads": -1, "filename": "innatis-0.7.0.tar.gz", "has_sig": false, "md5_digest": "1edd52489a5877e5ad9e66cdd6820398", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 31244, "upload_time": "2019-10-01T01:43:24", "url": "https://files.pythonhosted.org/packages/e0/b4/012b76f606431276e7f6f02773f630af63ab062dc7d665d013ecd242a57e/innatis-0.7.0.tar.gz" } ] }