ImportError: cannot import name 'style_from_dict' for RASA interactive learning.Incompatible prompt-toolkit version

rasa-core

(Arghya Ganguly) #1

I am trying to train the flow of dialog using interactive learning in Rasa core using Jupyter notebook.

code snippet:

import logging

from rasa_core import utils, train
from rasa_core.training import interactive

logger = logging.getLogger(__name__)


def train_agent():
    return train.train_dialogue_model(domain_file="domain.yml",
                                      stories_file="data/stories.md",
                                      output_path="models/dialogue",
                                      policy_config='policy_config.yml'
                                      )


if __name__ == '__main__':
    utils.configure_colored_logging(loglevel="INFO")
    agent = train_agent()
    logger.info("This example does not include NLU data."
                "Please specify the desired intent with a preceding '/', e.g."
                "'/greet' .")
    interactive.run_interactive_learning(agent)

Initially, I was getting a “Token not found” error pointing to “from prompt_toolkit.token import Token”

I downgraded to prompt-toolkit-1.0.14 and tried running the code.

Getting ImportError: cannot import name ‘style_from_dict’

I feel there is a version incompatibility for prompt_toolkit in rasa_core and Ipython. Currently using Rasa_core == 0.12.3 and ipython 7.2.0.

Do i need to downgrade ipython? Please suggest.


(Arghya Ganguly) #2

The error was resolved after downgrading to ipython 6.0.0.