I am adding tests to a Rasa version 1 bot we have already developed, so I’m adding them in after the fact so when I upgrade I have a basis for testing as I go. At this time it is still all version 1 code.
Rasa 1.10.14
When I run rasa test
it blows up with what looks like a markdown error. I’ve literally copied the conversation_test.md
file from a fresh (v1) project just to try that and it does the same thing.
The test for the fresh project works, so I know things are working overall.
Here’s my output:
rasa test
[nltk_data] Downloading package vader_lexicon to
[nltk_data] /home/jwheat/nltk_data...
[nltk_data] Package vader_lexicon is already up-to-date!
2020-12-16 08:58:59.075672: E tensorflow/stream_executor/cuda/cuda_driver.cc:351] failed call to cuInit: UNKNOWN ERROR (303)
Processed Story Blocks: 100%|██████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 1007.28it/s, # trackers=1]2020-12-16 08:59:06 INFO rasa.core.test - Evaluating 1 stories
Progress:
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 94.69it/s]2020-12-16 08:59:06 INFO rasa.core.test - Finished collecting predictions.
2020-12-16 08:59:06 INFO rasa.core.test - Evaluation Results on END-TO-END level:
2020-12-16 08:59:06 INFO rasa.core.test - Correct: 0 / 1
2020-12-16 08:59:06 INFO rasa.core.test - F1-Score: 0.000
2020-12-16 08:59:06 INFO rasa.core.test - Precision: 0.000
2020-12-16 08:59:06 INFO rasa.core.test - Accuracy: 0.000
2020-12-16 08:59:06 INFO rasa.core.test - In-data fraction: 1
Traceback (most recent call last):
File "/home/jwheat/anaconda2/envs/rasa/bin/rasa", line 8, in <module>
sys.exit(main())
File "/home/jwheat/anaconda2/envs/rasa/lib/python3.7/site-packages/rasa/__main__.py", line 92, in main
cmdline_arguments.func(cmdline_arguments)
File "/home/jwheat/anaconda2/envs/rasa/lib/python3.7/site-packages/rasa/cli/test.py", line 159, in test
run_core_test(args)
File "/home/jwheat/anaconda2/envs/rasa/lib/python3.7/site-packages/rasa/cli/test.py", line 91, in run_core_test
additional_arguments=vars(args),
File "/home/jwheat/anaconda2/envs/rasa/lib/python3.7/site-packages/rasa/test.py", line 140, in test_core
rasa.core.test(stories, _agent, out_directory=output, **kwargs)
File "uvloop/loop.pyx", line 1456, in uvloop.loop.Loop.run_until_complete
File "/home/jwheat/anaconda2/envs/rasa/lib/python3.7/site-packages/rasa/core/test.py", line 556, in test
targets, predictions = evaluation_store.serialise()
File "/home/jwheat/anaconda2/envs/rasa/lib/python3.7/site-packages/rasa/core/test.py", line 124, in serialise
for predicted in self.entity_predictions
File "/home/jwheat/anaconda2/envs/rasa/lib/python3.7/site-packages/rasa/core/test.py", line 124, in <listcomp>
for predicted in self.entity_predictions
File "/home/jwheat/anaconda2/envs/rasa/lib/python3.7/site-packages/rasa/nlu/training_data/formats/markdown.py", line 465, in generate_entity_md
entity[ENTITY_ATTRIBUTE_START] : entity[ENTITY_ATTRIBUTE_END]
KeyError: 'start'
My test markdown file is super basic to limit my debugging -
## happy path 1
* greet: hello there!
- utter_greet
If you look at one of the last lines in the error message, it seems to be a markdown error somewhere, yet rasa data validate
works fine