This commit is contained in:
2021-12-09 21:14:28 -03:00
parent 25f873c453
commit 960c418848
4 changed files with 0 additions and 187 deletions

View File

@ -108,7 +108,6 @@ class AI:
os.remove(temp)
word_list = th.split_words(obj)
fits = encoder.fit_transform(word_list)
print(fits)
phrases = []
for length in range(1, len(word_list) + 1):
for start in range(0, len(word_list)):

View File

@ -1,102 +0,0 @@
import json
from src.ai.word import Word, WordType
class PhraseType:
TEXT = 0
TITLE = 1
HEADER = 2
MOVEMENT = 3
INVALID = 99
def __init__(self):
self.__id = 0
self.__description = 'text'
def get_id(self):
return self.__id
def get_desc(self):
return self.__description
def to_json(self):
return self.__id
def load(self, phrase_id: int):
self.__id = phrase_id
if phrase_id == self.TITLE:
self.__description = 'title'
elif phrase_id == self.HEADER:
self.__description = 'header'
elif phrase_id == self.MOVEMENT:
self.__description = 'movement'
elif phrase_id == self.INVALID:
self.__description = 'invalid'
return self
def phrase_factory(phrase: list, phrase_type: int = None, frec: int = 1):
pt = PhraseType()
if phrase_type is not None:
pt.load(phrase_type)
ph = Phrase()
ph.set_phrase(phrase).set_type(pt).add_frec(frec - 1)
return ph
class Phrase:
def __init__(self):
self.__phrase = None
self.__type = None
self.__frec = 1
def to_json(self):
return {
'phrase': [w.to_json() for w in self.__phrase],
'type': self.__type.to_json(),
'frec': self.__frec
}
def set_phrase(self, phrase: list):
[self.add_word(w) for w in phrase]
return self
def get_phrase(self):
return self.__phrase
def set_type(self, phrase_type: PhraseType):
self.__type = phrase_type
return self
def get_type(self):
return self.__type
def add_word(self, word: Word, pos: int = None):
if self.__phrase is None:
self.__phrase = []
if pos is None:
self.__phrase.append(word)
return self
self.__phrase = self.__phrase[:pos] + [word] + self.__phrase[pos:]
return self
def add_frec(self, amount: int = 1):
self.__frec += amount
def match(self, words: list):
if len(words) != len(self.__phrase):
return False
for w in self.__phrase:
if w not in words:
return False
return True
def __repr__(self):
print(self.__phrase)
return json.dumps({
'phrase': [w.to_json() for w in self.get_phrase()],
'type': self.get_type().get_desc()
})
def __len__(self):
return len(self.__phrase)

View File

@ -1,84 +0,0 @@
import json
class WordType:
STRING = 0
NUMERIC = 1
CURRENCY = 2
DATE = 3
def __init__(self):
self.__id = 0
self.__description = 'string'
def to_json(self):
return self.__id
def load(self, word_id: int):
self.__id = word_id
if word_id == self.NUMERIC:
self.__description = 'numeric'
elif word_id == self.CURRENCY:
self.__description = 'currency'
elif word_id == self.DATE:
self.__description = 'data'
return self
def get_id(self):
return self.__id
def get_desc(self):
return self.__description
def __repr__(self):
return {
'id': self.get_id(),
'description': self.get_desc()
}
def word_factory(word: str, word_type: int = None, frec: int = 1):
wt = WordType()
if word_type is not None:
wt.load(word_type)
w = Word()
w.set_word(word).set_type(wt).add_frec(frec - 1)
return w
class Word:
def __init__(self):
self.__word = None
self.__type = None
self.__frec = 1
def to_json(self):
return {
'word': self.__word,
'type': self.__type.to_json(),
'frec': self.__frec
}
def set_word(self, word: str):
self.__word = word
return self
def get_word(self):
return self.__word
def set_type(self, word_type: WordType):
self.__type = word_type
return self
def get_type(self):
return self.__type
def add_frec(self, amount: int = 1):
self.__frec += amount
return self
def __repr__(self):
return json.dumps({
'word': self.get_word(),
'type': self.get_type().get_desc()
})