Настраивай Python-окружение как профи, а не как «лишь бы запустилось». Главная идея - изоляция, воспроизводимость и автоматизация.
У тебя для каждого проекта должно быть своё виртуальное окружение, зафиксированные версии зависимостей и одинаковая среда у всей команды. Используй pyenv для управления версиями Python, виртуальное окружение для проекта, файл зависимостей с точными версиями и автопроверки кода до коммита.
Тогда проект через год запустится так же, как сегодня, и на твоей машине, и на сервере, и у коллеги. Подписывайся, больше фишек каждый день !
# ставим менеджер версий Python
brew install pyenv
# ставим нужную версию Python
pyenv install 3.12.2
pyenv local 3.12.2
# создаём виртуальное окружение
python -m venv .venv
source .venv/bin/activate
# обновляем инструменты
pip install --upgrade pip
# ставим зависимости проекта
pip install fastapi uvicorn
# фиксируем версии
pip freeze > requirements.txt
# ставим pre-commit для авто-проверок
pip install pre-commit black ruff
pre-commit install