Source code for master.automl.automl_rule

from common.utils import *
from master import models
from master import serializers
from django.core import serializers as serial
import json

[docs]class AutoMlRule: """ Auto ML related conf get/set common methos """ def __init__(self, key = None): """ init key variable :param key: :return: """ if (key is not None): self.key = key self.conf = self.get_train_obj(key)
[docs] def get_graph_type_list(self, graph_id): """ get view data for net config :return: """ try: graph_id = str(graph_id) query_set = models.AUTO_ML_RULE.objects.all() query_set = serial.serialize("json", query_set) query_set = json.loads(query_set) ids = [] for row in query_set : grow = row["fields"]["graph_flow_group_id"] if grow.find(graph_id) > -1: ids.append(row) # obj = models.NN_DEF_LIST_INFO.objects.get(nn_id=str(input_data['nn_id'])) return ids except Exception as e: raise Exception(e)
[docs] def get_graph_info(self, graph_flow_id): """ get view data for net config :return: """ try: query_set = models.AUTO_ML_RULE.objects.filter(graph_flow_id=graph_flow_id) query_set = serial.serialize("json", query_set) query_set = json.loads(query_set) ids = [] for row in query_set : ids.append(row['fields']['graph_flow_data']) return ids except Exception as e: raise Exception(e)
[docs] def set_graph_type_list(self, graph_flow_id, req): """ insert nn_info :param req: json object :return: """ try: exists = models.AUTO_ML_RULE.objects.filter(graph_flow_id=graph_flow_id).count() if(exists > 0) : self.update_graph_type_list(graph_flow_id, req) else : obj = models.AUTO_ML_RULE.objects.create(graph_flow_id=graph_flow_id, graph_flow_data={}) setattr(obj, "graph_flow_data", req) obj.save() except Exception as e: raise Exception(e) finally: return True
[docs] def update_graph_type_list(self, graph_flow_id, input_data): """ set net config data edited on view :param obj: :return: """ try: if graph_flow_id == "graph_flow_desc" or graph_flow_id == "graph_flow_group_id": for i in input_data: obj = models.AUTO_ML_RULE.objects.get(graph_flow_id=i) setattr(obj, graph_flow_id, input_data[i]) obj.save() else: obj = models.AUTO_ML_RULE.objects.get(graph_flow_id=graph_flow_id) data_set = getattr(obj, "graph_flow_data") data_set.update(input_data) setattr(obj, "graph_flow_data", data_set) obj.save() return input_data except Exception as e: raise Exception(e) return None