korymath / talk-generator

talk-generator is capable of generating coherent slide decks based on a single topic suggestion.
MIT License
124 stars 9 forks source link

Breaking Issue: KeyError: 'language' #52

Closed korymath closed 5 years ago

korymath commented 5 years ago
talkgenerator --topic 'garden snake' --num_slides 10
2019-08-16 11:32:19,457 - talkgenerator - INFO - ******************************************
2019-08-16 11:32:19,457 - talkgenerator - INFO - Making 10 slide talk on: garden snake
2019-08-16 11:32:19,678 - talkgenerator.conceptnet - INFO - Took 0.19663171700085513 seconds to poll Conceptnet for 'garden snake'
2019-08-16 11:32:19,678 - talkgenerator - INFO - Conceptnet related words failing: 'language'
2019-08-16 11:32:19,679 - talkgenerator - INFO - Conceptnet related words failing: 'language'
2019-08-16 11:32:19,679 - talkgenerator - INFO - SideTrackingTopicGenerator concept seeds: ['garden snake', None, None, None, None, 'garden snake', None, None, None, 'garden snake']
2019-08-16 11:32:19,679 - talkgenerator - INFO - Generating the slide deck in parallel
2019-08-16 11:32:19,688 - talkgenerator - INFO - * Generating slide 1 about garden snake using Title slide *
2019-08-16 11:32:19,688 - talkgenerator - INFO - * Generating slide 2 about garden snake using Two Captions Weird Reddit *
2019-08-16 11:32:19,688 - talkgenerator - INFO - * Generating slide 3 about garden snake using Two Captions Gifs *
2019-08-16 11:32:19,688 - talkgenerator - INFO - * Generating slide 4 about garden snake using Two History Pictures *
2019-08-16 11:32:19,688 - talkgenerator - INFO - * Generating slide 5 about garden snake using Yes/No/Funny Chart *
2019-08-16 11:32:19,688 - talkgenerator - INFO - * Generating slide 6 about garden snake using Inspirobot *
2019-08-16 11:32:19,688 - talkgenerator - INFO - * Generating slide 7 about garden snake using Correlation Curve *
2019-08-16 11:32:19,689 - talkgenerator - INFO - * Generating slide 8 about garden snake using Reddit Chart *
2019-08-16 11:32:19,689 - talkgenerator - INFO - * Generating slide 9 about garden snake using Yes/No/Funny Chart *
2019-08-16 11:32:19,689 - talkgenerator - INFO - * Generating slide 10 about garden snake using 2 Conclusions *
2019-08-16 11:32:19,689 - talkgenerator - INFO - * Finished generating slide 1 about garden snake using Title slide in 0.0 seconds *
2019-08-16 11:32:19,982 - talkgenerator.conceptnet - INFO - Took 0.2712950009954511 seconds to poll Conceptnet for 'garden snake'
2019-08-16 11:32:19,983 - talkgenerator - WARNING - WARNING: Problem logging in on Wikihow: Advanced Search disabled
2019-08-16 11:32:20,245 - talkgenerator - INFO - * Finished generating slide 6 about garden snake using Inspirobot in 0.56 seconds *
2019-08-16 11:32:20,275 - talkgenerator - WARNING - WARNING: Problem logging in on Wikihow: Advanced Search disabled
2019-08-16 11:32:20,318 - talkgenerator.conceptnet - INFO - Took 0.3359065800032113 seconds to poll Conceptnet for 'garden snake'
2019-08-16 11:32:21,494 - talkgenerator - INFO - * Finished generating slide 5 about garden snake using Yes/No/Funny Chart in 1.81 seconds *
2019-08-16 11:32:21,695 - talkgenerator - INFO - * Finished generating slide 9 about garden snake using Yes/No/Funny Chart in 2.01 seconds *
2019-08-16 11:32:22,494 - talkgenerator - INFO - * Finished generating slide 10 about garden snake using 2 Conclusions in 2.81 seconds *
2019-08-16 11:32:25,229 - talkgenerator - INFO - * Finished generating slide 8 about garden snake using Reddit Chart in 5.54 seconds *
2019-08-16 11:32:28,128 - talkgenerator - INFO - * Finished generating slide 4 about garden snake using Two History Pictures in 8.44 seconds *
2019-08-16 11:32:38,805 - talkgenerator - INFO - * Finished generating slide 2 about garden snake using Two Captions Weird Reddit in 19.12 seconds *
2019-08-16 11:32:42,938 - talkgenerator - INFO - * Finished generating slide 3 about garden snake using Two Captions Gifs in 23.25 seconds *
Traceback (most recent call last):
  File "/Users/korymathewson/work/talk-generator/venv/bin/talkgenerator", line 11, in <module>
    load_entry_point('talkgenerator', 'console_scripts', 'talkgenerator')()
  File "/Users/korymathewson/work/talk-generator/talkgenerator/run.py", line 11, in main_cli
    main(args)
  File "/Users/korymathewson/work/talk-generator/talkgenerator/run.py", line 6, in main
    presentations, slide_deck = utils.generate_talk(args)
  File "/Users/korymathewson/work/talk-generator/talkgenerator/utils.py", line 63, in generate_talk
    parallel=args.parallel,
  File "/Users/korymathewson/work/talk-generator/talkgenerator/schema/presentation_schema.py", line 68, in generate_presentation
    used_tags,
  File "/Users/korymathewson/work/talk-generator/talkgenerator/schema/presentation_schema.py", line 115, in _generate_slide_deck_parallel
    slide_nrs_to_generate,
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/multiprocessing/pool.py", line 260, in map
    return self._map_async(func, iterable, mapstar, chunksize).get()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/multiprocessing/pool.py", line 608, in get
    raise self._value
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/multiprocessing/pool.py", line 119, in worker
    result = (True, func(*args, **kwds))
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/multiprocessing/pool.py", line 44, in mapstar
    return list(map(*args))
  File "/Users/korymathewson/work/talk-generator/talkgenerator/schema/presentation_schema.py", line 347, in __call__
    prohibited_generators=self.prohibited_generators,
  File "/Users/korymathewson/work/talk-generator/talkgenerator/schema/presentation_schema.py", line 228, in generate_slide
    slide_result = generator.generate(presentation_context, used_elements)
  File "/Users/korymathewson/work/talk-generator/talkgenerator/schema/slide_generator_data.py", line 70, in generate
    presentation_context, (used_elements, self._allowed_repeated_elements)
  File "/Users/korymathewson/work/talk-generator/talkgenerator/slide/slide_generators.py", line 27, in generate_slide
    generated = self._slide_content_generator(presentation_context)
  File "/Users/korymathewson/work/talk-generator/talkgenerator/sources/chart.py", line 309, in generate_correlation_curve
    x_label = _CORRELATION_WORD_GENERATOR(y_label)
  File "/Users/korymathewson/work/talk-generator/talkgenerator/util/generator_util.py", line 230, in __call__
    generated = self._inner_generator(current)
  File "/Users/korymathewson/work/talk-generator/talkgenerator/util/generator_util.py", line 24, in __call__
    generated = generator(seed)
  File "/Users/korymathewson/work/talk-generator/talkgenerator/util/generator_util.py", line 211, in __call__
    weighted_list = self._weighted_list_creator(argument)
  File "/Users/korymathewson/work/talk-generator/talkgenerator/sources/conceptnet.py", line 151, in get_weighted_related_words
    for edge in edges
  File "/Users/korymathewson/work/talk-generator/talkgenerator/sources/conceptnet.py", line 152, in <listcomp>
    if is_different_enough_label(edge["end"], word) and is_english(edge["end"])
  File "/Users/korymathewson/work/talk-generator/talkgenerator/sources/conceptnet.py", line 133, in is_english
    return not node["language"] or node["language"] == "en"
KeyError: 'language'
twinters commented 5 years ago

Nice find. Fixed as of https://github.com/korymath/talk-generator/commit/31ccd00f0adf5d37abc8ca693bc9e7a5d01841f7