aboutsummaryrefslogtreecommitdiff
path: root/backend
diff options
context:
space:
mode:
Diffstat (limited to 'backend')
-rw-r--r--backend/api/api/Controllers/FileController.cs2
-rw-r--r--backend/api/api/Controllers/ModelController.cs9
-rw-r--r--backend/api/api/Models/Model.cs3
-rw-r--r--backend/api/api/Services/ExperimentService.cs5
-rw-r--r--backend/api/api/Services/IMlConnectionService.cs1
-rw-r--r--backend/api/api/Services/MlConnectionService.cs51
6 files changed, 68 insertions, 3 deletions
diff --git a/backend/api/api/Controllers/FileController.cs b/backend/api/api/Controllers/FileController.cs
index ac17ab0b..ad788e17 100644
--- a/backend/api/api/Controllers/FileController.cs
+++ b/backend/api/api/Controllers/FileController.cs
@@ -13,7 +13,7 @@ namespace api.Controllers
public class FileController : ControllerBase
{
private string[] permittedExtensions = { ".csv",".json",".xls",".xlsx" };
- private string[] permittedExtensionsH5 = { ".h5" };//niz da bi dodali h4 itd
+ private string[] permittedExtensionsH5 = { ".h5" };//niz da bi dodali h5 itd
private readonly IConfiguration _configuration;
private IJwtToken _token;
private readonly IFileService _fileservice;
diff --git a/backend/api/api/Controllers/ModelController.cs b/backend/api/api/Controllers/ModelController.cs
index be7edffe..8031700a 100644
--- a/backend/api/api/Controllers/ModelController.cs
+++ b/backend/api/api/Controllers/ModelController.cs
@@ -19,9 +19,10 @@ namespace api.Controllers
private readonly IModelService _modelService;
private readonly IExperimentService _experimentService;
private IJwtToken jwtToken;
+ private readonly IMlConnectionService _mlConnectionService;
- public ModelController(IMlConnectionService mlService, IModelService modelService, IDatasetService datasetService, IFileService fileService, IConfiguration configuration,IJwtToken token,IExperimentService experiment)
+ public ModelController(IMlConnectionService mlService, IModelService modelService, IMlConnectionService mlConnectionService, IDatasetService datasetService, IFileService fileService, IConfiguration configuration,IJwtToken token,IExperimentService experiment)
{
_mlService = mlService;
_modelService = modelService;
@@ -29,6 +30,7 @@ namespace api.Controllers
_fileService = fileService;
_experimentService = experiment;
jwtToken = token;
+ _mlConnectionService = mlConnectionService;
}
[HttpPost("sendModel")]
@@ -159,6 +161,11 @@ namespace api.Controllers
return NotFound($"Model with name = {model.name} exisits");
else
{
+ FileModel fileModel = _fileService.getFile(model.fileId);
+ model.isPreProcess = false;
+ _modelService.Create(model);
+ _mlConnectionService.PreProcess(model, fileModel.path);
+ //return Ok();
if (existingModel == null)
_modelService.Create(model);
else
diff --git a/backend/api/api/Models/Model.cs b/backend/api/api/Models/Model.cs
index 376b0e0c..e4e66a86 100644
--- a/backend/api/api/Models/Model.cs
+++ b/backend/api/api/Models/Model.cs
@@ -38,7 +38,8 @@ namespace api.Models
public string[] metrics { get; set; }
public int epochs { get; set; }
-
+ public bool isPreProcess { get; set; }
+ public string fileId { get; set; }
//public NullValues[] nullValues { get; set; }
}
}
diff --git a/backend/api/api/Services/ExperimentService.cs b/backend/api/api/Services/ExperimentService.cs
index 712568d4..c9de233e 100644
--- a/backend/api/api/Services/ExperimentService.cs
+++ b/backend/api/api/Services/ExperimentService.cs
@@ -22,5 +22,10 @@ namespace api.Services
{
return _experiment.Find(exp=>exp._id == id).FirstOrDefault();
}
+
+ public void Update(string username, string name, Experiment experiment)
+ {
+ _experiment.ReplaceOne(experiment => experiment.username == username && experiment.name == name, experiment);
+ }
}
}
diff --git a/backend/api/api/Services/IMlConnectionService.cs b/backend/api/api/Services/IMlConnectionService.cs
index 8d7e207d..e1529cc5 100644
--- a/backend/api/api/Services/IMlConnectionService.cs
+++ b/backend/api/api/Services/IMlConnectionService.cs
@@ -9,6 +9,7 @@ namespace api.Services
Task PreProcess(Dataset dataset, string filePath);
Task PreProcess(Experiment experiment, string filePath);
Task PreProcess(Predictor predictor, string filePath);
+ Task PreProcess(Model model, string filePath);
//Task<Dataset> PreProcess(Dataset dataset, byte[] file, string filename);
}
} \ No newline at end of file
diff --git a/backend/api/api/Services/MlConnectionService.cs b/backend/api/api/Services/MlConnectionService.cs
index 3df22c4f..146afd85 100644
--- a/backend/api/api/Services/MlConnectionService.cs
+++ b/backend/api/api/Services/MlConnectionService.cs
@@ -40,5 +40,56 @@ namespace api.Services
return;
}
+
+ /*public async Task PreProcess(Experiment experiment, string filePath)//(Dataset dataset,byte[] file,string filename)
+ {
+ var request = new RestRequest("preprocess", Method.Post);
+ request.AddParameter("dataset", JsonConvert.SerializeObject(experiment));
+ //request.AddFile("file", file,filename);
+ request.AddFile("file", filePath);
+ request.AddHeader("Content-Type", "multipart/form-data");
+ var result = await this.client.ExecuteAsync(request);
+
+ Dataset newDataset = JsonConvert.DeserializeObject<Dataset>(result.Content);
+ newDataset.isPreProcess = true;
+ _experimentService.Update(newDataset);
+
+ return;
+
+ }
+
+ public async Task PreProcess(Predictor predictor, string filePath)//(Dataset dataset,byte[] file,string filename)
+ {
+ var request = new RestRequest("preprocess", Method.Post);
+ request.AddParameter("dataset", JsonConvert.SerializeObject(dataset));
+ //request.AddFile("file", file,filename);
+ request.AddFile("file", filePath);
+ request.AddHeader("Content-Type", "multipart/form-data");
+ var result = await this.client.ExecuteAsync(request);
+
+ Dataset newDataset = JsonConvert.DeserializeObject<Dataset>(result.Content);
+ newDataset.isPreProcess = true;
+ _datasetService.Update(newDataset);
+
+ return;
+
+ }
+
+ public async Task PreProcess(Model model, string filePath)//(Dataset dataset,byte[] file,string filename)
+ {
+ var request = new RestRequest("preprocess", Method.Post);
+ request.AddParameter("dataset", JsonConvert.SerializeObject(dataset));
+ //request.AddFile("file", file,filename);
+ request.AddFile("file", filePath);
+ request.AddHeader("Content-Type", "multipart/form-data");
+ var result = await this.client.ExecuteAsync(request);
+
+ Dataset newDataset = JsonConvert.DeserializeObject<Dataset>(result.Content);
+ newDataset.isPreProcess = true;
+ _datasetService.Update(newDataset);
+
+ return;
+
+ }*/
}
}