Вы, похоже, ищете методы реализации как части генерации естественного языка (NLG).Лучшие системы NLG являются коммерческими, но существуют некоторые системы с открытым исходным кодом, как также указано в статье в Википедии.Я нашел две поддерживаемые библиотеки программного обеспечения:
И два проекта, которые кажутсябольше не будет активно поддерживаться:
Похоже, OpenCCGпредоставляют больше возможностей, чем SimpleNLG, но последний кажется проще в использовании. Этот небольшой пример из учебного пособия SimpleNLG может быть уже достаточным для вашего варианта использования:
import simplenlg.framework.*;
import simplenlg.lexicon.*;
import simplenlg.realiser.english.*;
import simplenlg.phrasespec.*;
import simplenlg.features.*;
Lexicon lexicon = Lexicon.getDefaultLexicon();
NLGFactory nlgFactory = new NLGFactory(lexicon);
Realiser realiser = new Realiser(lexicon);
SPhraseSpec p = nlgFactory.createClause();
p.setSubject("Mary");
p.setVerb("chase");
p.setObject("the monkey");
// prints "Mary chases the monkey.":
System.out.println(realiser.realiseSentence(p));
Если вы предпочитаете Python , эта оболочка вокруг SimpleNLG может помочь.