|
110 | 110 | " import micropip\n", |
111 | 111 | "\n", |
112 | 112 | " await micropip.install(\"mat3ra-api-examples\", deps=False)\n", |
113 | | - " await micropip.install(\"exabyte-api-client\")\n", |
114 | 113 | " from utils.jupyterlite import install_packages\n", |
115 | 114 | "\n", |
116 | | - " await install_packages(\"\")" |
| 115 | + " await install_packages(\"api_examples\")" |
117 | 116 | ], |
118 | 117 | "outputs": [], |
119 | 118 | "execution_count": null |
|
168 | 167 | "source": [ |
169 | 168 | "#### Materials\n", |
170 | 169 | "\n", |
171 | | - "Set queries to import materials from Materials Bank:\n", |
| 170 | + "Set parameters for the materials to be imported:\n", |
172 | 171 | "\n", |
173 | | - "- **TRAIN_MATERIAL_SI_QUERY**: Query to import Si materials.\n", |
174 | | - "- **TRAIN_MATERIAL_SIGE_QUERY**: Query to import SiGe materials.\n", |
175 | | - "- **TARGET_MATERIAL_GE_QUERY**: Query to import Ge materials." |
| 172 | + "- **TRAIN_MATERIAL_SI**: 1st material to be used for training the model (\"Si\").\n", |
| 173 | + "- **TRAIN_MATERIAL_GE**: 2nd material to be used for training the model (\"Ge\").\n", |
| 174 | + "- **TARGET_MATERIAL_SIGE**: Material to be used for predicting the properties (\"SiGe\")." |
176 | 175 | ] |
177 | 176 | }, |
178 | 177 | { |
|
181 | 180 | "id": "qeZIEenS2Qxb" |
182 | 181 | }, |
183 | 182 | "source": [ |
184 | | - "TRAIN_MATERIAL_SI_QUERY = {\"formula\": \"Si\"}\n", |
185 | | - "TRAIN_MATERIAL_SIGE_QUERY = {\"formula\": \"SiGe\"}\n", |
186 | | - "TARGET_MATERIAL_GE_QUERY = {\"formula\": \"Ge\"}" |
| 183 | + "TRAIN_MATERIAL_SI = \"Si\"\n", |
| 184 | + "TRAIN_MATERIAL_GE = \"Ge\"\n", |
| 185 | + "TARGET_MATERIAL_SIGE = \"SiGe\"" |
187 | 186 | ], |
188 | 187 | "outputs": [], |
189 | 188 | "execution_count": null |
|
314 | 313 | "id": "_JUT4f9E2Qxe" |
315 | 314 | }, |
316 | 315 | "source": [ |
317 | | - "band_gap_workflow_id = copy_bank_workflow_by_system_name(bank_workflow_endpoints, \"espresso-band-gap\", owner_id)\n", |
318 | | - "ml_train_workflow_id = copy_bank_workflow_by_system_name(bank_workflow_endpoints, \"exabyteml-ml-train-model\", owner_id)" |
| 316 | + "band_gap_workflow_id = copy_bank_workflow_by_system_name(bank_workflow_endpoints, \"espresso-band-gap\", OWNER_ID)\n", |
| 317 | + "ml_train_workflow_id = copy_bank_workflow_by_system_name(\n", |
| 318 | + " bank_workflow_endpoints, \"exabyteml-ml-linear-least-squares-train-model\", OWNER_ID\n", |
| 319 | + ")" |
319 | 320 | ], |
320 | 321 | "outputs": [], |
321 | 322 | "execution_count": null |
|
329 | 330 | "source": [ |
330 | 331 | "### Import materials\n", |
331 | 332 | "\n", |
332 | | - "Import materials from Materials Bank." |
| 333 | + "Import materials from Standata and create them in the account's materials collection." |
333 | 334 | ] |
334 | 335 | }, |
335 | 336 | { |
|
338 | 339 | "id": "t1dMm9ke2Qxe" |
339 | 340 | }, |
340 | 341 | "source": [ |
341 | | - "bank_train_materials_id_si = bank_material_endpoints.list(TRAIN_MATERIAL_SI_QUERY)[0][\"_id\"]\n", |
342 | | - "bank_train_materials_id_sige = bank_material_endpoints.list(TRAIN_MATERIAL_SIGE_QUERY)[0][\"_id\"]\n", |
343 | | - "bank_target_materials_id_ge = bank_material_endpoints.list(TARGET_MATERIAL_GE_QUERY)[0][\"_id\"]\n", |
| 342 | + "from mat3ra.standata.materials import Materials\n", |
| 343 | + "\n", |
| 344 | + "train_material_json_si = Materials.get_by_name_first_match(TRAIN_MATERIAL_SI)\n", |
| 345 | + "train_material_json_ge = Materials.get_by_name_first_match(TRAIN_MATERIAL_GE)\n", |
| 346 | + "target_material_json_sige = Materials.get_by_name_first_match(TARGET_MATERIAL_SIGE)\n", |
| 347 | + "\n", |
| 348 | + "train_material_id_si = material_endpoints.create(train_material_json_si, OWNER_ID)[\"_id\"]\n", |
| 349 | + "train_material_id_ge = material_endpoints.create(train_material_json_ge, OWNER_ID)[\"_id\"]\n", |
| 350 | + "target_material_id_sige = material_endpoints.create(target_material_json_sige, OWNER_ID)[\"_id\"]\n", |
344 | 351 | "\n", |
345 | | - "train_materials_id_si = bank_material_endpoints.copy(bank_train_materials_id_si, owner_id)[\"_id\"]\n", |
346 | | - "train_materials_id_sige = bank_material_endpoints.copy(bank_train_materials_id_sige, owner_id)[\"_id\"]\n", |
347 | | - "target_materials_id_ge = bank_material_endpoints.copy(bank_target_materials_id_ge, owner_id)[\"_id\"]\n", |
| 352 | + "train_material_si = material_endpoints.list({\"_id\": train_material_id_si})[0]\n", |
| 353 | + "train_material_ge = material_endpoints.list({\"_id\": train_material_id_ge})[0]\n", |
| 354 | + "target_material_sige = material_endpoints.list({\"_id\": target_material_id_sige})[0]\n", |
348 | 355 | "\n", |
349 | | - "train_materials = material_endpoints.list({\"_id\": {\"$in\": [train_materials_id_si, train_materials_id_sige]}})\n", |
350 | | - "target_materials = material_endpoints.list({\"_id\": target_materials_id_ge})" |
| 356 | + "train_materials = [train_material_ge, train_material_si]\n", |
| 357 | + "target_materials = [target_material_sige]" |
351 | 358 | ], |
352 | 359 | "outputs": [], |
353 | 360 | "execution_count": null |
|
372 | 379 | "source": [ |
373 | 380 | "compute = job_endpoints.get_compute(CLUSTER, PPN, NODES, QUEUE, TIME_LIMIT)\n", |
374 | 381 | "jobs = job_endpoints.create_by_ids(\n", |
375 | | - " train_materials, band_gap_workflow_id, project_id, JOB_NAME_PREFIX, owner_id, compute\n", |
| 382 | + " train_materials, band_gap_workflow_id, project_id, JOB_NAME_PREFIX, OWNER_ID, compute\n", |
376 | 383 | ")" |
377 | 384 | ], |
378 | 385 | "outputs": [], |
|
0 commit comments