Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SMART
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
3
Issues
3
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
UNI-KLU
SMART
Commits
b243899f
Commit
b243899f
authored
3 years ago
by
Bogdan Mihai (ARTICONF student)
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Cleaned up pre deploy
parent
4f908524
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
21 additions
and
14 deletions
+21
-14
developers.py
.../federated-learning-microservice/app/routes/developers.py
+5
-1
swagger.yml
tools/federated-training/app/configs/swagger.yml
+2
-2
swagger_local.yml
tools/federated-training/app/configs/swagger_local.yml
+1
-1
developers.py
tools/federated-training/app/routes/developers.py
+0
-1
owners.py
tools/federated-training/app/routes/owners.py
+13
-9
No files found.
src/participation-hub/federated-learning-microservice/app/routes/developers.py
View file @
b243899f
...
@@ -27,13 +27,17 @@ def upload_and_train(use_case: str, developer_id: int):
...
@@ -27,13 +27,17 @@ def upload_and_train(use_case: str, developer_id: int):
#FORWARD TO GPU SERVER WITH IP AND PORT
#FORWARD TO GPU SERVER WITH IP AND PORT
#data = {'use_case' : use_case,
# 'developer_id' : developer_id}
url
=
f
'https://{network_constants.FEDERATED_TRAINING_HOSTNAME}:{network_constants.FEDERATED_TRAINING_REST_PORT}/api/Developers/use_cases/{use_case}/developer_id/{developer_id}/upload_and_train:'
url
=
f
'https://{network_constants.FEDERATED_TRAINING_HOSTNAME}:{network_constants.FEDERATED_TRAINING_REST_PORT}/api/Developers/use_cases/{use_case}/developer_id/{developer_id}/upload_and_train:'
#url= 'gpu3.itec.aau.at/home/itec/bogdan/Articonf/smart/tools/federated-training/app/routes/developers'
response
=
requests
.
post
(
response
=
requests
.
post
(
url
,
url
,
verify
=
False
,
verify
=
False
,
proxies
=
{
"http"
:
None
,
"https"
:
None
},
proxies
=
{
"http"
:
None
,
"https"
:
None
},
files
=
request
.
files
files
=
request
.
files
,
#data = data
)
)
return
response
return
response
...
...
This diff is collapsed.
Click to expand it.
tools/federated-training/app/configs/swagger.yml
View file @
b243899f
swagger
:
"
2.0"
swagger
:
"
2.0"
info
:
info
:
title
:
Federated
Lear
ning microservice
title
:
Federated
Trai
ning microservice
description
:
This is the documentation for the federated
lear
ning microservice.
description
:
This is the documentation for the federated
Trai
ning microservice.
version
:
"
1.0.0"
version
:
"
1.0.0"
consumes
:
consumes
:
...
...
This diff is collapsed.
Click to expand it.
tools/federated-training/app/configs/swagger_local.yml
View file @
b243899f
swagger
:
"
2.0"
swagger
:
"
2.0"
info
:
info
:
title
:
Federated
Lear
ning microservice
title
:
Federated
Trai
ning microservice
description
:
This is the documentation for the federated learning microservice.
description
:
This is the documentation for the federated learning microservice.
version
:
"
1.0.0"
version
:
"
1.0.0"
...
...
This diff is collapsed.
Click to expand it.
tools/federated-training/app/routes/developers.py
View file @
b243899f
...
@@ -34,7 +34,6 @@ def upload_and_train(use_case: str, developer_id: int):
...
@@ -34,7 +34,6 @@ def upload_and_train(use_case: str, developer_id: int):
#file_dict = request.files
#file_dict = request.files
#db_File_True = file_dict["dataset_file1"]
#db_File_True = file_dict["dataset_file1"]
#db_File_False = file_dict["dataset_file2"]
#db_File_False = file_dict["dataset_file2"]
#TODO IMPLEMENT HERE
#THEN start processing
#THEN start processing
last_train_metrics
=
main_proc
.
start_processing
(
use_case
,
developer_id
)
last_train_metrics
=
main_proc
.
start_processing
(
use_case
,
developer_id
)
...
...
This diff is collapsed.
Click to expand it.
tools/federated-training/app/routes/owners.py
View file @
b243899f
...
@@ -12,7 +12,7 @@ def last(use_case: str):
...
@@ -12,7 +12,7 @@ def last(use_case: str):
bottom
=
df
.
tail
(
1
)
bottom
=
df
.
tail
(
1
)
bottom
=
bottom
.
to_json
(
orient
=
"records"
)
bottom
=
bottom
.
to_json
(
orient
=
"records"
)
print
(
bottom
[
1
:
-
1
])
print
(
bottom
[
1
:
-
1
])
metricsJson
=
bottom
[
1
:
-
1
]
#remove the
list [ { a: "1"} ...
]
metricsJson
=
bottom
[
1
:
-
1
]
#remove the
paranthesis of the list to make a dict [ { a: "1" , ... }
]
return
Response
(
status
=
200
,
response
=
metricsJson
)
return
Response
(
status
=
200
,
response
=
metricsJson
)
except
Exception
as
e
:
except
Exception
as
e
:
print
(
e
)
print
(
e
)
...
@@ -22,6 +22,7 @@ def last(use_case: str):
...
@@ -22,6 +22,7 @@ def last(use_case: str):
def
upload_and_train
(
use_case
:
str
):
def
upload_and_train
(
use_case
:
str
):
use_case_path
=
'./processing/'
+
use_case
+
'/'
use_case_path
=
'./processing/'
+
use_case
+
'/'
default_path
=
'processing/default/'
#Remove old files
#Remove old files
try
:
try
:
if
os
.
path
.
exists
(
use_case_path
):
if
os
.
path
.
exists
(
use_case_path
):
...
@@ -31,20 +32,23 @@ def upload_and_train(use_case: str):
...
@@ -31,20 +32,23 @@ def upload_and_train(use_case: str):
except
OSError
as
error
:
except
OSError
as
error
:
print
(
error
)
print
(
error
)
return
Response
(
status
=
400
,
response
=
"Error occured when deleteing the old use_case directory"
)
return
Response
(
status
=
400
,
response
=
"Error occured when deleteing the old use_case directory"
)
#Start a new implementation of the model.
#Start a new implementation of the model.
#TODO: get the python files and create them locally in the {use_case} folder
try
:
try
:
os
.
mkdir
(
use_case_path
)
os
.
mkdir
(
use_case_path
)
#COPY DEFAULT FILES
#COPY DEFAULT FILES
default_path
=
'processing/default/'
use_case_path
+=
'/'
shutil
.
copyfile
(
default_path
+
'main_proc.py'
,
use_case_path
+
'main_proc.py'
)
shutil
.
copyfile
(
default_path
+
'main_proc.py'
,
use_case_path
+
'main_proc.py'
)
shutil
.
copyfile
(
default_path
+
'__init__.py'
,
use_case_path
+
'__init__.py'
)
shutil
.
copyfile
(
default_path
+
'__init__.py'
,
use_case_path
+
'__init__.py'
)
shutil
.
copyfile
(
default_path
+
'checkpoint_manager.py'
,
use_case_path
+
'checkpoint_manager.py'
)
shutil
.
copyfile
(
default_path
+
'checkpoint_manager.py'
,
use_case_path
+
'checkpoint_manager.py'
)
shutil
.
copyfile
(
default_path
+
'federated_algorithm.py'
,
use_case_path
+
'federated_algorithm.py'
)
shutil
.
copyfile
(
default_path
+
'federated_algorithm.py'
,
use_case_path
+
'federated_algorithm.py'
)
#TODO: get the python files and create them locally in the {use_case} folder
# copy dataset_file1 into use_case_path+'db/'
# copy dataset_file1 into use_case_path+'db/'
# copy preprocessing into use_case_path
# copy global_hyperparams into use_case_path
# copy model into use_case_path
#COPY flask files
#COPY flask files
#use flask? request.files.getlist('filename')[0] ???
#use flask? request.files.getlist('filename')[0] ???
...
@@ -53,9 +57,9 @@ def upload_and_train(use_case: str):
...
@@ -53,9 +57,9 @@ def upload_and_train(use_case: str):
return
Response
(
status
=
400
,
response
=
"Error occured when creating/copying the use_case files"
)
return
Response
(
status
=
400
,
response
=
"Error occured when creating/copying the use_case files"
)
#after the files are copied, start training
#TODO:
after the files are copied, start train
ing
#TODO:
check if training is work
ing
# should write to ledger.csv the last train metrics after 2-3 mins
use_case_path
=
'processing/'
+
use_case
+
'/'
use_case_path
=
'processing/'
+
use_case
+
'/'
sys
.
path
.
append
(
use_case_path
)
sys
.
path
.
append
(
use_case_path
)
import
main_proc
import
main_proc
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment