Skip to main content

๐Ÿ Unit 2 โ€” Instalasi Python, venv & btcli

Goal Unit Ini

Di akhir unit ini kamu akan:

  • Punya Python 3.10+ terinstall dan verified
  • Punya virtual environment ~/bittensor-env-v10 yang terisolasi
  • btcli (bittensor-cli) dan Bittensor SDK (bittensor 10.x) terinstall di venv
  • Bisa menjalankan btcli --help tanpa error
Prasyarat
  • โœ… Unit 1 selesai โ€” WSL2 aktif (Windows) atau terminal siap
  • โœ… Koneksi internet untuk download packages
Sudah Coba Versi Lama Kemarin & Gagal?

Panduan ini sudah diperbarui untuk Bittensor SDK 10.x. Kalau kemarin kamu mengikuti versi lama dan venv-nya rusak (ImportError, ScaleObj, dll), jangan pakai venv lama itu lagi. Kita sengaja memakai nama venv baru di bawah ini โ€” ~/bittensor-env-v10 โ€” supaya kamu mulai dari nol yang bersih.

Opsional, bersihkan sisa instalasi lama yang rusak:

# Hapus venv lama yang rusak
rm -rf ~/bittensor-env

# Hapus juga baris 'alias btenv=...' lama dari ~/.bashrc (kalau ada),
# supaya tidak bentrok dengan alias baru btenv10

๐Ÿ Step 1 โ€” Install Python 3.10+โ€‹

Buka terminal Ubuntu (bukan PowerShell/CMD).

Ubuntu 22.04 sudah include Python 3.10 secara default. Verifikasi:

python3 --version
# Output: Python 3.10.12 (atau lebih baru)

Jika Python belum ada atau versinya lama:

# Tambah PPA deadsnakes (kalau Ubuntu 20.04)
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install -y python3.10 python3.10-venv python3.10-distutils

# Install pip untuk Python 3.10
curl -sS https://bootstrap.pypa.io/get-pip.py | python3.10

Install build dependencies:

sudo apt install -y build-essential git curl wget libssl-dev pkg-config python3-pip

๐Ÿ“ฆ Step 2 โ€” Buat Virtual Environmentโ€‹

Virtual environment (venv) = sandbox terisolasi untuk dependencies Python. Penting supaya btcli tidak konflik dengan package sistem.

# Buat venv di home directory
python3 -m venv ~/bittensor-env-v10

# Aktifkan venv
source ~/bittensor-env-v10/bin/activate

# Prompt kamu akan berubah jadi:
# (bittensor-env-v10) ubuntu@hostname:~$

Tambah alias supaya tidak perlu ketik panjang tiap kali:

echo 'alias btenv10="source ~/bittensor-env-v10/bin/activate"' >> ~/.bashrc
source ~/.bashrc

Sekarang cukup ketik btenv10 untuk aktifkan venv.

Jangan Lupa Aktifkan venv

Setiap kali buka terminal baru, kamu harus aktifkan venv lagi: source ~/bittensor-env-v10/bin/activate (atau btenv10 kalau sudah setup alias). Kalau lupa, btcli tidak akan ditemukan.


๐Ÿ”ง Step 3 โ€” Install btcli & Bittensor SDKโ€‹

Pastikan venv aktif (ada (bittensor-env-v10) di prompt) sebelum lanjut.

# Upgrade pip dulu
pip install --upgrade pip

# Install Bittensor CLI (btcli) + Bittensor SDK (versi terbaru, 10.x)
pip install bittensor-cli bittensor
Jangan pin bittensor<10.0.0 lagi!

Versi lama panduan ini menyuruh pip install "bittensor<10.0.0". Sekarang itu justru bikin error. Per 2026, btcli (bittensor-cli 9.x) butuh async-substrate-interface versi 2.x, sedangkan SDK bittensor 9.x butuh API 1.x โ€” jadi keduanya bentrok di satu venv dan muncul:

ImportError: cannot import name 'ScaleObj' from 'async_substrate_interface.types'

Solusinya: install bittensor 10.x (tanpa pin sama sekali). SDK 10.x dan btcli 9.x kompatibel karena sama-sama memakai async-substrate 2.x โ€” pip check bersih, tanpa konflik.

btcli & SDK beda nomor versi โ€” itu normal sekarang

btcli (bittensor-cli, ~9.22.x) dan SDK (bittensor, ~10.4.x) sekarang ada di major version yang berbeda. Itu disengaja โ€” keduanya sudah jadi package terpisah. Jangan kaget kalau nomornya tidak sama.


โœ… Step 4 โ€” Verifikasi Instalasiโ€‹

# Verifikasi btcli
btcli --help
# Harus muncul help text dengan daftar commands

# Verifikasi btcli version
btcli --version
# Output: BTCLI version: 9.22.3 (atau lebih baru)

# Verifikasi SDK
python -c "import bittensor; print('bittensor version:', bittensor.__version__)"
# Output: bittensor version: 10.4.1 (harus >= 10)

Output btcli --help yang normal:

 Usage: btcli [OPTIONS] COMMAND [ARGS]...

Command line interface (CLI) for Bittensor.

โ•ญโ”€ Commands โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ config Config commands, aliases: `c`, `conf` โ”‚
โ”‚ wallet Wallet commands, aliases: `wallets`, `w` โ”‚
โ”‚ stake Stake commands, alias: `st` โ”‚
โ”‚ subnets Subnets commands, alias: `s`, `subnet` โ”‚
โ”‚ sudo Sudo commands, alias: `su` โ”‚
โ”‚ ... โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ
Format btcli v9 berbeda

btcli v9 memakai tampilan tabel (rich/typer), bukan argparse gaya lama. Perhatikan subnets punya alias subnet dan s โ€” keduanya bisa dipakai.

Kalau btcli: command not found

venv belum aktif. Jalankan:

source ~/bittensor-env-v10/bin/activate

Lalu coba lagi.


๐Ÿ” Step 4b โ€” Fix SSL (Jika Ada Error)โ€‹

Beberapa setup mengalami error SSL saat btcli coba konek ke chain. Kalau ada error SSL: CERTIFICATE_VERIFY_FAILED:

python -m bittensor certifi

๐Ÿ› Troubleshooting Instalasiโ€‹

ErrorPenyebabSolusi
error: Microsoft Visual C++ 14.0 requiredKamu di Windows tanpa WSL2Pindah ke terminal Ubuntu WSL2
failed building wheel for cryptographyDev headers kurangsudo apt install libssl-dev libffi-dev python3-dev
pip: command not foundpip tidak ada di PATH venvpython3 -m ensurepip --upgrade
btcli: command not foundvenv tidak aktifsource ~/bittensor-env-v10/bin/activate
ModuleNotFoundError: 'bittensor'SDK belum install atau venv salahPastikan venv aktif, lalu pip install bittensor
ERROR: Could not find a version that satisfies the requirement bittensorNetwork issue / pypi timeoutpip install bittensor --retries 5
ImportError: cannot import name 'ScaleObj' from 'async_substrate_interface...'SDK bittensor 9.x terpasang bareng btcli โ†’ bentrok async-substratepip install -U bittensor (pakai 10.x, jangan pin <10)

๐Ÿ“‹ Quick Reference โ€” Perintah Harianโ€‹

# Aktifkan venv (wajib tiap session baru)
source ~/bittensor-env-v10/bin/activate # atau: btenv10

# Deaktifkan venv
deactivate

# Cek package terinstall
pip list | grep -E "bittensor|btcli"

# Update btcli saja (tanpa upgrade SDK)
pip install --upgrade bittensor-cli

๐ŸŽฏ Rangkumanโ€‹

  • Python 3.10+ adalah syarat minimum โ€” Ubuntu 22.04 sudah include
  • venv terisolasi di ~/bittensor-env-v10 โ€” aktifkan setiap sesi baru
  • Install bittensor-cli (btcli) dan bittensor (SDK 10.x) โ€” jangan pin <10
  • Alias btenv10 memudahkan aktivasi

Next: Unit 3 โ€” Wallet Setup (Coldkey & Hotkey) โ†’

Environment yang bersih = debugging yang mudah. ๐Ÿงช