|
85 | 85 | "import oci\n",
|
86 | 86 | "import ads\n",
|
87 | 87 | "import os\n",
|
88 |
| - "from os import environ\n", |
89 |
| - "from ads.catalog.project import ProjectCatalog\n", |
90 |
| - "\n", |
91 |
| - "ads.set_auth(auth='resource_principal')" |
| 88 | + "from os import environ" |
92 | 89 | ]
|
93 | 90 | },
|
94 | 91 | {
|
95 | 92 | "cell_type": "code",
|
96 | 93 | "execution_count": null,
|
97 |
| - "id": "7d72637e", |
| 94 | + "id": "f841d08d", |
98 | 95 | "metadata": {
|
99 | 96 | "vscode": {
|
100 | 97 | "languageId": "python"
|
101 | 98 | }
|
102 | 99 | },
|
103 | 100 | "outputs": [],
|
104 | 101 | "source": [
|
105 |
| - "# make sure there is access to the project and compartment\n", |
106 |
| - "compartment_id = os.environ['NB_SESSION_COMPARTMENT_OCID']\n", |
107 |
| - "pc = ProjectCatalog(compartment_id=compartment_id)\n", |
108 |
| - "pc.list_projects()" |
| 102 | + "if 'NB_SESSION_COMPARTMENT_OCID' in os.environ:\n", |
| 103 | + " # using the notebook's compartment if running on OCI Data Science Notebook Session\n", |
| 104 | + " compartment_id = os.environ['NB_SESSION_COMPARTMENT_OCID']\n", |
| 105 | + "else:\n", |
| 106 | + " # set the compartment OCID if you are working locally\n", |
| 107 | + " compartment_id = '<YOUR_COMPARTMENT_OCID>'\n", |
| 108 | + "print('compartment OCID = ', compartment_id)" |
| 109 | + ] |
| 110 | + }, |
| 111 | + { |
| 112 | + "cell_type": "code", |
| 113 | + "execution_count": null, |
| 114 | + "id": "ec3398d8", |
| 115 | + "metadata": { |
| 116 | + "vscode": { |
| 117 | + "languageId": "python" |
| 118 | + } |
| 119 | + }, |
| 120 | + "outputs": [], |
| 121 | + "source": [ |
| 122 | + "# this will work whether working on a local machine (using API key) or in OCI Notebook Session (using Resource Principal)\n", |
| 123 | + "if \"OCI_RESOURCE_PRINCIPAL_VERSION\" in os.environ:\n", |
| 124 | + " # Use resource principal\n", |
| 125 | + " print(\"using Resource Principal for auth\")\n", |
| 126 | + " ads.set_auth(auth=\"resource_principal\")\n", |
| 127 | + "else:\n", |
| 128 | + " # Use api_key with config file\n", |
| 129 | + " print(\"using API key for auth\")\n", |
| 130 | + " ads.set_auth(auth=\"api_key\") " |
109 | 131 | ]
|
110 | 132 | },
|
111 | 133 | {
|
|
145 | 167 | "log_group_id = \"<YOUR_LOG_GROUP_ID>\""
|
146 | 168 | ]
|
147 | 169 | },
|
148 |
| - { |
149 |
| - "cell_type": "code", |
150 |
| - "execution_count": null, |
151 |
| - "id": "19a7855a", |
152 |
| - "metadata": { |
153 |
| - "vscode": { |
154 |
| - "languageId": "python" |
155 |
| - } |
156 |
| - }, |
157 |
| - "outputs": [], |
158 |
| - "source": [ |
159 |
| - "data_location = \"<YOUR_OBJECT_STORAGE_LOCATION_TO_PASS_DATA>\" # use: 'oci://<bucket>@<workspace>/'" |
160 |
| - ] |
161 |
| - }, |
162 | 170 | {
|
163 | 171 | "cell_type": "code",
|
164 | 172 | "execution_count": null,
|
|
254 | 262 | " \"environmentVariables\": {\n",
|
255 | 263 | " \"PIPELINE_STEP_RUN_ENTRYPOINT\": \"employee-attr-dataproc.py\",\n",
|
256 | 264 | " \"CONDA_ENV_TYPE\": \"service\",\n",
|
257 |
| - " \"CONDA_ENV_SLUG\": \"generalml_p37_cpu_v1\",\n", |
258 |
| - " \"DATA_LOCATION\": data_location\n", |
| 265 | + " \"CONDA_ENV_SLUG\": \"generalml_p37_cpu_v1\"\n", |
259 | 266 | " }\n",
|
260 | 267 | " }\n",
|
261 | 268 | " },\n",
|
|
273 | 280 | " \"environmentVariables\": {\n",
|
274 | 281 | " \"PIPELINE_STEP_RUN_ENTRYPOINT\": \"employee-attr-train-lr.py\",\n",
|
275 | 282 | " \"CONDA_ENV_TYPE\": \"service\",\n",
|
276 |
| - " \"CONDA_ENV_SLUG\": \"generalml_p37_cpu_v1\",\n", |
277 |
| - " \"DATA_LOCATION\": data_location\n", |
| 283 | + " \"CONDA_ENV_SLUG\": \"generalml_p37_cpu_v1\"\n", |
278 | 284 | " }\n",
|
279 | 285 | " },\n",
|
280 | 286 | " \"dependsOn\": [\"data_processing\"]\n",
|
|
293 | 299 | " \"environmentVariables\": {\n",
|
294 | 300 | " \"PIPELINE_STEP_RUN_ENTRYPOINT\": \"employee-attr-train-rf.py\",\n",
|
295 | 301 | " \"CONDA_ENV_TYPE\": \"service\",\n",
|
296 |
| - " \"CONDA_ENV_SLUG\": \"generalml_p37_cpu_v1\",\n", |
297 |
| - " \"DATA_LOCATION\": data_location\n", |
| 302 | + " \"CONDA_ENV_SLUG\": \"generalml_p37_cpu_v1\"\n", |
298 | 303 | " }\n",
|
299 | 304 | " },\n",
|
300 | 305 | " \"dependsOn\": [\"data_processing\"]\n",
|
|
313 | 318 | " \"environmentVariables\": {\n",
|
314 | 319 | " \"PIPELINE_STEP_RUN_ENTRYPOINT\": \"employee-attr-train-xgb.py\",\n",
|
315 | 320 | " \"CONDA_ENV_TYPE\": \"service\",\n",
|
316 |
| - " \"CONDA_ENV_SLUG\": \"generalml_p37_cpu_v1\",\n", |
317 |
| - " \"DATA_LOCATION\": data_location\n", |
| 321 | + " \"CONDA_ENV_SLUG\": \"generalml_p37_cpu_v1\"\n", |
318 | 322 | " }\n",
|
319 | 323 | " },\n",
|
320 | 324 | " \"dependsOn\": [\"data_processing\"]\n",
|
|
333 | 337 | " \"environmentVariables\": {\n",
|
334 | 338 | " \"PIPELINE_STEP_RUN_ENTRYPOINT\": \"employee-attr-eval-deploy.py\",\n",
|
335 | 339 | " \"CONDA_ENV_TYPE\": \"service\",\n",
|
336 |
| - " \"CONDA_ENV_SLUG\": \"generalml_p37_cpu_v1\",\n", |
337 |
| - " \"DATA_LOCATION\": data_location\n", |
| 340 | + " \"CONDA_ENV_SLUG\": \"generalml_p37_cpu_v1\"\n", |
338 | 341 | " }\n",
|
339 | 342 | " },\n",
|
340 | 343 | " \"dependsOn\": [\"train_logistic_regression\", \"train_random_forest\", \"train_xgboost\"]\n",
|
|
410 | 413 | "for name in steps_names_and_artifacts:\n",
|
411 | 414 | " fl = open(steps_names_and_artifacts[name], \"rb\")\n",
|
412 | 415 | " ret = data_science_client.create_step_artifact(pipeline_id, name, fl, content_disposition=f\"attachment; filename={steps_names_and_artifacts[name]}\")\n",
|
413 |
| - " print(\"OK\" if ret.status==204 else ret.status) # 204 is ok" |
| 416 | + " print(f\"{steps_names_and_artifacts[name]}: OK\" if ret.status==204 else f\"{steps_names_and_artifacts[name]}: {ret.status}\") # 204 is ok" |
414 | 417 | ]
|
415 | 418 | },
|
416 | 419 | {
|
|
452 | 455 | "pipeline_run_name = f\"pipeline-run-{randrange(1000,9999)}\""
|
453 | 456 | ]
|
454 | 457 | },
|
| 458 | + { |
| 459 | + "cell_type": "code", |
| 460 | + "execution_count": null, |
| 461 | + "id": "ac586f6b", |
| 462 | + "metadata": { |
| 463 | + "vscode": { |
| 464 | + "languageId": "python" |
| 465 | + } |
| 466 | + }, |
| 467 | + "outputs": [], |
| 468 | + "source": [ |
| 469 | + "# uncomment the next line and set to the OCI Object Storage location to use for passing data. Make sure you have proper permissions.\n", |
| 470 | + "#data_location = \"<YOUR_OBJECT_STORAGE_BUCKET>\" # use: 'oci://<bucket>@<workspace>/'" |
| 471 | + ] |
| 472 | + }, |
455 | 473 | {
|
456 | 474 | "cell_type": "code",
|
457 | 475 | "execution_count": null,
|
|
0 commit comments