Skip to content

Commit 4d2225c

Browse files
authored
Merge pull request #22 from BethanyJep/main
final code updates for customization
2 parents 0edb78c + 44d4969 commit 4d2225c

13 files changed

+2130
-267
lines changed

labs/3-customization/31-basic-finetuning.ipynb

Lines changed: 60 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -262,8 +262,8 @@
262262
"name": "stdout",
263263
"output_type": "stream",
264264
"text": [
265-
"Training file ID: file-68845d9da06f4ff8bfccfdf787ee2c7e\n",
266-
"Validation file ID: file-e5ac2bf890ae4741970222a616e6c088\n"
265+
"Training file ID: file-adcc886357074524b0158c9b28e75c23\n",
266+
"Validation file ID: file-2c40fbf6d80647b2ac0181e911b9e41c\n"
267267
]
268268
}
269269
],
@@ -296,19 +296,19 @@
296296
},
297297
{
298298
"cell_type": "code",
299-
"execution_count": 8,
299+
"execution_count": 7,
300300
"id": "86ddf91d",
301301
"metadata": {},
302302
"outputs": [
303303
{
304304
"name": "stdout",
305305
"output_type": "stream",
306306
"text": [
307-
"Job ID: ftjob-749fe8acedac4835b95639ae176fa47b\n",
308-
"Status: ftjob-749fe8acedac4835b95639ae176fa47b\n",
307+
"Job ID: ftjob-9a89ce8f64994a46befa93136433c43e\n",
308+
"Status: ftjob-9a89ce8f64994a46befa93136433c43e\n",
309309
"{\n",
310-
" \"id\": \"ftjob-749fe8acedac4835b95639ae176fa47b\",\n",
311-
" \"created_at\": 1762286463,\n",
310+
" \"id\": \"ftjob-9a89ce8f64994a46befa93136433c43e\",\n",
311+
" \"created_at\": 1762435747,\n",
312312
" \"error\": null,\n",
313313
" \"fine_tuned_model\": null,\n",
314314
" \"finished_at\": null,\n",
@@ -324,9 +324,9 @@
324324
" \"seed\": 105,\n",
325325
" \"status\": \"pending\",\n",
326326
" \"trained_tokens\": null,\n",
327-
" \"training_file\": \"file-68845d9da06f4ff8bfccfdf787ee2c7e\",\n",
328-
" \"validation_file\": \"file-e5ac2bf890ae4741970222a616e6c088\",\n",
329-
" \"estimated_finish\": 1762287365,\n",
327+
" \"training_file\": \"file-adcc886357074524b0158c9b28e75c23\",\n",
328+
" \"validation_file\": \"file-2c40fbf6d80647b2ac0181e911b9e41c\",\n",
329+
" \"estimated_finish\": 1762436649,\n",
330330
" \"integrations\": null,\n",
331331
" \"metadata\": null,\n",
332332
" \"method\": null\n",
@@ -338,19 +338,18 @@
338338
"# Submit fine-tuning training job\n",
339339
"# Add a delay so the cell runs for about 1 minute\n",
340340
"import time\n",
341+
"time.sleep(60)\n",
341342
"\n",
342343
"# Note that the model you specify here must be one that can be fine-tuned.\n",
343344
"# Currently gpt-4o can be fine-tuned only in Sweden Central and North Central US\n",
344345
"# See: https://learn.microsoft.com/en-us/azure/ai-foundry/openai/how-to/fine-tuning?tabs=azure-openai&pivots=programming-language-python#prerequisites\n",
345346
"response = client.fine_tuning.jobs.create(\n",
346347
" training_file=training_file_id,\n",
347348
" validation_file=validation_file_id,\n",
348-
" model=\"gpt-4o\", # Enter base model name. Note that in Azure OpenAI the model name contains dashes and cannot contain dot/period characters.\n",
349+
" model=\"gpt-4o-2024-08-06\", # Enter base model name. Note that in Azure OpenAI the model name contains dashes and cannot contain dot/period characters.\n",
349350
" seed = 105, # seed parameter controls reproducibility of the fine-tuning job. If no seed is specified one will be generated automatically.\n",
350351
")\n",
351352
"\n",
352-
"time.sleep(60)\n",
353-
"\n",
354353
"job_id = response.id\n",
355354
"\n",
356355
"# You can use the job ID to monitor the status of the fine-tuning job.\n",
@@ -373,17 +372,17 @@
373372
},
374373
{
375374
"cell_type": "code",
376-
"execution_count": null,
375+
"execution_count": 8,
377376
"id": "f024bb0f",
378377
"metadata": {},
379378
"outputs": [
380379
{
381380
"name": "stdout",
382381
"output_type": "stream",
383382
"text": [
384-
"Fine-tuning job ftjob-153a8a4806f84480acba096c9cfd24f4 finished with status: succeeded\n",
383+
"Fine-tuning job ftjob-9a89ce8f64994a46befa93136433c43e finished with status: succeeded\n",
385384
"Checking other fine-tune jobs for this resource.\n",
386-
"Found 1 fine-tune jobs.\n"
385+
"Found 3 fine-tune jobs.\n"
387386
]
388387
}
389388
],
@@ -431,7 +430,7 @@
431430
},
432431
{
433432
"cell_type": "code",
434-
"execution_count": null,
433+
"execution_count": 9,
435434
"id": "ebe8fa88",
436435
"metadata": {},
437436
"outputs": [
@@ -442,44 +441,44 @@
442441
"{\n",
443442
" \"data\": [\n",
444443
" {\n",
445-
" \"id\": \"ftevent-978b59aa8f7b4d5699f24e4ebf63e3e9\",\n",
446-
" \"created_at\": 1762285152,\n",
444+
" \"id\": \"ftevent-6337f67454304675a4522961b1d4e650\",\n",
445+
" \"created_at\": 1762439853,\n",
447446
" \"level\": \"info\",\n",
448447
" \"message\": \"Training tokens billed: 8000\",\n",
449448
" \"object\": \"fine_tuning.job.event\",\n",
450449
" \"data\": null,\n",
451450
" \"type\": \"message\"\n",
452451
" },\n",
453452
" {\n",
454-
" \"id\": \"ftevent-16ff596841cf492a8e69de11591e6650\",\n",
455-
" \"created_at\": 1762285151,\n",
453+
" \"id\": \"ftevent-7e03223d12b14b409b3bf873ce2b1fe9\",\n",
454+
" \"created_at\": 1762439853,\n",
456455
" \"level\": \"info\",\n",
457456
" \"message\": \"Model Evaluation Passed.\",\n",
458457
" \"object\": \"fine_tuning.job.event\",\n",
459458
" \"data\": null,\n",
460459
" \"type\": \"message\"\n",
461460
" },\n",
462461
" {\n",
463-
" \"id\": \"ftevent-b6255ab17ed74b079f9c5023dd435d9e\",\n",
464-
" \"created_at\": 1762285151,\n",
462+
" \"id\": \"ftevent-9611c6358b3940be845726f3198a86f8\",\n",
463+
" \"created_at\": 1762439853,\n",
465464
" \"level\": \"info\",\n",
466-
" \"message\": \"Completed results file: file-7537f2e0e43c4982b345df363653865e\",\n",
465+
" \"message\": \"Completed results file: file-04cffffb55664b39bc9193f650dd991e\",\n",
467466
" \"object\": \"fine_tuning.job.event\",\n",
468467
" \"data\": null,\n",
469468
" \"type\": \"message\"\n",
470469
" },\n",
471470
" {\n",
472-
" \"id\": \"ftevent-bcf121c1b49d4e2e8386582ffaeed200\",\n",
473-
" \"created_at\": 1762285145,\n",
471+
" \"id\": \"ftevent-009808a1aef34f4baf91ce92bc7a4a65\",\n",
472+
" \"created_at\": 1762439824,\n",
474473
" \"level\": \"info\",\n",
475474
" \"message\": \"Job succeeded.\",\n",
476475
" \"object\": \"fine_tuning.job.event\",\n",
477476
" \"data\": null,\n",
478477
" \"type\": \"message\"\n",
479478
" },\n",
480479
" {\n",
481-
" \"id\": \"ftevent-808de1bd56fbf96808de1bd56fbf9680\",\n",
482-
" \"created_at\": 1762283265,\n",
480+
" \"id\": \"ftevent-808de1d3dc516b7808de1d3dc516b780\",\n",
481+
" \"created_at\": 1762438027,\n",
483482
" \"level\": \"info\",\n",
484483
" \"message\": \"Step 120: training loss=1.3205604553222656\",\n",
485484
" \"object\": \"fine_tuning.job.event\",\n",
@@ -495,8 +494,8 @@
495494
" \"type\": \"metrics\"\n",
496495
" },\n",
497496
" {\n",
498-
" \"id\": \"ftevent-808de1bd569c9b5808de1bd569c9b580\",\n",
499-
" \"created_at\": 1762283255,\n",
497+
" \"id\": \"ftevent-808de1d3dbf20d6808de1d3dbf20d680\",\n",
498+
" \"created_at\": 1762438017,\n",
500499
" \"level\": \"info\",\n",
501500
" \"message\": \"Step 110: training loss=1.7486391067504883\",\n",
502501
" \"object\": \"fine_tuning.job.event\",\n",
@@ -510,8 +509,8 @@
510509
" \"type\": \"metrics\"\n",
511510
" },\n",
512511
" {\n",
513-
" \"id\": \"ftevent-808de1bd563d3d4808de1bd563d3d480\",\n",
514-
" \"created_at\": 1762283245,\n",
512+
" \"id\": \"ftevent-808de1d3db92af5808de1d3db92af580\",\n",
513+
" \"created_at\": 1762438007,\n",
515514
" \"level\": \"info\",\n",
516515
" \"message\": \"Step 100: training loss=1.3873664140701294\",\n",
517516
" \"object\": \"fine_tuning.job.event\",\n",
@@ -525,8 +524,8 @@
525524
" \"type\": \"metrics\"\n",
526525
" },\n",
527526
" {\n",
528-
" \"id\": \"ftevent-808de1bd55dddf3808de1bd55dddf380\",\n",
529-
" \"created_at\": 1762283235,\n",
527+
" \"id\": \"ftevent-808de1d3db33514808de1d3db3351480\",\n",
528+
" \"created_at\": 1762437997,\n",
530529
" \"level\": \"info\",\n",
531530
" \"message\": \"Step 90: training loss=1.6716580390930176\",\n",
532531
" \"object\": \"fine_tuning.job.event\",\n",
@@ -540,8 +539,8 @@
540539
" \"type\": \"metrics\"\n",
541540
" },\n",
542541
" {\n",
543-
" \"id\": \"ftevent-808de1bd557e812808de1bd557e81280\",\n",
544-
" \"created_at\": 1762283225,\n",
542+
" \"id\": \"ftevent-808de1d3dad3f33808de1d3dad3f3380\",\n",
543+
" \"created_at\": 1762437987,\n",
545544
" \"level\": \"info\",\n",
546545
" \"message\": \"Step 80: training loss=1.714286208152771\",\n",
547546
" \"object\": \"fine_tuning.job.event\",\n",
@@ -557,8 +556,8 @@
557556
" \"type\": \"metrics\"\n",
558557
" },\n",
559558
" {\n",
560-
" \"id\": \"ftevent-808de1bd551f231808de1bd551f23180\",\n",
561-
" \"created_at\": 1762283215,\n",
559+
" \"id\": \"ftevent-808de1d3da74952808de1d3da7495280\",\n",
560+
" \"created_at\": 1762437977,\n",
562561
" \"level\": \"info\",\n",
563562
" \"message\": \"Step 70: training loss=1.7350307703018188\",\n",
564563
" \"object\": \"fine_tuning.job.event\",\n",
@@ -595,7 +594,7 @@
595594
},
596595
{
597596
"cell_type": "code",
598-
"execution_count": null,
597+
"execution_count": 10,
599598
"id": "7088ebaf",
600599
"metadata": {},
601600
"outputs": [
@@ -606,10 +605,10 @@
606605
"{\n",
607606
" \"data\": [\n",
608607
" {\n",
609-
" \"id\": \"ftchkpt-ba4b5bc790cc4aa5b2e371a15a9d55c7\",\n",
610-
" \"created_at\": 1762283826,\n",
611-
" \"fine_tuned_model_checkpoint\": \"gpt-4o-2024-08-06.ft-153a8a4806f84480acba096c9cfd24f4\",\n",
612-
" \"fine_tuning_job_id\": \"ftjob-153a8a4806f84480acba096c9cfd24f4\",\n",
608+
" \"id\": \"ftchkpt-657bc04e673a4859aa78f382e08952df\",\n",
609+
" \"created_at\": 1762438554,\n",
610+
" \"fine_tuned_model_checkpoint\": \"gpt-4o-2024-08-06.ft-9a89ce8f64994a46befa93136433c43e\",\n",
611+
" \"fine_tuning_job_id\": \"ftjob-9a89ce8f64994a46befa93136433c43e\",\n",
613612
" \"metrics\": {\n",
614613
" \"full_valid_loss\": 1.5513120925787725,\n",
615614
" \"full_valid_mean_token_accuracy\": 0.6022727272727273,\n",
@@ -623,10 +622,10 @@
623622
" \"step_number\": 120\n",
624623
" },\n",
625624
" {\n",
626-
" \"id\": \"ftchkpt-077392233af442378e8b21f4a993ddb3\",\n",
627-
" \"created_at\": 1762283632,\n",
628-
" \"fine_tuned_model_checkpoint\": \"gpt-4o-2024-08-06.ft-153a8a4806f84480acba096c9cfd24f4:ckpt-step-80\",\n",
629-
" \"fine_tuning_job_id\": \"ftjob-153a8a4806f84480acba096c9cfd24f4\",\n",
625+
" \"id\": \"ftchkpt-814049bb70924860b0ff629c7de9b878\",\n",
626+
" \"created_at\": 1762438363,\n",
627+
" \"fine_tuned_model_checkpoint\": \"gpt-4o-2024-08-06.ft-9a89ce8f64994a46befa93136433c43e:ckpt-step-80\",\n",
628+
" \"fine_tuning_job_id\": \"ftjob-9a89ce8f64994a46befa93136433c43e\",\n",
630629
" \"metrics\": {\n",
631630
" \"full_valid_loss\": 1.714390501831517,\n",
632631
" \"full_valid_mean_token_accuracy\": 0.5681818181818182,\n",
@@ -640,10 +639,10 @@
640639
" \"step_number\": 80\n",
641640
" },\n",
642641
" {\n",
643-
" \"id\": \"ftchkpt-93bb67e237cc4ac49ea87647b9608974\",\n",
644-
" \"created_at\": 1762283434,\n",
645-
" \"fine_tuned_model_checkpoint\": \"gpt-4o-2024-08-06.ft-153a8a4806f84480acba096c9cfd24f4:ckpt-step-40\",\n",
646-
" \"fine_tuning_job_id\": \"ftjob-153a8a4806f84480acba096c9cfd24f4\",\n",
642+
" \"id\": \"ftchkpt-5e96236e41eb41bd9befaf132ff6e22a\",\n",
643+
" \"created_at\": 1762438170,\n",
644+
" \"fine_tuned_model_checkpoint\": \"gpt-4o-2024-08-06.ft-9a89ce8f64994a46befa93136433c43e:ckpt-step-40\",\n",
645+
" \"fine_tuning_job_id\": \"ftjob-9a89ce8f64994a46befa93136433c43e\",\n",
647646
" \"metrics\": {\n",
648647
" \"full_valid_loss\": 2.319527850006566,\n",
649648
" \"full_valid_mean_token_accuracy\": 0.4356060606060606,\n",
@@ -686,7 +685,7 @@
686685
},
687686
{
688687
"cell_type": "code",
689-
"execution_count": null,
688+
"execution_count": 11,
690689
"id": "4a77c5b8",
691690
"metadata": {},
692691
"outputs": [
@@ -695,11 +694,11 @@
695694
"output_type": "stream",
696695
"text": [
697696
"{\n",
698-
" \"id\": \"ftjob-153a8a4806f84480acba096c9cfd24f4\",\n",
699-
" \"created_at\": 1762280586,\n",
697+
" \"id\": \"ftjob-9a89ce8f64994a46befa93136433c43e\",\n",
698+
" \"created_at\": 1762435747,\n",
700699
" \"error\": null,\n",
701-
" \"fine_tuned_model\": \"gpt-4o-2024-08-06.ft-153a8a4806f84480acba096c9cfd24f4\",\n",
702-
" \"finished_at\": 1762285152,\n",
700+
" \"fine_tuned_model\": \"gpt-4o-2024-08-06.ft-9a89ce8f64994a46befa93136433c43e\",\n",
701+
" \"finished_at\": 1762439854,\n",
703702
" \"hyperparameters\": {\n",
704703
" \"batch_size\": 1,\n",
705704
" \"learning_rate_multiplier\": 1.0,\n",
@@ -709,14 +708,14 @@
709708
" \"object\": \"fine_tuning.job\",\n",
710709
" \"organization_id\": null,\n",
711710
" \"result_files\": [\n",
712-
" \"file-7537f2e0e43c4982b345df363653865e\"\n",
711+
" \"file-04cffffb55664b39bc9193f650dd991e\"\n",
713712
" ],\n",
714713
" \"seed\": 105,\n",
715714
" \"status\": \"succeeded\",\n",
716715
" \"trained_tokens\": 10485,\n",
717-
" \"training_file\": \"file-2586012805e944559349b1d4f1c87d6d\",\n",
718-
" \"validation_file\": \"file-764e755d5a034ea8b8ecc7a5ce051527\",\n",
719-
" \"estimated_finish\": 1762282555,\n",
716+
" \"training_file\": \"file-adcc886357074524b0158c9b28e75c23\",\n",
717+
" \"validation_file\": \"file-2c40fbf6d80647b2ac0181e911b9e41c\",\n",
718+
" \"estimated_finish\": 1762437316,\n",
720719
" \"integrations\": null,\n",
721720
" \"metadata\": null,\n",
722721
" \"method\": null\n",
@@ -814,7 +813,7 @@
814813
],
815814
"metadata": {
816815
"kernelspec": {
817-
"display_name": ".venv",
816+
"display_name": "Python 3",
818817
"language": "python",
819818
"name": "python3"
820819
},

0 commit comments

Comments
 (0)