From 89d4226ea6c643d62340d72ee545403cb1215c4e Mon Sep 17 00:00:00 2001 From: IDONTSUDO Date: Thu, 2 May 2024 17:57:58 +0300 Subject: [PATCH] progress --- .../domain/exec_weights_process_scenario.ts | 15 +++++++++------ web_p/blender.py | 2 -- web_p/blender/assets/assets.json | 2 +- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/server/src/features/weights/domain/exec_weights_process_scenario.ts b/server/src/features/weights/domain/exec_weights_process_scenario.ts index 42192be..5e6e0f8 100644 --- a/server/src/features/weights/domain/exec_weights_process_scenario.ts +++ b/server/src/features/weights/domain/exec_weights_process_scenario.ts @@ -16,23 +16,26 @@ export class ExecWeightProcessScenario extends CallbackStrategyWithIdQuery { return (await new IsHaveActiveProcessUseCase().call()).map(async () => { await WeightDBModel.findById(id).updateOne({ processStatus: "RUN" }); return match(model.processStatus) - .with("exec", "RUN", "none", () => this.exec(id, model, false)) + .with("exec", "RUN", "none", () => this.exec(id, model)) .with("exec", "RUN", () => this.exec(id, model, true)) .otherwise(() => Result.error(`model status is ${model.processStatus}`)); }); }); - exec = (id: string, model: IWeightModel, preTrain: boolean) => + exec = (id: string, model: IWeightModel, preTrain?: boolean) => match(typeof model.project === "object" && typeof model.datasetId === "object") .returnType() .with(true, async () => { if (typeof model.project === "object" && typeof model.datasetId === "object") { - console.log( - `python3 $PYTHON_EDUCATION --path ${model.project.rootDir}/${FolderStructure.datasets} --name ${model.name} --datasetName ${model.datasetId.name} --outpath ${model.project.rootDir}/${FolderStructure.weights} --type ${model.datasetId.formBuilder.output.typedataset} --epoch ${model.epoch} --pretrain ${preTrain}` - ); + let execCommand = `python3 $PYTHON_EDUCATION --path ${model.project.rootDir}/${FolderStructure.datasets} --name ${model.name} --datasetName ${model.datasetId.name} --outpath ${model.project.rootDir}/${FolderStructure.weights} --type ${model.datasetId.formBuilder.output.typedataset} --epoch ${model.epoch}`; + + if (preTrain) { + execCommand += ` --pretrain`; + } + console.log(execCommand); return await new ExecProcessUseCase().call( `${model.project.rootDir}/`, - `python3 $PYTHON_EDUCATION --path ${model.project.rootDir}/${FolderStructure.datasets} --name ${model.name} --datasetName ${model.datasetId.name} --outpath ${model.project.rootDir}/${FolderStructure.weights} --type ${model.datasetId.formBuilder.output.typedataset} --epoch ${model.epoch} --pretrain ${preTrain}`, + execCommand, id, new ProcessWatcherAndDatabaseUpdateService(id as unknown as ObjectId, WeightDBModel) ); diff --git a/web_p/blender.py b/web_p/blender.py index 622a840..0b26062 100644 --- a/web_p/blender.py +++ b/web_p/blender.py @@ -8,8 +8,6 @@ args = parser.parse_args() def copy_and_move_folder(src, dst): try: - if os.path.exists(src) is False: - shutil.rmtree(src) shutil.copytree(src, dst) print(f"Folder {src} successfully copied") except shutil.Error as e: diff --git a/web_p/blender/assets/assets.json b/web_p/blender/assets/assets.json index f661cbb..fb9ae8f 100644 --- a/web_p/blender/assets/assets.json +++ b/web_p/blender/assets/assets.json @@ -1,6 +1,6 @@ { "assets": [ - { "name": "bear_holder", "mesh": "./mesh/fork.stl", "image": "./images/bear_holder_220425.png" }, + { "name": "fork", "mesh": "./mesh/fork.stl", "image": "./images/bear_holder_220425.png" }, { "name": "bear_holder1", "mesh": "./mesh/fork.stl", "image": "./images/bear_holder_220425.png" } ] }