Skip to main content

Clever dialogue manager for chatbots and assistants.

Project description

Rasa Core
=========

|Join the chat at https://gitter.im/RasaHQ/rasa\_core| |Build Status|
|Coverage Status| |PyPI version|

`Go To Docs <https://core.rasa.ai>`__
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Introduction
------------

Rasa Core is a framework for building conversational software, which
includes: - chatbots on Messenger - Slack bots - Alexa Skills - Google
Home Actions

etc.

Rasa Core'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 Core lets you do that in a scalable way.

There's a lot more background information in this `blog
post <https://medium.com/rasa-blog/a-new-approach-to-conversational-software-2e64a5d05f2a>`__

Where to get help
-----------------

There is extensive documentation:

- `master <https://core.rasa.ai/master/>`__  (if you install from
**github**) or
- `stable <https://core.rasa.ai/>`__   (if you install from **pypi**)

Please use `gitter <https://gitter.im/RasaHQ/rasa_core>`__ for quick
answers to questions.

README Contents:
^^^^^^^^^^^^^^^^

- `Setup <#setup>`__
- `How to contribute <#how-to-contribute>`__
- `Development Internals <#development-internals>`__
- `License <#license>`__

Setup
-----

There isn't a released pypi package yet. Hence, you need to clone and
install the package from the github repository. For a more detailed
description, please visit the `**Installation
page** <https://core.rasa.ai/installation.html>`__ of the docs.

To install, run:

.. code:: bash

git clone https://github.com/RasaHQ/rasa_core.git
cd rasa_core
pip install -r requirements.txt
pip install -e .

Development Internals
---------------------

Running and changing the documentation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

To build & edit the docs, first install all necessary dependencies:

::

brew install sphinx
pip install -r dev-requirements.txt

After the installation has finished, you can run and view the
documentation locally using

::

make livedocs

Visit the local version of the docs at http://localhost:8000 in your
browser. You can now change the docs locally and the web page will
automatically reload and apply your changes.

License
-------

Licensed under the Apache License, Version 2.0. Copyright 2017 Rasa
Technologies GmbH. `Copy of the license <LICENSE.txt>`__.

.. |Join the chat at https://gitter.im/RasaHQ/rasa\_core| image:: https://badges.gitter.im/Join%20Chat.svg
:target: https://gitter.im/RasaHQ/rasa_core?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
.. |Build Status| image:: https://travis-ci.org/RasaHQ/rasa_core.svg?branch=master
:target: https://travis-ci.org/RasaHQ/rasa_core
.. |Coverage Status| image:: https://coveralls.io/repos/github/RasaHQ/rasa_core/badge.svg?branch=master
:target: https://coveralls.io/github/RasaHQ/rasa_core?branch=master
.. |PyPI version| image:: https://badge.fury.io/py/rasa_core.svg
:target: https://badge.fury.io/py/rasa_core


Change Log
==========

All notable changes to this project will be documented in this file.
This project adheres to `Semantic Versioning`_ starting with version 0.2.0.

[Unreleased] - `master`_
^^^^^^^^^^^^^^^^^^^^^^^^

.. note:: This version is not yet released and is under active development.

Added
-----

Changed
-------

Removed
-------

Fixed
-----

[0.7.0] - 2017-10-04
^^^^^^^^^^^^^^^^^^^^

Added
-----
- support for Rasa Core usage as a server with remote action execution

Changed
-------
- switched to max code line length 80
- removed action id - use ``action.name()`` instead. if an action implementation overrides the name, it should include the ``action_`` prefix (as it is not automatically added anymore)
- renamed ``rasa_dm.util`` to ``rasa_dm.utils``
- renamed the whole package to ``rasa_core`` (so ``rasa_dm`` is gone!)
- renamed ``Reminder`` attribute ``id`` to ``name``
- a lot of documentation improvements. docs are now at https://core.rasa.ai

[0.7.0a3] - 2017-09-20
^^^^^^^^^^^^^^^^^^^^^^

Changed
-------
- use hashing when writing memorized turns into persistence - requires retraining of all models that are trained with a version prior to this
- changed ``agent.handle_message(...)`` interface for easier usage

[0.6.0a1] - 2017-08-27
^^^^^^^^^^^^^^^^^^^^^^

Added
-----
- support for multiple policies (e.g. one memoization and a Keras policy at the same time)
- loading domains from yaml files instead of defining them with python code
- added an api layer (called ``Agent``) for you to use for 95% of the things you want to do (training, persistence, loading models)
- support for reminders

Changed
-------
- large refactoring of code base

[0.5.0a1] - 2017-06-18
^^^^^^^^^^^^^^^^^^^^^^

Added
-----
- ``ScoringPolicy`` added to policy implementations (less strict than standard default policy)
- ``RasaNLUInterpreter`` to run a nlu instance within dm (instead of using the http interface)
- more tests

Changed
-------
- ``UserUtterance`` now holds the complete parse data from nlu (e.g. to access attributes other than entities or intent)
- ``Turn`` has a reference to a ``UserUtterance`` instead of directly storing intent & entities (allows access to other data)
- Simplified interface of output channels
- order of actions in the DefaultPolicy in ``possible_actions`` (``ActionListen`` now always has index 0)

Fixed
-----
- ``RedisTrackerStore`` checks if tracker is stored before accessing it (otherwise a ``None`` access exception is thrown)
- ``RegexInterpreter`` checks if the regex actually matches the message instead of assuming it always does
- ``str`` implementation for all events
- ``Controller`` can be started without an input channel (e.g. messages need to be fed into the queue manually)

[0.2.0a1] - 2017-05-18
^^^^^^^^^^^^^^^^^^^^^^
First released version.


.. _`master`: https://github.com/RasaHQ/rasa_core/

.. _`Semantic Versioning`: http://semver.org/

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.

Source Distribution

rasa_core-0.7.0a8.tar.gz (61.3 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page