from pathlib import Path import fnmatch import os import fasttext import logging model_path = os.path.dirname(".") #format des modeles Fasttewt : bin ou ftz , a modifier au besoin model_type=".ftz" logging.basicConfig( level=logging.DEBUG) # parametres du modele model_init = { "rang": 0, "code_pere": "0", } # chargement de l ensembles de modele fasttext disponible dans le FS model_path # OUTPUT = dictionnaire des modeles format { "code du modele" = "addresse mdoele" } def load_all_models(): indexes = [] model_path="." for root, dirnames, filenames in os.walk(model_path): match = {} for filename in fnmatch.filter(filenames, "*" + model_type): match["code"] = "" match["path"] = os.path.join(root.replace('.DAV',''), filename) indexes.append(match) for i, dic in enumerate(indexes): p = dic["path"].split("/") dic["code"] = p[-2] dic_models={} for i, dic in enumerate(indexes): dic_models[dic['code']] = fasttext.load_model(dic['path']) # trace message=dic['path'] logging.info('load %s',message) return(dic_models) list_loaded_models = load_all_models()