From the uDemy course on LLM engineering.
https://www.udemy.com/course/llm-engineering-master-ai-and-large-language-models
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
294 lines
8.0 KiB
294 lines
8.0 KiB
{ |
|
"cells": [ |
|
{ |
|
"cell_type": "code", |
|
"execution_count": 1, |
|
"id": "56297249-4a8c-4e67-b8c3-a0d8652c104e", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"import modal" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": 2, |
|
"id": "0d240622-8422-4c99-8464-c04d063e4cb6", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"# !modal setup" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": 3, |
|
"id": "3b133701-f550-44a1-a67f-eb7ccc4769a9", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"from hello import app, hello" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": 4, |
|
"id": "0f3f73ae-1295-49f3-9099-b8b41fc3429b", |
|
"metadata": {}, |
|
"outputs": [ |
|
{ |
|
"data": { |
|
"text/plain": [ |
|
"'Hello from Seaport, New York, US!!'" |
|
] |
|
}, |
|
"execution_count": 4, |
|
"metadata": {}, |
|
"output_type": "execute_result" |
|
} |
|
], |
|
"source": [ |
|
"with app.run(show_progress=False):\n", |
|
" reply=hello.local()\n", |
|
"reply" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": 5, |
|
"id": "c1d8c6f9-edc7-4e52-9b3a-c07d7cff1ac7", |
|
"metadata": {}, |
|
"outputs": [ |
|
{ |
|
"data": { |
|
"text/plain": [ |
|
"'Hello from Frankfurt am Main, Hesse, DE!!'" |
|
] |
|
}, |
|
"execution_count": 5, |
|
"metadata": {}, |
|
"output_type": "execute_result" |
|
} |
|
], |
|
"source": [ |
|
"with app.run(show_progress=False):\n", |
|
" reply=hello.remote()\n", |
|
"reply" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": null, |
|
"id": "cb8b6c41-8259-4329-b1c4-a1f67d26d1be", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"import modal\n", |
|
"from llama import app, generate" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": null, |
|
"id": "db4a718a-d95d-4f61-9688-c9df21d88fe6", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"with modal.enable_output():\n", |
|
" with app.run():\n", |
|
" result=generate.remote(\"Life is a mystery, everyone must stand alone, I hear\")\n", |
|
"result" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": null, |
|
"id": "9a9a6844-29ec-4264-8e72-362d976b3968", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"import modal\n", |
|
"from pricer_ephemeral import app, price" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": null, |
|
"id": "50e6cf99-8959-4ae3-ba02-e325cb7fff94", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"with modal.enable_output():\n", |
|
" with app.run():\n", |
|
" result=price.remote(\"Quadcast HyperX condenser mic, connects via usb-c to your computer for crystal clear audio\")\n", |
|
"result" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": null, |
|
"id": "7f90d857-2f12-4521-bb90-28efd917f7d1", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"!modal deploy pricer_service" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": null, |
|
"id": "1dec70ff-1986-4405-8624-9bbbe0ce1f4a", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"pricer = modal.Function.lookup(\"pricer-service\", \"price\")" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": null, |
|
"id": "17776139-0d9e-4ad0-bcd0-82d3a92ca61f", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"pricer.remote(\"Quadcast HyperX condenser mic, connects via usb-c to your computer for crystal clear audio\")" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": null, |
|
"id": "58f5d19f-8ffc-496c-832b-04e0d5892f54", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"import modal" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": 1, |
|
"id": "f56d1e55-2a03-4ce2-bb47-2ab6b9175a02", |
|
"metadata": {}, |
|
"outputs": [ |
|
{ |
|
"name": "stdout", |
|
"output_type": "stream", |
|
"text": [ |
|
"\u001b[2K\u001b[34m⠸\u001b[0m Creating objects.....\n", |
|
"\u001b[38;5;244m└── \u001b[0m\u001b[34m⠋\u001b[0m Creating mount /Users/ed/dev/llm_engineering/week8/pricer_service2.py: \n", |
|
"\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[34m⠦\u001b[0m Creating objects...\n", |
|
"\u001b[38;5;244m└── \u001b[0m\u001b[34m⠸\u001b[0m Creating mount /Users/ed/dev/llm_engineering/week8/pricer_service2.py: \n", |
|
"\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[34m⠏\u001b[0m Creating objects...\n", |
|
"\u001b[38;5;244m└── \u001b[0m\u001b[34m⠦\u001b[0m Creating mount /Users/ed/dev/llm_engineering/week8/pricer_service2.py: \n", |
|
"\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[34m⠹\u001b[0m Creating objects...\n", |
|
"\u001b[38;5;244m├── \u001b[0m🔨 Created mount /Users/ed/dev/llm_engineering/week8/pricer_service2.py\n", |
|
"\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[34m⠴\u001b[0m Creating objects...load_model_to_folder.\n", |
|
"\u001b[38;5;244m├── \u001b[0m🔨 Created mount /Users/ed/dev/llm_engineering/week8/pricer_service2.py\n", |
|
"\u001b[38;5;244m├── \u001b[0m🔨 Created function Pricer.download_model_to_folder.\n", |
|
"\u001b[38;5;244m├── \u001b[0m🔨 Created function Pricer.*.\n", |
|
"\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[34m⠴\u001b[0m Creating objects...\n", |
|
"\u001b[38;5;244m├── \u001b[0m🔨 Created mount /Users/ed/dev/llm_engineering/week8/pricer_service2.py\n", |
|
"\u001b[38;5;244m├── \u001b[0m🔨 Created function Pricer.download_model_to_folder.\n", |
|
"\u001b[38;5;244m├── \u001b[0m🔨 Created function Pricer.*.\n", |
|
"\u001b[38;5;244m└── \u001b[0m🔨 Created function Pricer.price.\n", |
|
"\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[32m✓\u001b[0m Created objects.\n", |
|
"\u001b[38;5;244m├── \u001b[0m🔨 Created mount /Users/ed/dev/llm_engineering/week8/pricer_service2.py\n", |
|
"\u001b[38;5;244m├── \u001b[0m🔨 Created function Pricer.download_model_to_folder.\n", |
|
"\u001b[38;5;244m├── \u001b[0m🔨 Created function Pricer.*.\n", |
|
"\u001b[38;5;244m└── \u001b[0m🔨 Created function Pricer.price.\n", |
|
"\u001b[32m✓\u001b[0m App deployed in 1.570s! 🎉\n", |
|
"\n", |
|
"View Deployment: \u001b[35mhttps://modal.com/apps/ed-donner/main/deployed/pricer-service\u001b[0m\n" |
|
] |
|
} |
|
], |
|
"source": [ |
|
"!modal deploy pricer_service2" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": 2, |
|
"id": "9e19daeb-1281-484b-9d2f-95cc6fed2622", |
|
"metadata": {}, |
|
"outputs": [ |
|
{ |
|
"name": "stdout", |
|
"output_type": "stream", |
|
"text": [ |
|
"133.0\n" |
|
] |
|
} |
|
], |
|
"source": [ |
|
"\n", |
|
"import modal\n", |
|
"\n", |
|
"Pricer = modal.Cls.lookup(\"pricer-service\", \"Pricer\")\n", |
|
"pricer = Pricer()\n", |
|
"reply = pricer.price.remote(\"Quadcast HyperX condenser mic, connects via usb-c to your computer for crystal clear audio\")\n", |
|
"print(reply)" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": 9, |
|
"id": "ac331454-21e2-4b37-9602-4667006e34ee", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [ |
|
"reply = pricer.price.remote(\"iphone SE\")\n" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": 10, |
|
"id": "c3a71dcd-b71d-4c48-b0d9-3ac296d2046a", |
|
"metadata": {}, |
|
"outputs": [ |
|
{ |
|
"data": { |
|
"text/plain": [ |
|
"299.0" |
|
] |
|
}, |
|
"execution_count": 10, |
|
"metadata": {}, |
|
"output_type": "execute_result" |
|
} |
|
], |
|
"source": [ |
|
"reply" |
|
] |
|
}, |
|
{ |
|
"cell_type": "code", |
|
"execution_count": null, |
|
"id": "ba9aedca-6a7b-4d30-9f64-59d76f76fb6d", |
|
"metadata": {}, |
|
"outputs": [], |
|
"source": [] |
|
} |
|
], |
|
"metadata": { |
|
"kernelspec": { |
|
"display_name": "Python 3 (ipykernel)", |
|
"language": "python", |
|
"name": "python3" |
|
}, |
|
"language_info": { |
|
"codemirror_mode": { |
|
"name": "ipython", |
|
"version": 3 |
|
}, |
|
"file_extension": ".py", |
|
"mimetype": "text/x-python", |
|
"name": "python", |
|
"nbconvert_exporter": "python", |
|
"pygments_lexer": "ipython3", |
|
"version": "3.11.10" |
|
} |
|
}, |
|
"nbformat": 4, |
|
"nbformat_minor": 5 |
|
}
|
|
|