def improvise(message): print(" >>> " + message.from_user.first_name + " : " + message.text) if "📝" in message.text: db = Db(sqlite3.connect('booba.db'), Sql()) generator = Generator('booba', db, Rnd()) msg = generator.generate(' ') + "\n" + generator.generate(' ') bot.send_message(message.chat.id, msg)
def __init__(self): self._createUI() self.paused = True self.rnd = Rnd() self.frameTime = 40 self.part = None self.particleImgId = None
def generate(name, count): db = Db(sqlite3.connect(name + '.db'), Sql()) generator = Generator(name, db, Rnd()) markov_text = [] for i in range(0, count): markov_text.append(generator.generate(WORD_SEPARATOR)) return markov_text
def pontificate(bot, trigger): print "Generating sentence..." markLen = [int(x) for x in trigger.split() if x.isdigit()] db = Db(sqlite3.connect(NAME + '.db'), Sql()) gen = Generator(NAME, db, Rnd()) for i in range(0, DEFAULT_LENGTH): bot.say(gen.generate(WORD_SEPARATOR))
def MarkovGenerator(sentence_list, depth, db_filepath, db=None, rnd=None): """Generator that generates new sentences from a list of sentences. Arguments: sentence_list List of strings, each being a single sentence to learn from depth Depth of analysis at which to build the Markov chain db_filepath Path to file where sqlite database will be stored db (optional) Db object (for mocking in unit tests) rnd (optional) Rnd object (for mocking in unit tests)""" if not db: db = Db(sqlite3.connect(db_filepath), Sql()) db.setup(depth) if not rnd: rnd = Rnd() parser = Parser(DB_NAME, db, SENTENCE_SEPARATOR).parse_list(sentence_list) generator = Generator(DB_NAME, db, rnd) while True: sentence = generator.generate(WORD_SEPARATOR).strip() if len(sentence) == 0: continue # avoid generating the empty string else: yield sentence
args[0], ) if (len(args) < 3): raise ValueError(usage) mode = args[1] name = args[2] if mode == 'parse': if (len(args) != 5): raise ValueError(usage) depth = int(args[3]) file_name = args[4] db = Db(sqlite3.connect(name + '.db'), Sql()) db.setup(depth) txt = codecs.open(file_name, 'r', 'utf-8').read() Parser(name, db, SENTENCE_SEPARATOR, WORD_SEPARATOR).parse(txt) elif mode == 'gen': count = int(args[3]) db = Db(sqlite3.connect(name + '.db'), Sql()) generator = Generator(name, db, Rnd()) for i in range(0, count): print(generator.generate(WORD_SEPARATOR)) else: raise ValueError(usage)
return segment if __name__ == '__main__': args = sys.argv usage = 'Usage: %s (db_name path_to_json output_mp3_path)' % (args[0], ) if (len(args) < 3): raise ValueError(usage) db_name = args[1] path_to_json = args[2] output_mp3_path = args[3] db = Db(sqlite3.connect(db_name + '.db'), Sql()) generator = GenratorWithSeed(db_name, db, Rnd()) labels = read_json(path_to_json) usedBefore = set() fullTrack = textToAudioSegment( "Hello, this AI streamer. Markov process on Reddit comments") curr_time_mksec = fullTrack.duration_seconds * 1000000 while (curr_time_mksec < max(labels['end'])): observedBefore = set( labels[labels['start'] < curr_time_mksec]['Label']) candidates = list(observedBefore - usedBefore)
def generate(number, name): count = number db = Db(sqlite3.connect(name + '.db'), Sql()) generator = Generator(name, db, Rnd()) for i in range(0, count): yield generator.generate(WORD_SEPARATOR)
def create_tweet(): db = Db(sqlite3.connect(NAME + '.db'), Sql()) generator = Generator(NAME, db, Rnd()) tweet_candidate = generator.generate(WORD_SEPARATOR) return tweet_candidate if check_length(tweet_candidate) else create_tweet()
from rnd import Rnd import sys import sqlite3 import codecs SENTENCE_SEPARATOR = '_' WORD_SEPARATOR = ' ' if __name__ == '__main__': args = sys.argv usage = 'Usage: %s (parse <name> <depth> <path to txt file>|gen <name> <count>)' % ( args[0], ) if (len(args) < 3): db = Db(sqlite3.connect('booba' + '.db'), Sql()) generator = Generator('booba', db, Rnd()) print(generator.generate(WORD_SEPARATOR)) print(generator.generate(WORD_SEPARATOR)) else: mode = args[1] name = args[2] if mode == 'parse': if (len(args) != 5): raise ValueError(usage) depth = int(args[3]) file_name = args[4] db = Db(sqlite3.connect(name + '.db'), Sql())