{"id":14064733,"url":"https://github.com/praekelt/feersum-nlu-api-wrappers","last_synced_at":"2025-07-02T00:02:10.322Z","repository":{"id":57429016,"uuid":"100929317","full_name":"praekelt/feersum-nlu-api-wrappers","owner":"praekelt","description":"Swagger spec and generated Python language wrappers for the FeersumNLU HTTP Rest API for building intelligent chatbots.","archived":false,"fork":false,"pushed_at":"2023-06-30T09:29:01.000Z","size":29978,"stargazers_count":9,"open_issues_count":1,"forks_count":3,"subscribers_count":22,"default_branch":"develop","last_synced_at":"2025-06-15T05:49:07.379Z","etag":null,"topics":["chatbot-framework","nlp","nlp-machine-learning"],"latest_commit_sha":null,"homepage":"http://www.feersum.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/praekelt.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-21T08:15:01.000Z","updated_at":"2024-06-03T20:22:52.000Z","dependencies_parsed_at":"2024-12-04T03:31:51.318Z","dependency_job_id":"c5a26d6e-916b-418b-b325-1c7c6db63c7f","html_url":"https://github.com/praekelt/feersum-nlu-api-wrappers","commit_stats":{"total_commits":361,"total_committers":2,"mean_commits":180.5,"dds":0.005540166204986097,"last_synced_commit":"c426ba9c44e6fbad52000eacd8b9b24b85374322"},"previous_names":[],"tags_count":79,"template":false,"template_full_name":null,"purl":"pkg:github/praekelt/feersum-nlu-api-wrappers","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/praekelt%2Ffeersum-nlu-api-wrappers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/praekelt%2Ffeersum-nlu-api-wrappers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/praekelt%2Ffeersum-nlu-api-wrappers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/praekelt%2Ffeersum-nlu-api-wrappers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/praekelt","download_url":"https://codeload.github.com/praekelt/feersum-nlu-api-wrappers/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/praekelt%2Ffeersum-nlu-api-wrappers/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263052428,"owners_count":23406103,"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":["chatbot-framework","nlp","nlp-machine-learning"],"created_at":"2024-08-13T07:04:02.691Z","updated_at":"2025-07-02T00:02:09.788Z","avatar_url":"https://github.com/praekelt.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"FeersumNLU API Wrappers\r\n***********************\r\n\r\n.. image:: https://badge.fury.io/py/feersum_nlu.svg\r\n    :target: https://badge.fury.io/py/feersum_nlu\r\n\r\n\r\nThis git repo hosts Python language wrappers and cURL examples for the FeersumNLU \u0026 FeersumVision RESTful HTTP APIs.\r\nFeersumNLU \u0026 FeersumVision are the language and image comprehension components of Feersum Engine `\u003chttps://www.feersum.io\u003e`_ .\r\n\r\n\r\nOverview\r\n********\r\nFeersumNLU \u0026 FeersumVision provide machine comprehension for natural chat-like interactions with your users. The components are\r\ndesigned to be flexible enough to work with any language, even in markets where large bodies of labelled\r\ndata do not exist yet.\r\n\r\nOur in-house comprehension models are based on the latest research and can be\r\nsetup for various specialised verticals like finance and health. The APIs are also designed such that a\r\nuser may add multi-lingual Natural Language Understanding (NLU) and image comprehension\r\nto their application without requiring a deep understanding of NLU and computer vision theory.\r\n\r\nThe examples in this repo demonstrate commonly required NLU and vision functions. The language wrappers\r\nare auto-generated from an API Swagger spec available at `\u003chttps://nlu.playground.feersum.io:443/nlu/v2/swagger.json\u003e`_.\r\nThe cURL examples of direct HTTP access are in the examples_curl folder.\r\n\r\n(Note: This repo is currently being updated with more examples. You may subscribe to receive notifications about updates\r\nat `\u003chttps://libraries.io/pypi/feersum_nlu\u003e`_ )\r\n\r\n\r\nFeatures\r\n********\r\nCurrent NLU features include natural language FAQ's, detection of the user's intent and sentiment,\r\ninformation extraction, entity extraction, and text-based language identification.\r\n\r\nCurrent vision features include image classification and information extraction.\r\n\r\n\r\nInstalling\r\n**********\r\n\r\nPlease have a look at the examples in the repo. It is also recommended that you create a Python virtual environment\r\nand then follow one of the install options below to run the examples. The examples were tested with Python 3.5 and 3.6.\r\n\r\nCreating a Python Virtual Environment\r\n=====================================\r\n\r\nTo get started with the Python wrappers install Python 3.5 (or 3.6) and pip. Then do:\r\n\r\n.. code-block:: sh\r\n\r\n    $ virtualenv -p /usr/local/bin/python3.5 .pyenv\r\n    $ source .pyenv/bin/activate\r\n    $ pip install pip-tools\r\n    $ pip install appdirs\r\n\r\nIf you don't have virtualenv installed first run:\r\n\r\n.. code-block:: sh\r\n\r\n    $ pip install virtualenv\r\n    $ sudo /usr/bin/easy_install virtualenv\r\n\r\n\r\nInstall Option 1 - Using make\r\n=============================\r\nClone the repo and then to install the dependencies required to run the module's examples run:\r\n\r\n.. code-block:: sh\r\n\r\n    $ make requirements\r\n    $ make deps\r\n\r\n\r\nInstall Option 2 - Using setuptools\r\n===================================\r\n\r\nAlternatively clone the repo and then install the feersum_nlu wrapper module into your Python environment using setuptools:\r\n\r\n.. code-block:: sh\r\n\r\n    $ make requirements\r\n    $ make deps\r\n    $ python setup.py install\r\n\r\nThe benefit of installing the feersum_nlu module into you Python environment is that you can more easily use it in your own projects.\r\n\r\n\r\nInstall Option 3 - Using pip\r\n============================\r\n\r\nThe feersum_nlu wrapper module is also available from the Python Package Index `\u003chttps://pypi.python.org/pypi/feersum_nlu\u003e`_. To install it using pip run:\r\n\r\n.. code-block:: sh\r\n\r\n    $ pip install feersum_nlu\r\n\r\nThe benefit of installing the feersum_nlu module into you Python environment is that you can more easily use it in your own projects.\r\n\r\n\r\nRunning the Examples\r\n====================\r\nIf you use an IDE like PyCharm you can simply open the folder you cloned the source to (e.g. feersum-nlu-api-wrappers) with the IDE.\r\n\r\nOr to start executing example notebooks install Jupyter with \r\n\r\n.. code-block:: sh\r\n\r\n    $ pip install jupyter\r\n\r\nand then run:\r\n\r\n.. code-block:: sh\r\n\r\n    $ jupyter notebook\r\n\r\nThe notebooks are all in the example_notebooks folder.\r\n\r\nAlternatively run the example python scripts in the examples folder from the terminal e.g.:\r\n\r\n.. code-block:: sh\r\n\r\n    $ PYTHONPATH=. python examples/faq_matcher.py\r\n\r\nRemember to set your API token in the example scripts and notebooks.\r\n\r\n\r\nThe FeersumNLU Playground Server\r\n********************************\r\n\r\nA FeersumNLU playground instance of the RESTful web service is hosted at nlu.playground.feersum.io:443/nlu/v2 \r\nYou may use this URL to run the examples given in this repo.\r\n\r\nYou'll need an authentication token to access the service, so email us at nlu@feersum.io and\r\nwe'll send you a token to use. Some autogenerated API documentation is available at\r\n`\u003chttps://nlu.playground.feersum.io/ui/\u003e`_\r\n\r\nNote that this is just a playground instance. Please contact us at nlu@feersum.io for a variety of hosting options including\r\ncontainerised solutions.\r\n\r\n\r\nMaking your Own API Wrapper\r\n***************************\r\n\r\nThis Python language wrapper was generated using the swagger-codegen toolchain. The full process is in the makefile target\r\ncalled `update_spec`. To update the Python wrapper run:\r\n\r\n.. code-block:: sh\r\n\r\n    $ make update_spec\r\n\r\nTo generate an API wrapper for another language modify the command to use a different generator. See\r\n`\u003chttps://github.com/swagger-api/swagger-codegen#to-generate-a-sample-client-library\u003e`_ for some more details.\r\n\r\nTo generate a PHP wrapper, for example, change the generate command to something like:\r\n\r\n.. code-block:: sh\r\n\r\n    $ swagger-codegen generate -i swagger/swagger.yaml -l php -c swagger/swagger_codegen-python_config.json -o swagger/build_php\r\n\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpraekelt%2Ffeersum-nlu-api-wrappers","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpraekelt%2Ffeersum-nlu-api-wrappers","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpraekelt%2Ffeersum-nlu-api-wrappers/lists"}