Traceback (most recent call last): File "/Users/bg/work/codes/pingan/pager/backend/venv/bin/uvicorn", line 7, in sys.exit(main()) ~~~~^^ File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/click/core.py", line 1462, in __call__ return self.main(*args, **kwargs) ~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/click/core.py", line 1383, in main rv = self.invoke(ctx) File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/click/core.py", line 1246, in invoke return ctx.invoke(self.callback, **ctx.params) ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/click/core.py", line 814, in invoke return callback(*args, **kwargs) File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/uvicorn/main.py", line 423, in main run( ~~~^ app, ^^^^ ...<46 lines>... h11_max_incomplete_event_size=h11_max_incomplete_event_size, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/uvicorn/main.py", line 593, in run server.run() ~~~~~~~~~~^^ File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/uvicorn/server.py", line 67, in run return asyncio_run(self.serve(sockets=sockets), loop_factory=self.config.get_loop_factory()) File "/opt/homebrew/Cellar/python@3.14/3.14.0_1/Frameworks/Python.framework/Versions/3.14/lib/python3.14/asyncio/runners.py", line 204, in run return runner.run(main) ~~~~~~~~~~^^^^^^ File "/opt/homebrew/Cellar/python@3.14/3.14.0_1/Frameworks/Python.framework/Versions/3.14/lib/python3.14/asyncio/runners.py", line 127, in run return self._loop.run_until_complete(task) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^ File "/opt/homebrew/Cellar/python@3.14/3.14.0_1/Frameworks/Python.framework/Versions/3.14/lib/python3.14/asyncio/base_events.py", line 719, in run_until_complete return future.result() ~~~~~~~~~~~~~^^ File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/uvicorn/server.py", line 71, in serve await self._serve(sockets) File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/uvicorn/server.py", line 78, in _serve config.load() ~~~~~~~~~~~^^ File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/uvicorn/config.py", line 439, in load self.loaded_app = import_from_string(self.app) ~~~~~~~~~~~~~~~~~~^^^^^^^^^^ File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/uvicorn/importer.py", line 22, in import_from_string raise exc from None File "/Users/bg/work/codes/pingan/pager/backend/venv/lib/python3.14/site-packages/uvicorn/importer.py", line 19, in import_from_string module = importlib.import_module(module_str) File "/opt/homebrew/Cellar/python@3.14/3.14.0_1/Frameworks/Python.framework/Versions/3.14/lib/python3.14/importlib/__init__.py", line 88, in import_module return _bootstrap._gcd_import(name[level:], package, level) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "", line 1398, in _gcd_import File "", line 1371, in _find_and_load File "", line 1342, in _find_and_load_unlocked File "", line 938, in _load_unlocked File "", line 762, in exec_module File "", line 491, in _call_with_frames_removed File "/Users/bg/work/codes/pingan/pager/backend/main.py", line 25, in from claude_exam_parser import ClaudeExamParser File "/Users/bg/work/codes/pingan/pager/backend/claude_exam_parser.py", line 13, in import requests ModuleNotFoundError: No module named 'requests'