πŸ› οΈ Установка инструмСнтов

Python, venv, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ LLM ΠΈ ΠΊΠ»ΡŽΡ‡ΠΈ APIPython for AI
ΠšΡ€Π°Ρ‚ΠΊΠΎ: ΠΊΡ€ΠΎΠΌΠ΅ окруТСния Π½ΡƒΠΆΠ½Ρ‹ ΠΊΠ»ΡŽΡ‡ΠΈ Π²Π½Π΅ΡˆΠ½ΠΈΡ… сСрвисов. Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ β€” ΠΊΠ»ΡŽΡ‡ ΠΆΠΈΠ²Ρ‘Ρ‚ Π² Ρ„Π°ΠΉΠ»Π΅ .env, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ прямо Π² ΠΊΠΎΠ΄Π΅.

Π§Ρ‚ΠΎ понадобится

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π—Π°Ρ‡Π΅ΠΌΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»Π΅Π½
Python 3.10+всС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ курсада
venvΠΌΠΎΠ΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ тяТёлыС, Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΈΡ… Π² систСмС Π½Π΅ стоитда
ΠšΠ»ΡŽΡ‡ΠΈ APIGoogle Gemini, Hugging Face β€” с ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΡƒΡ€ΠΎΠΊΠΎΠ²Π΄Π°
python-dotenvΡ‡ΠΈΡ‚Π°Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈΠ· .envΠ΄Π°
ДискмодСли Hugging Face ΠΊΡΡˆΠΈΡ€ΡƒΡŽΡ‚ΡΡ локально ΠΈ вСсят Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚Ρ‹β‰₯ 10 Π“Π‘

Python

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Π΅ΡΡ‚ΡŒ Π»ΠΈ Python ΡƒΠΆΠ΅ сСйчас β€” ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ Π²Π΅Ρ€ΡΠΈΡŽ:

python --version
python3 --version   # macOS ΠΈ Linux

ΠšΡƒΡ€ΡΡƒ Π½ΡƒΠΆΠ΅Π½ Python 3.12 ΠΈΠ»ΠΈ Π½ΠΎΠ²Π΅Π΅. Если ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π° ΠΈΠ»ΠΈ вСрсия старСС β€” ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Π·Π°Π½ΠΎΠ²ΠΎ.

Windows

winget install Python.Python.3.12

Π›ΠΈΠ±ΠΎ установщик с python.org. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΎΠΊΠ½Π΅ установщика ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅ Add python.exe to PATH β€” Π±Π΅Π· этой Π³Π°Π»ΠΎΡ‡ΠΊΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» Π½Π΅ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ python.

macOS

brew install python@3.12

Linux ΠΈ WSL

sudo apt update
sudo apt install python3 python3-venv python3-pip

Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹

ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ ставятся Π½Π΅ Π² систСму, Π° Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΠ°ΠΏΠΊΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’Π°ΠΊ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ курса свой Π½Π°Π±ΠΎΡ€ вСрсий, ΠΈ ΠΎΠ½ΠΈ Π½Π΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΡƒΡŽΡ‚.

mkdir python-for-ai
cd python-for-ai
python -m venv .venv

Активация зависит ΠΎΡ‚ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ:

ΠžΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Π°
PowerShell.venv\Scripts\Activate.ps1
cmd.exe.venv\Scripts\activate.bat
macOS / Linux / Git Bashsource .venv/bin/activate

ΠŸΡ€ΠΈΠ·Π½Π°ΠΊ успСха β€” прСфикс (.venv) Π² Π½Π°Ρ‡Π°Π»Π΅ строки ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΡ.

ΠŸΠ°ΠΊΠ΅Ρ‚Ρ‹ курса ставятся ΡƒΠΆΠ΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ окруТСния:

pip install python-dotenv google-genai huggingface_hub transformers langchain langgraph

Π—Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ состав окруТСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ машинС:

pip freeze > requirements.txt
pip install -r requirements.txt
torch ставится ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΈ зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π΅ΡΡ‚ΡŒ Π»ΠΈ Ρƒ вас Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚Π° β€” ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ установки Π±Π΅Ρ€ΠΈΡ‚Π΅ Π½Π° сайтС PyTorch, Ρ‚Π°ΠΌ ΠΎΠ½Π° собираСтся ΠΏΠΎΠ΄ Π²Π°ΡˆΡƒ систСму.

ΠšΠ»ΡŽΡ‡ΠΈ API

ΠšΠ»ΡŽΡ‡ нСльзя ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² ΠΊΠΎΠ΄Π΅ ΠΈ нСльзя ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ. Один Ρ€Π°Π· попавший Π² git ΠΊΠ»ΡŽΡ‡ считаСтся скомпромСтированным β€” Π΅Π³ΠΎ ΠΎΡ‚Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΈ Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ Π·Π°Π½ΠΎΠ²ΠΎ.

ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ схСма β€” Ρ„Π°ΠΉΠ» .env рядом с ΠΊΠΎΠ΄ΠΎΠΌ:

.env

GOOGLE_API_KEY=ваш_ΠΊΠ»ΡŽΡ‡
HF_TOKEN=ваш_Ρ‚ΠΎΠΊΠ΅Π½

.gitignore

.env
.venv/

Π§Ρ‚Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄Π΅:

import os
from dotenv import load_dotenv

load_dotenv()
api_key = os.environ["GOOGLE_API_KEY"]
Если os.environ Π½Π΅ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ β€” ΠΏΠΎΡ‡Ρ‚ΠΈ всСгда Ρ„Π°ΠΉΠ» называСтся .env.txt (ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊ Windows скрываСт Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ) ΠΈΠ»ΠΈ Π»Π΅ΠΆΠΈΡ‚ Π½Π΅ Π² Ρ‚ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ запускаСтся скрипт.

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€

ΠšΡƒΡ€Ρ написан ΠΏΠΎΠ΄ Visual Studio Code β€” ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ названия Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ Π½ΠΈΠΆΠ΅ Π΄Π°Π½Ρ‹ для Π½Π΅Π³ΠΎ.

Π‘ΠΈΡΡ‚Π΅ΠΌΠ°ΠšΠΎΠΌΠ°Π½Π΄Π°
Windowswinget install Microsoft.VisualStudioCode
macOSbrew install --cask visual-studio-code
LinuxΠΏΠ°ΠΊΠ΅Ρ‚ .deb / .rpm с code.visualstudio.com

Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ставятся ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ Π² Marketplace ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅:

code --install-extension ms-python.python
code --install-extension ms-python.vscode-pylance
Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π§Ρ‚ΠΎ Π΄Π°Ρ‘Ρ‚
ms-python.pythonзапуск, ΠΎΡ‚Π»Π°Π΄ΠΊΠ° (F5), Π²Ρ‹Π±ΠΎΡ€ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π°
ms-python.vscode-pylanceΠ°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‚ΠΈΠΏΠΎΠ²
πŸ’‘ Π“Π»Π°Π²Π½Ρ‹ΠΉ шаг послС создания окруТСния: ΠΏΠ°Π»ΠΈΡ‚Ρ€Π° ΠΊΠΎΠΌΠ°Π½Π΄ (Ctrl+Shift+P) β†’ Python: Select Interpreter β†’ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ ΠΈΠ· .venv. Π˜Π½Π°Ρ‡Π΅ F5 запустит систСмный Python Π±Π΅Π· Π²Π°ΡˆΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ².

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°, Ρ‡Ρ‚ΠΎ всё встало

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹, послС ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΡƒΡ€ΠΎΠΊ:

ΠšΠΎΠΌΠ°Π½Π΄Π°ΠžΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚
python --version3.10 ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅
pip -VΠΏΡƒΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΡŒ .venv
python -c "import transformers; print(transformers.__version__)"вСрсия Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ
python -c "import os,dotenv; dotenv.load_dotenv(); print(bool(os.getenv('GOOGLE_API_KEY')))"True β€” ΠΊΠ»ΡŽΡ‡ читаСтся ΠΈΠ· .env

ЧастыС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹

ВмСсто запуска Python открываСтся Microsoft Store

Π­Ρ‚ΠΎ windows-Π·Π°Π³Π»ΡƒΡˆΠΊΠ° python.exe. ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Β«ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ β†’ ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ β†’ Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β†’ ΠŸΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡ‹ выполнСния прилоТСния»: Π²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ python.exe ΠΈ python3.exe. ПослС этого ΠΏΠ΅Ρ€Π΅ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π».

PowerShell Π½Π΅ Π΄Π°Ρ‘Ρ‚ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅

Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ Β«Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ сцСнариСв ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Π² этой систСмС». Π Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅ скрипты своСму ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ β€” ΠΏΡ€Π°Π²Π° администратора Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹:

Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

pip поставил ΠΏΠ°ΠΊΠ΅Ρ‚, Π° ΠΈΠΌΠΏΠΎΡ€Ρ‚ Π½Π΅ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π΅Π³ΠΎ

ΠŸΠΎΡ‡Ρ‚ΠΈ всСгда ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ прСфикс (.venv) ΠΈ ΠΏΡƒΡ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ pip -V β€” ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ вСсти Π²Π½ΡƒΡ‚Ρ€ΡŒ ΠΏΠ°ΠΏΠΊΠΈ .venv.

VS Code запускаСт Π½Π΅ Ρ‚ΠΎΡ‚ Python

ΠŸΠ°Π»ΠΈΡ‚Ρ€Π° ΠΊΠΎΠΌΠ°Π½Π΄ (Ctrl+Shift+P) β†’ Python: Select Interpreter β†’ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ ΠΈΠ· .venv вашСй ΠΏΠ°ΠΏΠΊΠΈ. Π’Π½ΠΈΠ·Ρƒ справа Π² строкС состояния Π²ΠΈΠ΄Π½ΠΎ, ΠΊΠ°ΠΊΠΎΠΉ Π²Ρ‹Π±Ρ€Π°Π½.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ запуск скачиваСт Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚Ρ‹

Π­Ρ‚ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ: ΠΌΠΎΠ΄Π΅Π»ΠΈ Hugging Face ΠΊΡΡˆΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² домашнСй ΠΏΠ°ΠΏΠΊΠ΅ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ. Π’Ρ‚ΠΎΡ€ΠΎΠΉ запуск ΠΈΠ΄Ρ‘Ρ‚ с диска ΠΈ быстро.

Ошибка ΠΏΡ€ΠΎ CUDA ΠΈΠ»ΠΈ отсутствиС Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚Ρ‹

МодСли курса Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈ Π½Π° процСссорС β€” просто ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅. Π‘Ρ‚Π°Π²ΡŒΡ‚Π΅ CPU-сборку torch, Ссли Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚Ρ‹ Π½Π΅Ρ‚.