def query(index_file, text, n_top=3):
"""Find the indexed files that are the most similar to
the query text.
"""
with io.open(index_file, "r") as f:
index = json.load(f)
# Get the categories of the query text.
query_categories = classify(text, verbose=False)
similarities = []
for filename, categories in six.iteritems(index):
similarities.append((filename, similarity(query_categories, categories)))
similarities = sorted(similarities, key=lambda p: p[1], reverse=True)
print("=" * 20)
print("Query: {}\n".format(text))
for category, confidence in six.iteritems(query_categories):
print("\tCategory: {}, confidence: {}".format(category, confidence))
print("\nMost similar {} indexed texts:".format(n_top))
for filename, sim in similarities[:n_top]:
print("\tFilename: {}".format(filename))
print("\tSimilarity: {}".format(sim))
print("\n")
return similarities
[{
"type": "thumb-down",
"id": "hardToUnderstand",
"label":"Difficile da capire"
},{
"type": "thumb-down",
"id": "incorrectInformationOrSampleCode",
"label":"Informazioni o codice di esempio errati"
},{
"type": "thumb-down",
"id": "missingTheInformationSamplesINeed",
"label":"Mancano le informazioni o gli esempi di cui ho bisogno"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Problema di traduzione"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Altra"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Facile da capire"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Il problema è stato risolto"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Altra"
}]