01 / QUICK START
15 daqiqada birinchi natija.
- Downloads sahifasidan Windows x64 MSIX’ni oling. Self-signed paket bo‘lsa, certificate’ni Trusted People store’ga o‘rnating; ishonch muammosida EXE fallback’dan foydalaning.
- KET Studio’ni oching va Settings’da Python interpreter’ni tekshiring. Birinchi setup virtual environment yaratadi va kerakli package’larni o‘rnatadi.
- Yangi project papkasini oching, `.py` fayl yarating va Editor’da kod yozing.
- Run tugmasini bosing. stdout/stderr Terminal’da, `KET_VIZ` event’lari esa Visualization panelida ko‘rinadi.
Muhim:`ket_viz` KET Studio launcher’i tomonidan vaqtincha ineksiya qilinadi. Uni alohida `pip install` qilish shart emas.
02 / PROJECT SETUP
Papka va interpreter qanday ishlaydi?
KET Studio tanlangan script joylashgan papkani project root sifatida ishlatadi. `.ket/out` output artifact’lar, `.ket/temp` launcher va vaqtinchalik fayllar uchun yaratiladi.
| Path / control | Vazifasi |
|---|
| Settings → Python | System Python yoki KET venv interpreter’ini tanlash. |
| .ket/out/ | Matplotlib image, circuit image va export artifact’lari. |
| .ket/temp/ | Run launcher; foydalanuvchi kodi emas, vaqtinchalik runtime fayli. |
| F5 / Run | Tanlangan Python file’ni alohida process’da bajarish. |
03 / RUNNING CODE
Terminal, Editor va Visualization birga.
Oddiy print loglari Terminal’da qoladi. Event chiqishi uchun `ket_viz` API’sidan foydalaning. Bir eventdan keyin output darhol ko‘rinsin desangiz, launcher JSON’ni `flush=True` bilan chiqaradi.
import ket_viz
print('Starting experiment')
ket_viz.estimator({'qubits': 2, 'depth': 2, 'total_gates': 2})
ket_viz.metrics({'status': 'running', 'seed': 20260914})
ket_viz.histogram({'00': 510, '11': 514}, title='Final counts')
print('Done')
Kutiladigan natija: Terminal’da uchta print/log qatori, Visualization’da estimator, metrics va histogram event’lari.
04 / VISUALIZATION API
Natijani panelga uzatish kodlari.
Quyidagi API’lar KET Studio’da to‘g‘ridan-to‘g‘ri ishlaydi. Har bir event JSON-safe qiymatlardan tuzilishi kerak: string, number, boolean, list yoki object.
HISTOGRAM
Histogram: o‘lchov taqsimoti
Bitstring, probability yoki klassifikatsiya natijalarini bucket’lar orqali ko‘rsating.
import ket_viz
counts = {'00': 510, '01': 2, '10': 4, '11': 508}
ket_viz.histogram(counts, title='Measurement distribution')
HEATMAP
Heatmap: matrix yoki landscape
Korrelyatsiya, cost landscape yoki zichlik matritsasi uchun qatorlari teng bo‘lgan sonli matrix yuboring.
import ket_viz
matrix = [[1.0, 0.2, 0.0],
[0.2, 0.8, 0.1],
[0.0, 0.1, 0.4]]
ket_viz.heatmap(matrix, title='Qubit correlation')
CHART
Chart: convergence yoki vaqt qatori
Energiya, loss, fidelity yoki boshqa numeric series’ni vaqt bo‘yicha chizing.
import ket_viz
energies = [0.50, 0.31, 0.18, 0.09, 0.04]
ket_viz.chart(energies, title='VQE convergence')
TABLE
Table: parametr va qisqa report
Ikki xil signature mavjud: `table(rows)` yoki `table(title, rows)`.
import ket_viz
rows = [['Metric', 'Value'],
['Qubits', 4],
['Shots', 1024],
['Fidelity', 0.998]]
ket_viz.table('Experiment summary', rows)
STATEVECTOR
Statevector: amplitude va phase
Har bir holat uchun `label`, `mag` va radians’dagi `phase` yuboring.
import ket_viz
amplitudes = [
{'label': '00', 'mag': 0.707, 'phase': 0.0},
{'label': '11', 'mag': 0.707, 'phase': 3.14159},
]
ket_viz.statevector(amplitudes, title='Bell amplitudes')
INSPECTOR
Inspector va Bloch: qadamlar
Gate, state description va Bloch koordinatalari bilan muhim qadamlarni hujjatlashtiring.
import ket_viz
frames = [
{'gate': 'H(0)', 'state_description': 'Superposition',
'bloch': [{'theta': 1.57, 'phi': 0.0}]},
]
ket_viz.inspector('Algorithm steps', frames)
ket_viz.bloch({'theta': 1.57, 'phi': 0.0})
METRICS
Metrics: live progress va provenance
Status, seed, backend, parametrlar va iteration’ni arbitrary JSON object sifatida yuboring.
import ket_viz
ket_viz.metrics({
'status': 'optimizing',
'step': 12, 'energy': -1.1372,
'seed': 20260914, 'backend': 'AerSimulator'
})
ESTIMATOR
Estimator: ish boshlashdan oldingi baho
Qubit, depth, gate count va gate_counts orqali tajriba hajmini oldindan tushuntiring.
import ket_viz
ket_viz.estimator({
'qubits': 8, 'depth': 42,
'total_gates': 180,
'gate_counts': {'H': 8, 'CX': 64, 'RZ': 108}
})
FILES
Image va circuit: fayl artifact’lari
PNG/SVG faylni loyiha papkasiga nisbatan path bilan yuboring; native circuit parser hozircha yo‘q.
import ket_viz
ket_viz.image('.ket/out/landscape.png', title='Cost landscape')
ket_viz.circuit('.ket/out/circuit.png', title='Rendered circuit')
05 / RAW PROTOCOL
Har qanday Python yoki boshqa til bilan.
`ket_viz` ishlamaydigan holatda stdout’ga bitta UTF-8 qator qilib `KET_VIZ ` + JSON chiqaring. JSON boshqa log bilan bir qatorga aralashmasin.
import json
event = {
'kind': 'histogram',
'payload': {
'histogram': {'0': 490, '1': 534},
'title': 'Raw protocol'
}
}
print('KET_VIZ ' + json.dumps(event), flush=True)
Parser `kind` bo‘yicha renderer tanlaydi. Noma’lum kind fallback event sifatida saqlanadi, malformed yoki oversize event esa warning bilan cheklanadi.
06 / DATA LIMITS
Qancha data foydali bo‘lib qoladi?
Limitlar ilmiy hisobni to‘xtatish uchun emas, UI’ni himoya qilish uchun. Katta result’ni diskka saqlang, UI’ga esa sparse yoki agregatsiyalangan ko‘rinishni yuboring.
07 / REAL TERMINAL
VS Code’ga yaqin local shell.
Windows desktop’da Terminal paneli xterm3 UI va ConPTY native host bilan ishlaydi. Shell komandalarini yozing, ANSI ranglarni ko‘ring, terminalni resize qiling yoki Ctrl+C bilan process’ni to‘xtating.
python --version
where python
python your_experiment.py
python -m pip freeze
- Web preview shell ochmaydi; bu xavfsizlik chegarasi.
- Run action script process’ini alohida boshqaradi; Terminal qo‘lda berilgan komandalar uchun qoladi.
- Process tugagach session history’da event’lar bounded holatda qoladi.
08 / RESEARCH USE
Natijani publication-grade qilish uchun.
KET Studio exploratory research, education va prototyping uchun mos. Ilmiy da’vo uchun quyidagi metadata’ni har run bilan saqlang:
- Git commit va script SHA-256
- Python version va `pip freeze` snapshot
- backend, qubits, depth, shots, optimizer va seed
- raw counts, metrics, logs va visual artifacts
- KET Studio version, OS va qayta ishga tushirish yozuvi
Halol chegarasi:KET Studio backend credential vault, remote job queue yoki hardware calibration’ni native boshqarmaydi. Bu ishlar Python SDK va alohida lab workflow’ida qoladi.
09 / TROUBLESHOOTING
Ishlamasa qayerdan boshlash kerak?
| Symptom | Tekshiruv |
|---|
| Python topilmadi | Settings → Python’da `python.exe` yo‘lini tanlang; Terminal’da `python --version`ni tekshiring. |
| Event panelda ko‘rinmadi | `KET_VIZ` qatori JSON ekanini, `flush=True` borligini va script Run action bilan ishga tushganini tekshiring. |
| Matplotlib rasm yo‘q | `matplotlib` o‘rnatilganini va `plt.show()` chaqirilganini tekshiring; output `.ket/out` ichiga tushadi. |
| MSIX install bloklandi | Test certificate’ni Trusted People’ga o‘rnating yoki EXE fallback’dan foydalaning. |
| UI sekinlashdi | Matrix, chart, table va event limitlarini tekshiring; katta raw data’ni diskka yozing. |
To‘liq formal field’lar uchun repository’dagi `docs/event_schema.md`, amaliy API uchun `docs/visualization-guide.md`, development va release uchun `docs/development.md` hamda `docs/windows-installer.md`ni o‘qing.
Tutorial template’lariga o‘tish →