たとえば「講演」がキーワードとして抽出された後で「講演資料を作る」という発言があった場合、キーワード抽出が「講演資料」の範囲をキーワードで抽出したとすると、これは「A」と無関係に「B」が抽出された状態になるが、適切ではない。この場合「講演」も再度出現しているとみなすべき。

追記 ✅短いキーワードの再出現はキーワード扱いしない

make_response.py

# キーワード抽出で選ばれてないが出現してる部分文字列をキーワード出現とみなす
for k in env.scored_keyphrases:
    if k not in keyphrase and k in s:
        keyphrase[k] = min(100, env.scored_keyphrases[k])