Juvio là một kernel UV dành cho Jupyter, mang đến khả năng tạo notebook đáng tin cậy, quản lý dependency thông minh và tương thích với hệ thống Git. Công cụ này cho phép cài đặt gói trực tiếp từ notebook và lưu trữ các dependency dưới dạng metadata bên trong file notebook.
Mục lục
Những Tính Năng Nổi Bật Của Juvio
Quản Lý Dependency Ngay Trong Notebook
Với Juvio, bạn có thể dễ dàng cài đặt các gói cần thiết bằng cú pháp đơn giản:
%juvio install numpy pandas
Các dependency sẽ được lưu trực tiếp trong notebook theo chuẩn PEP 723:
# /// script<br>
# requires-python = "==3.10.17"<br>
# dependencies = [<br>
# "numpy==2.2.5",<br>
# "pandas==2.2.3"<br>
# ]<br>
# ///
Thiết Lập Môi Trường Tự Động
Khi mở notebook, Juvio sẽ tự động cài đặt các dependency trong môi trường ảo tạm thời (sử dụng uv), đảm bảo notebook chạy với đúng phiên bản package và Python yêu cầu.
Định Dạng Thân Thiện Với Git
Juvio chuyển đổi notebook sang định dạng script-style sử dụng các marker # %%, giúp việc so sánh thay đổi và kiểm soát phiên bản trở nên dễ dàng:
# %%<br>
%juvio install numpy<br>
# %%<br>
import numpy as np<br>
# %%<br>
arr = np.array([1, 2, 3])<br>
print(arr)<br>
# %%
Hướng Dẫn Sử Dụng Juvio
Lưu ý: Juvio hiện đang trong giai đoạn beta và có thể có lỗi.
- Cài đặt Juvio:
- Cài đặt uv (nếu chưa có):
- Khởi động JupyterLab và tạo Juvio Notebook
- Cài đặt package cần thiết trong notebook bằng lệnh:
pip install juvio<br>
jupyter labextension enable juvio-frontend
Tham khảo hướng dẫn tại: https://docs.astral.sh/uv/getting-started/installation/
%juvio install ...
Tại Sao Nên Sử Dụng Juvio?
- Không cần file lock hoặc requirements phức tạp
- Đảm bảo tính tái sản xuất
- Tích hợp với hệ thống Git một cách tối ưu
Công Nghệ Nền Tảng
- uv: Công cụ quản lý package Python tốc độ cao
- PEP 723: Tiêu chuẩn quản lý dependency inline trong Python
- Định dạng tương tự jupytext cho kiểm soát phiên bản