Skip to main content

Forked from the open source machine learning framework, Rasa

Project description

Rasa-Hydra (Forked from Rasa)

Rasa-Hydra is forked from the official Rasa repo and maintained by the Hydra team. Rasa is an open source machine learning framework to automate text-and voice-based conversations. With Rasa-Hydra, you can build chatbots on:

  • Facebook Messenger
  • Slack
  • Microsoft Bot Framework
  • Rocket.Chat
  • Mattermost
  • Telegram
  • Twilio
  • Your own custom conversational channels

or voice assistants as:

  • Alexa Skills
  • Google Home Actions

Rasa-Hydra's primary purpose is to help you build contextual, layered conversations with lots of back-and-forth. To have a real conversation, you need to have some memory and build on things that were said earlier. Rasa-Hydra lets you do that in a scalable way.

Development Internals

Running the Tests

In order to run the tests, make sure that you have the development requirements installed:

export PIP_USE_PEP517=false
pip3 install -r requirements-dev.txt
pip3 install -e .
make prepare-tests-ubuntu # Only on Ubuntu and Debian based systems
make prepare-tests-macos  # Only on macOS

Then, run the tests:

make test

They can also be run at multiple jobs to save some time:

make test -j [n]

Where [n] is the number of jobs desired. If omitted, [n] will be automatically chosen by pytest.

Steps to release a new version

Releasing a new version is quite simple, as the packages are build and distributed by travis.

Terminology:

  • patch release (third version part increases): 1.1.2 -> 1.1.3
  • minor release (second version part increases): 1.1.3 -> 1.2.0
  • major release (first version part increases): 1.2.0 -> 2.0.0

Release steps:

  1. Make sure all dependencies are up to date (especially Rasa SDK)

  2. Switch to the branch you want to cut the release from (master in case of a major / minor, the current feature branch for patch releases)

  3. Run make release

  4. Create a PR against master or the release branch (e.g. 1.2.x)

  5. Once your PR is merged, tag a new release (this SHOULD always happen on master or release branches), e.g. using

    git tag 1.2.0 -m "next release"
    git push origin 1.2.0 --tags
    

    travis will build this tag and push a package to pypi

  6. If this is a minor release, a new release branch should be created pointing to the same commit as the tag to allow for future patch releases, e.g.

    git checkout -b 1.2.x
    git push origin 1.2.x
    
  7. Packaging the Rasa-Hydra project. For more information, please refer to this guide.

    1. Make sure you have the latest versions of setuptools and wheel installed:

      python3 -m pip install --user --upgrade setuptools wheel
      
    2. Bump up the version in the dialog_manager/version.py.

    3. Build the package locally.

      python3 setup.py sdist bdist_wheel
      
  8. Upload the package to PyPI/Test PyPI.

    1. Install twine from PyPI.
      pip install twine
      
    • PyPI
      python3 -m twine upload dist/*
      
    • Test PyPI
      python3 -m twine upload --repository-url https://test.pypi.org/legacy/ dist/*
      

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for rasa-hydra, version 2.6.25
Filename, size File type Python version Upload date Hashes
Filename, size rasa_hydra-2.6.25-py3-none-any.whl (554.4 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size rasa-hydra-2.6.25.tar.gz (431.3 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page