def create_datasource_from_json(json): name = save_json_datasource(json) column_names = json["column-names"] datasource = with_session(create_datasource({ "name": name })) ds_id = datasource["id"] create_columns = create_datasource_column_names(ds_id, column_names) column_names = [column["name"] for column in with_session(create_columns)] datasource["column-names"] = column_names return datasource
def create_datasource_from_csv(csv_file): store_csv_file(csv_file) name = csv_file.filename column_names = csv_file_column_names(name) datasource = with_session(create_datasource({ "name": name })) ds_id = datasource["id"] create_columns = create_datasource_column_names(ds_id, column_names) column_names = [column["name"] for column in with_session(create_columns)] datasource["column-names"] = column_names return datasource
def create_model(json): name = json["name"] type_name = json["type"] datasource_id = json["datasource"] input_columns = json["input-columns"] type_id = with_session(compose( getattr("id"), query_type_by_name(type_name) )) new_model_id = with_session(create_row(ModelModel, { "name": name, "type_id": type_id, "datasource_id": datasource_id }))["id"] with_session(create_input_columns(input_columns, new_model_id)) queue_model_creation_task(json) return get_model(new_model_id)
def list_datasource_ids(): return with_session(row_ids(DatasourceModel))
def get_recommender(id): return with_session(compose( recommender_model_to_dict, query_id(RecommenderModel, id) ))
def create_recommender(json): model_id = json["model"] default_n = json["default-recommendations"] new_recommender_id = with_session(create_recommender_model({"model_id": model_id, "default_n": default_n}))["id"] return get_recommender(new_recommender_id)
def get_model(id): return with_session(compose( model_model_to_dict, query_id(ModelModel, id) ))
def list_model_ids(): return with_session(row_ids(ModelModel))
def get_datasource(id): return with_session(compose( datasource_model_to_dict, query_id(DatasourceModel, id) ))
def list_recommenders(): return with_session(row_ids(RecommenderModel))