|
|
@ -962,7 +962,7 @@ |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"cell_type": "code", |
|
|
|
"cell_type": "code", |
|
|
|
"execution_count": 67, |
|
|
|
"execution_count": 69, |
|
|
|
"id": "f56d1e55-2a03-4ce2-bb47-2ab6b9175a02", |
|
|
|
"id": "f56d1e55-2a03-4ce2-bb47-2ab6b9175a02", |
|
|
|
"metadata": {}, |
|
|
|
"metadata": {}, |
|
|
|
"outputs": [ |
|
|
|
"outputs": [ |
|
|
@ -980,10 +980,16 @@ |
|
|
|
"\u001b[37m└── \u001b[0m\u001b[34m⠦\u001b[0m Creating mount \n", |
|
|
|
"\u001b[37m└── \u001b[0m\u001b[34m⠦\u001b[0m Creating mount \n", |
|
|
|
"\u001b[37m \u001b[0m/Users/craigprobus/Repos/ed-donner-class/llm_engineering/week8/pricer_servic\n", |
|
|
|
"\u001b[37m \u001b[0m/Users/craigprobus/Repos/ed-donner-class/llm_engineering/week8/pricer_servic\n", |
|
|
|
"\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[34m⠹\u001b[0m Creating objects...\n", |
|
|
|
"\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[34m⠹\u001b[0m Creating objects...\n", |
|
|
|
|
|
|
|
"\u001b[37m└── \u001b[0m\u001b[34m⠏\u001b[0m Creating mount \n", |
|
|
|
|
|
|
|
"\u001b[37m \u001b[0m/Users/craigprobus/Repos/ed-donner-class/llm_engineering/week8/pricer_servic\n", |
|
|
|
|
|
|
|
"\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[34m⠦\u001b[0m Creating objects...\n", |
|
|
|
|
|
|
|
"\u001b[37m└── \u001b[0m\u001b[34m⠹\u001b[0m Creating mount \n", |
|
|
|
|
|
|
|
"\u001b[37m \u001b[0m/Users/craigprobus/Repos/ed-donner-class/llm_engineering/week8/pricer_servic\n", |
|
|
|
|
|
|
|
"\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[1A\u001b[2K\u001b[34m⠏\u001b[0m Creating objects...\n", |
|
|
|
"\u001b[37m├── \u001b[0m🔨 Created mount \n", |
|
|
|
"\u001b[37m├── \u001b[0m🔨 Created mount \n", |
|
|
|
"\u001b[37m│ \u001b[0m/Users/craigprobus/Repos/ed-donner-class/llm_engineering/week8/pricer_servic\n", |
|
|
|
"\u001b[37m│ \u001b[0m/Users/craigprobus/Repos/ed-donner-class/llm_engineering/week8/pricer_servic\n", |
|
|
|
"\u001b[37m│ \u001b[0me2.py\n", |
|
|
|
"\u001b[37m│ \u001b[0me2.py\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[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[37m├── \u001b[0m🔨 Created mount \n", |
|
|
|
"\u001b[37m├── \u001b[0m🔨 Created mount \n", |
|
|
|
"\u001b[37m│ \u001b[0m/Users/craigprobus/Repos/ed-donner-class/llm_engineering/week8/pricer_servic\n", |
|
|
|
"\u001b[37m│ \u001b[0m/Users/craigprobus/Repos/ed-donner-class/llm_engineering/week8/pricer_servic\n", |
|
|
|
"\u001b[37m│ \u001b[0me2.py\n", |
|
|
|
"\u001b[37m│ \u001b[0me2.py\n", |
|
|
@ -993,7 +999,7 @@ |
|
|
|
"\u001b[37m│ \u001b[0m/Users/craigprobus/Repos/ed-donner-class/llm_engineering/week8/pricer_servic\n", |
|
|
|
"\u001b[37m│ \u001b[0m/Users/craigprobus/Repos/ed-donner-class/llm_engineering/week8/pricer_servic\n", |
|
|
|
"\u001b[37m│ \u001b[0me2.py\n", |
|
|
|
"\u001b[37m│ \u001b[0me2.py\n", |
|
|
|
"\u001b[37m└── \u001b[0m🔨 Created function Pricer.*.\n", |
|
|
|
"\u001b[37m└── \u001b[0m🔨 Created function Pricer.*.\n", |
|
|
|
"\u001b[32m✓\u001b[0m App deployed in 1.531s! 🎉\n", |
|
|
|
"\u001b[32m✓\u001b[0m App deployed in 1.981s! 🎉\n", |
|
|
|
"\n", |
|
|
|
"\n", |
|
|
|
"View Deployment: \u001b[35mhttps://modal.com/apps/craigprobus/main/deployed/pricer-service\u001b[0m\n" |
|
|
|
"View Deployment: \u001b[35mhttps://modal.com/apps/craigprobus/main/deployed/pricer-service\u001b[0m\n" |
|
|
|
] |
|
|
|
] |
|
|
@ -1006,27 +1012,15 @@ |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"cell_type": "code", |
|
|
|
"cell_type": "code", |
|
|
|
"execution_count": 68, |
|
|
|
"execution_count": 70, |
|
|
|
"id": "9e19daeb-1281-484b-9d2f-95cc6fed2622", |
|
|
|
"id": "9e19daeb-1281-484b-9d2f-95cc6fed2622", |
|
|
|
"metadata": {}, |
|
|
|
"metadata": {}, |
|
|
|
"outputs": [ |
|
|
|
"outputs": [ |
|
|
|
{ |
|
|
|
{ |
|
|
|
"ename": "RemoteError", |
|
|
|
"name": "stdout", |
|
|
|
"evalue": "", |
|
|
|
"output_type": "stream", |
|
|
|
"output_type": "error", |
|
|
|
"text": [ |
|
|
|
"traceback": [ |
|
|
|
"220.0\n" |
|
|
|
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", |
|
|
|
|
|
|
|
"\u001b[0;31mRemoteError\u001b[0m Traceback (most recent call last)", |
|
|
|
|
|
|
|
"Cell \u001b[0;32mIn[68], line 3\u001b[0m\n\u001b[1;32m 1\u001b[0m Pricer \u001b[38;5;241m=\u001b[39m modal\u001b[38;5;241m.\u001b[39mCls\u001b[38;5;241m.\u001b[39mfrom_name(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mpricer-service\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mPricer\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 2\u001b[0m pricer \u001b[38;5;241m=\u001b[39m Pricer()\n\u001b[0;32m----> 3\u001b[0m reply \u001b[38;5;241m=\u001b[39m \u001b[43mpricer\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mprice\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mremote\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mQuadcast HyperX condenser mic, connects via usb-c to your computer for crystal clear audio\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[1;32m 4\u001b[0m \u001b[38;5;28mprint\u001b[39m(reply)\n", |
|
|
|
|
|
|
|
"File \u001b[0;32m/opt/anaconda3/envs/llms/lib/python3.11/site-packages/synchronicity/synchronizer.py:592\u001b[0m, in \u001b[0;36mSynchronizer._wrap_proxy_method.<locals>.proxy_method\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m 590\u001b[0m instance \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m\u001b[38;5;18m__dict__\u001b[39m[synchronizer_self\u001b[38;5;241m.\u001b[39m_original_attr]\n\u001b[1;32m 591\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m--> 592\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mwrapped_method\u001b[49m\u001b[43m(\u001b[49m\u001b[43minstance\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43margs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 593\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m UserCodeException \u001b[38;5;28;01mas\u001b[39;00m uc_exc:\n\u001b[1;32m 594\u001b[0m uc_exc\u001b[38;5;241m.\u001b[39mexc\u001b[38;5;241m.\u001b[39m__suppress_context__ \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n", |
|
|
|
|
|
|
|
"File \u001b[0;32m/opt/anaconda3/envs/llms/lib/python3.11/site-packages/synchronicity/combined_types.py:29\u001b[0m, in \u001b[0;36mFunctionWithAio.__call__\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m 27\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m UserCodeException \u001b[38;5;28;01mas\u001b[39;00m uc_exc:\n\u001b[1;32m 28\u001b[0m uc_exc\u001b[38;5;241m.\u001b[39mexc\u001b[38;5;241m.\u001b[39m__suppress_context__ \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n\u001b[0;32m---> 29\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m uc_exc\u001b[38;5;241m.\u001b[39mexc\n", |
|
|
|
|
|
|
|
"File \u001b[0;32m/opt/anaconda3/envs/llms/lib/python3.11/site-packages/modal/_object.py:286\u001b[0m, in \u001b[0;36mlive_method.<locals>.wrapped\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m 283\u001b[0m \u001b[38;5;129m@wraps\u001b[39m(method)\n\u001b[1;32m 284\u001b[0m \u001b[38;5;28;01masync\u001b[39;00m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21mwrapped\u001b[39m(\u001b[38;5;28mself\u001b[39m, \u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs):\n\u001b[1;32m 285\u001b[0m \u001b[38;5;28;01mawait\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhydrate()\n\u001b[0;32m--> 286\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;01mawait\u001b[39;00m method(\u001b[38;5;28mself\u001b[39m, \u001b[38;5;241m*\u001b[39margs, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n", |
|
|
|
|
|
|
|
"File \u001b[0;32m/opt/anaconda3/envs/llms/lib/python3.11/site-packages/modal/_functions.py:1408\u001b[0m, in \u001b[0;36m_Function.remote\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m 1403\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_is_generator:\n\u001b[1;32m 1404\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m InvalidError(\n\u001b[1;32m 1405\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mA generator function cannot be called with `.remote(...)`. Use `.remote_gen(...)` instead.\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 1406\u001b[0m )\n\u001b[0;32m-> 1408\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;01mawait\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_call_function(args, kwargs)\n", |
|
|
|
|
|
|
|
"File \u001b[0;32m/opt/anaconda3/envs/llms/lib/python3.11/site-packages/modal/_functions.py:1358\u001b[0m, in \u001b[0;36m_Function._call_function\u001b[0;34m(self, args, kwargs)\u001b[0m\n\u001b[1;32m 1349\u001b[0m \u001b[38;5;28;01masync\u001b[39;00m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21m_call_function\u001b[39m(\u001b[38;5;28mself\u001b[39m, args, kwargs) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m ReturnType:\n\u001b[1;32m 1350\u001b[0m invocation \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mawait\u001b[39;00m _Invocation\u001b[38;5;241m.\u001b[39mcreate(\n\u001b[1;32m 1351\u001b[0m \u001b[38;5;28mself\u001b[39m,\n\u001b[1;32m 1352\u001b[0m args,\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 1355\u001b[0m function_call_invocation_type\u001b[38;5;241m=\u001b[39mapi_pb2\u001b[38;5;241m.\u001b[39mFUNCTION_CALL_INVOCATION_TYPE_SYNC,\n\u001b[1;32m 1356\u001b[0m )\n\u001b[0;32m-> 1358\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;01mawait\u001b[39;00m invocation\u001b[38;5;241m.\u001b[39mrun_function()\n", |
|
|
|
|
|
|
|
"File \u001b[0;32m/opt/anaconda3/envs/llms/lib/python3.11/site-packages/modal/_functions.py:257\u001b[0m, in \u001b[0;36m_Invocation.run_function\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 249\u001b[0m ctx \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_retry_context\n\u001b[1;32m 250\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m (\n\u001b[1;32m 251\u001b[0m \u001b[38;5;129;01mnot\u001b[39;00m ctx\n\u001b[1;32m 252\u001b[0m \u001b[38;5;129;01mor\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m ctx\u001b[38;5;241m.\u001b[39mretry_policy\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 255\u001b[0m \u001b[38;5;129;01mor\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m ctx\u001b[38;5;241m.\u001b[39msync_client_retries_enabled\n\u001b[1;32m 256\u001b[0m ):\n\u001b[0;32m--> 257\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;01mawait\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_get_single_output()\n\u001b[1;32m 259\u001b[0m \u001b[38;5;66;03m# User errors including timeouts are managed by the user specified retry policy.\u001b[39;00m\n\u001b[1;32m 260\u001b[0m user_retry_manager \u001b[38;5;241m=\u001b[39m RetryManager(ctx\u001b[38;5;241m.\u001b[39mretry_policy)\n", |
|
|
|
|
|
|
|
"File \u001b[0;32m/opt/anaconda3/envs/llms/lib/python3.11/site-packages/modal/_functions.py:245\u001b[0m, in \u001b[0;36m_Invocation._get_single_output\u001b[0;34m(self, expected_jwt)\u001b[0m\n\u001b[1;32m 236\u001b[0m \u001b[38;5;28;01masync\u001b[39;00m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21m_get_single_output\u001b[39m(\u001b[38;5;28mself\u001b[39m, expected_jwt: Optional[\u001b[38;5;28mstr\u001b[39m] \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m Any:\n\u001b[1;32m 237\u001b[0m \u001b[38;5;66;03m# waits indefinitely for a single result for the function, and clear the outputs buffer after\u001b[39;00m\n\u001b[1;32m 238\u001b[0m item: api_pb2\u001b[38;5;241m.\u001b[39mFunctionGetOutputsItem \u001b[38;5;241m=\u001b[39m (\n\u001b[1;32m 239\u001b[0m \u001b[38;5;28;01mawait\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mpop_function_call_outputs(\n\u001b[1;32m 240\u001b[0m timeout\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mNone\u001b[39;00m,\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 243\u001b[0m )\n\u001b[1;32m 244\u001b[0m )\u001b[38;5;241m.\u001b[39moutputs[\u001b[38;5;241m0\u001b[39m]\n\u001b[0;32m--> 245\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;01mawait\u001b[39;00m _process_result(item\u001b[38;5;241m.\u001b[39mresult, item\u001b[38;5;241m.\u001b[39mdata_format, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mstub, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mclient)\n", |
|
|
|
|
|
|
|
"File \u001b[0;32m/opt/anaconda3/envs/llms/lib/python3.11/site-packages/modal/_utils/function_utils.py:497\u001b[0m, in \u001b[0;36m_process_result\u001b[0;34m(result, data_format, stub, client)\u001b[0m\n\u001b[1;32m 495\u001b[0m uc_exc \u001b[38;5;241m=\u001b[39m UserCodeException(exc_with_hints(exc))\n\u001b[1;32m 496\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m uc_exc\n\u001b[0;32m--> 497\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m RemoteError(result\u001b[38;5;241m.\u001b[39mexception)\n\u001b[1;32m 499\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m 500\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m deserialize_data_format(data, data_format, client)\n", |
|
|
|
|
|
|
|
"\u001b[0;31mRemoteError\u001b[0m: " |
|
|
|
|
|
|
|
] |
|
|
|
] |
|
|
|
} |
|
|
|
} |
|
|
|
], |
|
|
|
], |
|
|
@ -1039,7 +1033,7 @@ |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"cell_type": "code", |
|
|
|
"cell_type": "code", |
|
|
|
"execution_count": 37, |
|
|
|
"execution_count": 71, |
|
|
|
"id": "c29b8c58-4cb7-44b0-ab7e-6469d3a318e8", |
|
|
|
"id": "c29b8c58-4cb7-44b0-ab7e-6469d3a318e8", |
|
|
|
"metadata": {}, |
|
|
|
"metadata": {}, |
|
|
|
"outputs": [ |
|
|
|
"outputs": [ |
|
|
@ -1048,6 +1042,8 @@ |
|
|
|
"output_type": "stream", |
|
|
|
"output_type": "stream", |
|
|
|
"text": [ |
|
|
|
"text": [ |
|
|
|
"Requirement already satisfied: modal in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (0.73.155)\n", |
|
|
|
"Requirement already satisfied: modal in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (0.73.155)\n", |
|
|
|
|
|
|
|
"Collecting modal\n", |
|
|
|
|
|
|
|
" Downloading modal-0.73.165-py3-none-any.whl.metadata (2.5 kB)\n", |
|
|
|
"Requirement already satisfied: aiohttp in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from modal) (3.11.12)\n", |
|
|
|
"Requirement already satisfied: aiohttp in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from modal) (3.11.12)\n", |
|
|
|
"Requirement already satisfied: certifi in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from modal) (2025.1.31)\n", |
|
|
|
"Requirement already satisfied: certifi in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from modal) (2025.1.31)\n", |
|
|
|
"Requirement already satisfied: click>=8.1.0 in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from modal) (8.1.8)\n", |
|
|
|
"Requirement already satisfied: click>=8.1.0 in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from modal) (8.1.8)\n", |
|
|
@ -1083,7 +1079,15 @@ |
|
|
|
"Requirement already satisfied: hpack<5,>=4.1 in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from h2<5,>=3.1.0->grpclib==0.4.7->modal) (4.1.0)\n", |
|
|
|
"Requirement already satisfied: hpack<5,>=4.1 in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from h2<5,>=3.1.0->grpclib==0.4.7->modal) (4.1.0)\n", |
|
|
|
"Requirement already satisfied: mdurl~=0.1 in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from markdown-it-py>=2.2.0->rich>=12.0.0->modal) (0.1.2)\n", |
|
|
|
"Requirement already satisfied: mdurl~=0.1 in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from markdown-it-py>=2.2.0->rich>=12.0.0->modal) (0.1.2)\n", |
|
|
|
"Requirement already satisfied: annotated-types>=0.6.0 in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4->fastapi->modal) (0.7.0)\n", |
|
|
|
"Requirement already satisfied: annotated-types>=0.6.0 in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4->fastapi->modal) (0.7.0)\n", |
|
|
|
"Requirement already satisfied: pydantic-core==2.27.2 in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4->fastapi->modal) (2.27.2)\n" |
|
|
|
"Requirement already satisfied: pydantic-core==2.27.2 in /opt/anaconda3/envs/llms/lib/python3.11/site-packages (from pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4->fastapi->modal) (2.27.2)\n", |
|
|
|
|
|
|
|
"Downloading modal-0.73.165-py3-none-any.whl (558 kB)\n", |
|
|
|
|
|
|
|
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m559.0/559.0 kB\u001b[0m \u001b[31m7.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", |
|
|
|
|
|
|
|
"\u001b[?25hInstalling collected packages: modal\n", |
|
|
|
|
|
|
|
" Attempting uninstall: modal\n", |
|
|
|
|
|
|
|
" Found existing installation: modal 0.73.155\n", |
|
|
|
|
|
|
|
" Uninstalling modal-0.73.155:\n", |
|
|
|
|
|
|
|
" Successfully uninstalled modal-0.73.155\n", |
|
|
|
|
|
|
|
"Successfully installed modal-0.73.165\n" |
|
|
|
] |
|
|
|
] |
|
|
|
} |
|
|
|
} |
|
|
|
], |
|
|
|
], |
|
|
@ -1121,7 +1125,7 @@ |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"cell_type": "code", |
|
|
|
"cell_type": "code", |
|
|
|
"execution_count": 44, |
|
|
|
"execution_count": 72, |
|
|
|
"id": "ba9aedca-6a7b-4d30-9f64-59d76f76fb6d", |
|
|
|
"id": "ba9aedca-6a7b-4d30-9f64-59d76f76fb6d", |
|
|
|
"metadata": {}, |
|
|
|
"metadata": {}, |
|
|
|
"outputs": [], |
|
|
|
"outputs": [], |
|
|
@ -1131,17 +1135,17 @@ |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
"cell_type": "code", |
|
|
|
"cell_type": "code", |
|
|
|
"execution_count": 45, |
|
|
|
"execution_count": 74, |
|
|
|
"id": "fe5843e5-e958-4a65-8326-8f5b4686de7f", |
|
|
|
"id": "fe5843e5-e958-4a65-8326-8f5b4686de7f", |
|
|
|
"metadata": {}, |
|
|
|
"metadata": {}, |
|
|
|
"outputs": [ |
|
|
|
"outputs": [ |
|
|
|
{ |
|
|
|
{ |
|
|
|
"data": { |
|
|
|
"data": { |
|
|
|
"text/plain": [ |
|
|
|
"text/plain": [ |
|
|
|
"299.0" |
|
|
|
"350.0" |
|
|
|
] |
|
|
|
] |
|
|
|
}, |
|
|
|
}, |
|
|
|
"execution_count": 45, |
|
|
|
"execution_count": 74, |
|
|
|
"metadata": {}, |
|
|
|
"metadata": {}, |
|
|
|
"output_type": "execute_result" |
|
|
|
"output_type": "execute_result" |
|
|
|
} |
|
|
|
} |
|
|
|