Integrate elements.
* Move interface to KnowledgeBase object. * Connect process and evaluate calls.
This commit is contained in:
parent
edc3cb97ab
commit
e42ef8f415
6 changed files with 150 additions and 84 deletions
|
@ -2,31 +2,29 @@
|
|||
|
||||
from functools import reduce
|
||||
|
||||
from knowledge_base import KnowledgeBase
|
||||
|
||||
|
||||
def make_template(knowledge_base: KnowledgeBase, text, parsed):
|
||||
def make_template(knowledge_base, text, parsed):
|
||||
tokens = text.split()
|
||||
matcher = list(tokens)
|
||||
template = list(parsed)
|
||||
for i in range(len(tokens)):
|
||||
word = tokens[i]
|
||||
for i in range(len(matcher)):
|
||||
word = matcher[i]
|
||||
if word in template:
|
||||
print(word, i, template)
|
||||
template[template.index(word)] = i
|
||||
print(knowledge_base)
|
||||
tokens[i] = {'groups': set(knowledge_base.knowledge[word]['groups'])}
|
||||
return tokens, template
|
||||
matcher[i] = {
|
||||
'groups': set(knowledge_base.knowledge[word]['groups'])
|
||||
}
|
||||
return tokens, matcher, template
|
||||
|
||||
|
||||
def integrate_language(knowledge_base: KnowledgeBase, example):
|
||||
def integrate_language(knowledge_base, example):
|
||||
text = example["text"].lower()
|
||||
parsed = example["parsed"]
|
||||
matcher, result = make_template(knowledge_base, text, parsed)
|
||||
tokens, matcher, result = make_template(knowledge_base, text, parsed)
|
||||
print(text)
|
||||
print(parsed)
|
||||
print()
|
||||
return matcher, result
|
||||
|
||||
return tokens, matcher, result
|
||||
|
||||
|
||||
def get_matching(sample, other):
|
||||
|
@ -67,3 +65,15 @@ def reprocess_language_knowledge(knowledge_base, examples):
|
|||
print()
|
||||
return pattern_examples
|
||||
|
||||
|
||||
def get_fit(knowledge, row):
|
||||
for sample, ast in knowledge.trained:
|
||||
if len(sample) != len(row):
|
||||
continue
|
||||
|
||||
if all(map(lambda x: (not isinstance(sample[x], str)
|
||||
or sample[x] == row[x]),
|
||||
range(len(sample)))):
|
||||
return sample, ast
|
||||
else:
|
||||
return None
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue