- python 3.12.10 / pip 25.3
- uv - для установки зависимостей
uv add "name of dependens" # для добавления библиотеки
uv sync # проверяет ваши зависимости и устанавливает недостающие- Ruff - линтер внедренный в uv для проверки кода и форматирования
uv tool run ruff check . # проверка кода
uv tool run ruff check --fix . # исправление ошибок
uv tool run ruff format . # форматирование- streamlit - для фронтенда
- httpx - библиотека для отправки HTTP-запросов на языке Python
- Docker - для контейниризации
docker-compose down -v # Полная очистка (удаление данных и таблиц)
docker compose up --build # cобирает образы и запускает все контейнеры.
docker compose up -d # запуск в «фоновом» режиме
docker-compose up -d db # Если хотим запустить базу данных в докере, а fastapi локально
docker-compose up -d db test_db # db и test_db- uvicorn - для запуска веб-сервера бэкенда
- FastAPI - для создания api uv add "fastapi[all]"
- Pydantic - для валидации данных входит в FastAPI
- SQLAlchemy 2.0 - ORM для удобной работы с БД на языке python
- PostgreSQL + pgvector - для базы данных
- psycopg2-binary - Это адаптер, который позволяет Python-приложениям подключаться к базе данных PostgreSQL.
- LangChain - для оркестрации RAG-цепочек (связка документа -> эмбеддинга -> LLM)
- LiteLLM ??? - для быстрой смены модели LLM
- PyTest - тестирование
- Nginx - для проксирования запросов
- Apache Airflow
- jose[cryptography]
- passlib[bcrypt]
- pydantic[email]
- Хэширование паролей bcrypt==4.3.0
Dev зависимости uv add --dev "pytest" "pytest-asyncio" "httpx" "pytest-cov" "asyncio"
streamlit >=1.52.2
- streamlit-option-menu
- extra-streamlit-components
# Изменить последний коммит без редактирования оригинального сообщения
git commit --amend --no-editGet-ChildItem -Path "." -Recurse -File | Where-Object { $_.FullName -notmatch "\\(\.venv|__pycache__)\\" } | Select-Object FullName- Запуск database
docker-compose down -v # Полная очистка (удаление данных и таблиц)
docker-compose up -d db # Запуск только базы данных- Запуск FastAPI
uv run python -m app.main # С проверкой зависимостей
uvicorn app.main:app --reload # - Запуск Streamlit
streamlit run app.py # Запуск Streamlit
uv run streamlit run app.py --server.runOnSave true # Автоматический перезапуск при сохранении app.py