Khởi động lại vỏ python

Xin chào các bạn, trong bài viết trước tôi đã giới thiệu đến các bạn bài hướng dẫn Thiết lập máy chủ Linux chạy Python tự động sử dụng Oracle Cloud (Luôn miễn phí) để tạo cho mình môi trường thực thi và lên lịch các tập lệnh Python hoàn toàn . Đối với những người mới làm quen và bắt đầu học Python có lẽ các bạn sẽ khá bối rối với những khái niệm mới lạ nào là cài đặt Python thuần túy hay Anaconda, sử dụng Visual Studio Code hay PyCharm, v.v. để lập trình Python. Chưa hết, khi các bạn sử dụng Macbook thì thức thiết lập môi trường thực thi và hành vi của máy quay lại khác với máy tính Windows, khiến công việc quen thuộc và thực thi Python gặp không ít khó khăn. Nếu các bạn biết và sử dụng Google Colab tốt, tôi tin các bạn cần phải đối mặt với những rắc rối nêu trên. Trong thực tế, Google Colab được tôi chọn sử dụng là môi trường thực thi và lập trình duy nhất cho lớp học Python mà tôi đang định hướng bởi những lợi ích hết sức rõ ràng. Không để các bạn phải đợi lâu nữa, hãy cùng tôi khám phá Bí quyết lập trình Python và phân tích dữ liệu với Python thông qua hướng dẫn sử dụng Google Colab nhé

1. Google Colab là gì?

Google Colab là một biến thể dạng Jupyter Notebook cho phép thực thi Python trên nền tảng đám mây, được cung cấp bởi Google. Sử dụng Google Colab có những lợi ích ưu việt như. sẵn sàng chạy Python trên bất kỳ thiết bị nào có kết nối internet mà không cần cài đặt, chia sẻ và làm việc theo nhóm một cách dễ dàng, sử dụng GPU miễn phí cho các dự án về AI

Ngoài những lợi ích được tóm tắt như trên, Google Colab còn cung cấp cho bạn trải nghiệm lập trình Python tuyệt vời với những nâng cấp cực kỳ hữu ích không có trong Jupyter Notebook, JupyterLab đơn thuần. Những tính năng tôi đánh giá cao ở Google Colab phải kể đến như

  • Tạo mục lục dựa trên các Heading viết bằng ngôn ngữ markdown giúp bạn dễ dàng cấu trúc Notebook do mình làm việc. Bạn cũng có thể Thu gọn (Collapse) hoặc Mở rộng (Expand) các phần nội dung khi soạn thảo cực kỳ tiện lợi. Tôi đang làm việc với Visual Studio Code, Jupyter Lab hay Jupyter Notebook đều mong chúng phải có tính năng tương tự như Google Colab. Tôi cũng đã sử dụng Google Colab để soạn thảo 1 giáo trình hoàn chỉnh có khả năng tương tác cao cho khóa học Python
  • Thêm hình ảnh, biểu mẫu dễ dàng với markdown giúp bạn trình bày báo cáo hoặc làm bảng điều khiển cực tiện lợi. Đôi khi bạn có thể ẩn các dòng mã để xem Notebook gọn gàng hơn với tính năng biểu mẫu
  • Kết nối dễ dàng với Google Drive, Google Sheets để bắt tay vào phân tích dữ liệu "trên mây" hoàn toàn
  • Chạy Python trên Cloud hay Local Runtime (Python trên máy tính cá nhân) của bạn đều cho trải nghiệm tốt. Bạn vẫn tận dụng được tính năng tuyệt vời của Google Colab khi chạy với Python trên Local Runtime trong khi không bị Google tự động xóa dữ liệu khi kết thúc phiên làm việc như khi chạy trên Cloud
  • Tự động lưu lịch sử chỉnh sửa thành các phiên bản giúp bạn dễ dàng khôi phục lại phiên bản gần nhất nếu cần khi bạn gặp lỗi. Tính năng này tương tự như trên Google Trang tính hoặc Google Tài liệu, bạn thậm chí không cần đến Github để lưu trữ các phiên bản chỉnh sửa này
  • Cho phép tìm kiếm và chèn các đoạn mã soạn thảo có sẵn trong các Mẫu (của bạn) vào Notebook. Tính năng này rất hay bởi bạn không cần phải mở thêm nhiều tệp lưu trữ để tìm lại các đoạn mã mẫu mình đã biết khi cần. Quy trình thiết lập chương trình Python trở nên đơn giản và hiệu quả hơn rất nhiều
  • Tạo bảng điều khiển viết bằng Python và chia sẻ với nhóm dễ dàng nếu cần tương tự như Google DataStudio nhưng linh hoạt và mạnh mẽ hơn rất nhiều

Tuy nhiên, Google Colab có 1 nhược điểm gây khó chịu, không ít đó là dữ liệu (bộ nhớ tạm thời) của phiên làm việc sẽ bị xóa sau khi bạn không hoạt động trong 1 thời gian nhất định để Colab đảm bảo có thể cung cấp tài nguyên . Do đó mỗi khi mở Google Colab, nếu bạn cần sử dụng các thư viện bên thứ 3 thì bạn cần cài đặt và nhập lại từ đầu để có thể sử dụng. Phiên bản Colab Pro giúp giải quyết vấn đề này nhưng hiện không áp dụng cho thị trường Việt Nam

2. Thao tác cơ bản với Google Colab

2. 1. Các thiết lập hữu ích

2. 1. 1. Language setting setting

Google Colab mặc định hiển thị ngôn ngữ tiếng Việt cho tôi nhưng tôi luôn lựa chọn làm việc với phiên bản tiếng Anh để tiện giao tiếp và tìm kiếm hỗ trợ dễ dàng khi cần. Nếu bạn cũng cần thay đổi ngôn ngữ, hãy tìm lựa chọn này ở menu

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
4 >>
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
5

 

Bạn có thể sử dụng cách thay đổi

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
6 thành
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
7 trong địa chỉ của Notebook ở thanh địa chỉ trên trình duyệt. Ví dụ, thay đôỉ
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
8 sang
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
9 sau đó Enter

2. 1. 2. Bật Chế độ tối

Nếu bạn thích chế độ làm việc của Darkmode, thì có thể bật nó lên dễ dàng bằng cách nào đó. Tìm trên thanh Menu và chọn

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
0 >>
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
1 hoặc nhấp vào hình chiếc bánh răng ở góc phải phía trên Notebook bên cạnh hình đại diện của bạn để mở mục Cài đặt. Chọn tùy chọn
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
0 trong mục Chủ đề và nhấp vào
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
1 để lưu cài đặt

2. 1. 3. Bật các tùy chọn hỗ trợ cài đặt chương trình

Mở mục cài đặt và chọn Trình chỉnh sửa, đánh dấu chọn hết tất cả các tùy chọn trong mục này. Trong đó đặc biệt là

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
2 giúp bạn hiển thị số thứ tự của mã dòng trong 1 ô mã và
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
3 giúp hiển thị cơ sở nhận đầu dòng rất hữu ích, hạn chế xảy ra lỗi định dạng khoảng cách không đúng trong Python

2. 2. Thao tác với File & Folder

2. 2. 1. Tạo mới, mở hoặc tải lên 1 Notebook sẵn có

Để mở Tệp bằng Google Colab, bạn có thể sử dụng tổ hợp phím tắt Ctrl + O (hoặc Command + O trên Macbook). Bạn có 5 tùy chọn chính trong đó có

  • jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    4 cho phép mở tập dữ liệu ví dụ
  • jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    5. Open notebook was running near here
  • jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    6 mở Jupyter Notebook từ Drive (tệp định dạng
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    7)
  • jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    8 Cho phép bạn kết nối với Github và sao chép các dự án của mình cũng như mở bằng Colab
  • jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    9 cho phép bạn duyệt tệp trên máy tính cá nhân và tải lên tệp sổ ghi chép có định dạng
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    7

2. 2. 2. ưu Notebook đang làm việc

Google Colab thực hiện lưu dữ liệu công việc của bạn hoàn toàn tự động tuy nhiên trong trường hợp bạn không yên tâm hoặc muốn có nhiều tùy chọn lưu trữ hơn thì có thể tìm đến

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
41 >>
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
42 và chọn lưu tệp trên Google Drive hoặc

2. 2. 3. Tải xuống Sổ tay

Bạn có thể tải Notebook về máy dưới dạng tệp Jupyter Notebook có định dạng

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
7 hoặc tệp Python có định dạng
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
44 bằng cách mở menu
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
42 >>
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
46 sau đó chọn tệp định dạng tương ứng

2. 2. 4. Tải dữ liệu lên

Để tải dữ liệu lên bộ nhớ tạm thời của phiên làm việc trong Colab, bạn có thể chọn mục Thư mục như trong hình sau đó chọn biểu tượng Tải dữ liệu lên như hình minh họa dưới đây. Trong trường hợp bạn sử dụng dữ liệu từ Google Drive để làm việc, hãy làm theo hướng dẫn ở phần tiếp theo của bài viết

Khởi động lại vỏ python

2. 2. 5. Sao chép đường dẫn tệp

Để có thể sao chép đường dẫn tệp hoặc thư mục khi bạn cần thao tác mở hoặc lưu tệp lưu trữ, bạn có thể nhấp chuột phải vào tệp hoặc thư mục trong cây thư mục và chọn

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
47

Khởi động lại vỏ python
Sao chép đường dẫn tệp hoặc thư mục

2. 3. Edit - Soạn thảo Notebooktrong Google Colab

  • Ngoài việc sao chép văn bản thông thường, Google Colab cho phép bạn sao chép/dán ô Mã và ô Văn bản khá thuận lợi. Tính năng này khá hay nhưng tôi không thấy trên Jupyter Notebook, Jupyter Lab và Visual Studio Code. Để sao chép/dán các ô này, bạn sử dụng Ctrl và nhấp vào chọn các ô cần sao chép/dán sau đó sử dụng tổ hợp phím tắt
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    48 +
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    49 và
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    48 +
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    51 quen thuộc
  • Bạn có thể kích hoạt tính năng
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    52 bằng tổ hợp phím
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    48 +
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    54 hoặc chọn biểu tượng kính lúp ở thanh công cụ bên trái màn hình

2. 4. Xem - màn hình hiển thị trong Google Colab

Chọn Menu >> Xem

  • Lịch sử mã đã thực thi. Xem lịch sử các dòng lệnh đã được thực hiện trong Notebook
  • Thu gọn các phần. cho phép thu gọn các nội dung phân cấp nhỏ hơn ở mỗi tiêu đề cấp độ 1 (ví dụ Thu gọn tại ô chứa tiêu đề 1 thì các nội dung thuộc tiêu đề từ 2 trở đi và văn bản thông thường sẽ được thu gọn lại). Bạn có thể chọn 1 ô bất kỳ trong Notebook và sử dụng tổ hợp phím tắt
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    48 +
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    56 để thu gọn
  • Mở rộng các phần. Tác dụng đảo ngược so với Thu gọn các phần - cho phép mở rộng các mục nội dung bên dưới 1 cấp tiêu đề bất kỳ. Tổ hợp phím tắt
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    48 +
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    58 cho kết quả tương tự

2. 5. Chèn - Thêm nội dung vào Notebooktrong Google Colab

  • Để thêm 1 ô Mã (thực thi lệnh) hoặc ô Văn bản (văn bản), bạn có thể di chuột vào 1 ô có sẵn và chọn đối tượng cần thêm tương ứng. Nếu là Notebook hoàn toàn mới, bạn có thể thêm ô bằng 2 nút ở góc trái màn hình như khoanh đỏ ở hình minh họa sau. Bạn cũng có thể sử dụng tổ hợp phím tắt mặc định
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    48 +
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    60
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    61 để thêm 1 ô Mã
  • Để thêm 1 Tiêu đề mục, bạn có thể sử dụng tùy chọn tương ứng trong mục Menu >> Chèn hoặc thêm 1 Ô văn bản sau đó tạo Tiêu đề bằng định dạng đánh dấu. Ví dụ để tạo Heading 1 là mục giới thiệu như trong hình, bạn cần viết
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    62 vào ô Văn bản. Thêm 1 dấu # trước mục cho mỗi cấp độ Tiêu đề nhỏ hơn
  • Di động mã cào. Bằng cách kích hoạt tùy chọn này, bạn mở ra 1 Ô mã sử dụng như bản nháp thực thi mã bên cạnh soạn thảo chính trong Notebook

Khởi động lại vỏ python
Thêm ô mã hoặc ô văn bản

3. Runtime - Môi trường thực thi Pythontrong Google Colab

3. 1. Thực thi các dòng lệnh Python như thế nào?

Để thực hiện các dòng lệnh trên Google Colab, bạn nhấp vào nút Phát ở đầu mỗi ô mã hoặc chọn ô mã cần thực hiện sau đó sử dụng tổ hợp phím tắt Shift + Enter. Bạn cũng có thể sử dụng Menu

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
63 với các tùy chọn tùy chọn thực thi đa dạng như

  • Chạy tất cả. thực thi toàn bộ các dòng lệnh có trong Colab
  • Chạy trước. Thực hiện dòng lệnh xuất hiện trước ô mã bạn đang chọn
  • Chạy ô tiêu điểm. Thực thi mã ô bạn đang chọn
  • Chạy lựa chọn. Thực hiện các ô mã bạn chọn (ấn giữ phím Shift và sử dụng chuột để lựa chọn nhiều ô mã)
  • Chạy sau. Thực thi các ô mã kể từ ô mã bạn đang chọn về sau

3. 2. Dừng thực thi lệnh & khởi động lại môi trường

Đôi khi sự việc xảy ra không như mong muốn, bạn có thể muốn dừng quá trình thi hoặc khởi động lại môi trường làm việc của Google Colab (thời gian chạy). Các tùy chọn dưới đây của menu Runtime sẽ giúp ích cho bạn

  • Thực hiện gián đoạn. Dừng thi hành các câu lệnh
  • Khởi động lại thời gian chạy. Khởi động lại thời gian chạy để cập nhật các thay đổi (ví dụ: khi bạn cài đặt thư viện mới và bắt buộc phải khởi động lại thời gian chạy để áp dụng các thay đổi) hoặc đơn giản là xóa các lỗi & chạy lại thời gian chạy
  • Khởi động lại và chạy tất cả. Khởi động lại thời gian chạy và chạy toàn bộ câu lệnh trong Colab
  • Thời gian chạy khôi phục cài đặt gốc. Xoá toàn bộ trạng thái thực thi hiện tại của runtime bao gồm các biến thông báo khai báo, tệp sau đó khởi động lại runtime

3. 3. Thay đổi loại Runtime trên Google Colab

Khi sử dụng Colab cho các dự án liên quan đến Machine Learning, có thể bạn sẽ muốn khai thác tối đa sức mạnh của Google Colab để thực thi lệnh với ít thời gian hơn. Khi đó tùy chọn tăng tốc phần cứng với GPU hoặc TPU sẽ trở nên cực kỳ hữu ích

To change the option Runtime, you find from

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
64

3. 4. Cài đặt thư viện mới

Để cài đặt thư viện mới không có sẵn trong Google Colab, bạn hãy thực hiện câu lệnh

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
65 ở 1 ô mã bất kỳ trong đó
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
66 là tên thư viện bạn muốn cài đặt thêm. Ví dụ, để cài đặt sdk facebook business của thư viện cho Python, chúng ta thực hiện câu lệnh này
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
67.  

Thông thường, bạn sẽ phải cài đặt lại các thư viện không có sẵn khi làm việc với Colab sau khi kết thúc phiên làm việc trước đó 1 thời gian (không có con số cụ thể, có thể là 15 - 30 phút không hoạt động). Điều này cũng gây ra đôi chút khó chịu và mất thời gian cài đặt lại các thư viện nếu bạn sử dụng nhiều thư viện bên ngoài

3. 5. Nhập thư viện

Để nhập 1 thư viện bất kỳ vào Colab, bạn sử dụng câu lệnh

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
68 trong đó
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
66 là thư viện bạn muốn nhập,
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
70 ở đây là tên rút gọn (bí danh) bạn muốn đặt cho thư viện đó để tiện gọi thư viện khi làm việc. Ví dụ, tôi muốn nhập thư viện
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
71 và gán cho nó cái tên Rút gọn là
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
72, tôi sẽ nhập câu lệnh sau vào 1 ô mã và thực thi.
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
73

Trong một số trường hợp tên thư viện của bạn đã rút gọn sẵn thì không nhất thiết phải gán bí danh, bạn có thể nhập thư viện với lệnh đơn giản

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
74

4. mẹo sử dụng Google Colab

4. 1. Code Snippet (Đoạn mã)

Đây là một tính năng khá hay ho của Google Colab cho phép bạn tìm kiếm và thêm các đoạn mã có sẵn vào Notebook bạn đang làm việc, bạn có thể tiết kiệm rất nhiều thời gian của mình với tính năng này

Để chèn 1 đoạn mã, bạn sử dụng tổ hợp phím tắt Ctrl + Alt + P (Control + Option + P trên máy Mac) hoặc nhấp vào biểu tượng Đoạn mã ở thanh công cụ phía bên trái màn hình hoặc mở từ

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
75

Để thêm 1 Notebook do bạn soạn thảo có chứa các đoạn mã mẫu vào Colab, bạn chỉ cần sao chép URL của Notebook đang duyệt và dán vào mục

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
76 trong phần cài đặt Colab

Khởi động lại vỏ python
Thêm URL của Notebook chứa đoạn mã mẫu vào Google Colab để tiện cho việc tìm kiếm và sử dụng lại

Lưu ý rằng, để dễ dàng tìm kiếm các đoạn mã, bạn cần cấu trúc các tiêu đề 1 ở trước mỗi đoạn mã (chỉ cho phép tìm kiếm tiêu đề 1 trong mục Đoạn mã). Bạn chỉ cần thêm 1 dấu # trước tên mục (dấu # biểu thị tiêu đề cấp độ 1, bạn có thể tham khảo thêm về ngôn ngữ Markdown để hiểu rõ)

Khởi động lại vỏ python
Đặt tên tiêu đề cho đoạn mã mẫu trên Google Colab

4. 2. Ô mã cào - Ô chứa mã tạm thời

Ô chứa mã tạm thời cho phép bạn thực hiện các câu lệnh dưới dạng bản nháp mà không ảnh hưởng đến kết quả hoặc trình bày Notebook của bạn. Bạn có thể kích hoạt tính năng này bằng tổ hợp phím tắt Ctrl + Alt + N (Control + Option + N với Mac) hoặc mở từ

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
77. Một cách khác để kích hoạt tính năng này là bạn mở Bảng lệnh bằng tổ hợp phím Ctrl + Shift + P sau đó tìm ô mã cào và Enter để chọn

4. 3. Bảng lệnh - Command palette

Bảng lệnh là 1 tính năng tiện lợi để tìm kiếm các thao tác cần thực hiện với Colab nhanh chóng khi bạn đang "viết mã" tương tự như khi bạn sử dụng với Visual Studio Code. Để mở tính năng nhanh này, bạn sử dụng tổ hợp phím tắt Ctrl + Shift + P trên máy tính (phím tắt phù hợp với cả Windows và Mac)

4. 4. Phím tắt - Phím tắt

Google Colab cung cấp cho bạn bộ phím tắt đa dạng để kích hoạt các tính năng hữu ích. Để mở danh mục phím tắt và có thể cài đặt lại phím tắt, bạn giữ đồng thời tổ hợp phím Ctrl + M + H (Command + M + H cho Mac)

Khởi động lại vỏ python
Thiết lập phím tắt cho Google Colab

4. 5. Mục lục (TOC hay Mục lục)

TOC là tính năng rất hay của Google Colab mà tôi mong sao Visual Studio Code và Jupyter Lab được bổ sung thêm. Mục lục cho phép bạn chuyển nhanh giữa các phần nội dung của Colab, bạn cũng có thể Thu gọn hoặc Mở rộng các nội dung thuộc từng cấp tiêu đề để làm việc gọn gàng hơn với Colab. Ngoài ra tính năng này còn giúp bạn trải nghiệm làm việc với Python như đang soạn thảo văn bản thông thường hay viết sách. Tôi tận dụng tính năng này để trình bày toàn bộ giáo trình khóa học Python của mình và chia sẻ cho các bạn học viên 1 cách thuận lợi.

Khởi động lại vỏ python
Tính năng Mục lục trên Google Colab

4. 6. Chạy Google Colab với Local Runtime (môi trường Python trên máy tính cá nhân của bạn)

Google Colab cho phép bạn lựa chọn Cloud Runtime được cung cấp bởi Google giúp bạn tận dụng sức mạnh GPU, TPU trên môi trường Cloud hoặc bạn có thể sử dụng Local Runtime do bạn thiết lập (môi trường Python trên máy tính cá nhân). Use Local Runtime giúp bạn tránh phải cài đặt lại thư viện cần thiết mỗi lần sử dụng Google Colab. Khi đó, Google Colab hoạt động tương tự như Jupyter Lab hoặc Jupyter Notebook, được mở trên trình duyệt web vậy

Vì 1 lý do nào đó, hướng dẫn thiết lập Colab có sẵn của Google để chạy với Local Runtime không hoạt động đúng như tài liệu, tôi đã thực hiện 1 vài sửa đổi nhỏ với câu lệnh Terminal do Google cung cấp. Có thể hướng dẫn này sẽ giúp bạn thoát khỏi rắc rối

Lưu ý nhỏ. Nếu bạn sử dụng Windows máy tính, hãy thực hiện cài đặt các bước dưới đây với môi trường Python Anaconda, sử dụng Anaconda Prompt thay vì Command Prompt mặc định của Windows. Nếu không sử dụng Anaconda Prompt, bạn có thể gặp lỗi

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
78 khi cố bật tiện ích mở rộng
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
79

Khởi động lại vỏ python
Anaconda Prompt trên Widows bằng cách nhập các phím Windows sau đó tìm kiếm Anaconda

Bước 1. Cài đặt Jupyter trên máy tính

Chọn 1 trong 2 cách dưới đây, mở terminal/command prompt và chạy câu lệnh tương ứng. Nếu bạn đã cài đặt anaconda thì có thể bỏ qua bước này. Thao tác này chỉ cần thực hiện 1 lần duy nhất

  • Cài đặt với Anaconda.
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    80
  • Settings with pip.
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    81

Bước 2. Cài đặt và kích hoạt tiện ích mở rộng jupyter_http_over_ws

Nhập đoạn mã sau và thực thi trên Terminal/Command Prompt (chỉ cài đặt 1 lần). Nếu bạn đang sử dụng thời gian chạy của anaconda thì cần mở dấu nhắc lệnh (trên máy tính Windows) để chạy lệnh này. Riêng với Mac, bạn có thể chạy lệnh dưới đây với Terminal mặc định

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
2

Bước 3. Khởi động máy chủ và xác thực

Mỗi khi muốn chạy Colab trên môi trường cục bộ, bạn cần thực hiện bước này. Nhập đoạn mã dưới đây vào Terminal/command prompt (hoặc anaconda prompt trên windows). Sau khi máy chủ được khởi động, Terminal sẽ hiển thị URL dưới dạng https. //. which you must copy to use. Nhấn nút kết nối ở góc phải notebook Colab và dán URL bạn vừa sao chép để kết nối

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0

Nếu bạn muốn mở 1 thư mục cụ thể khi chạy Google Colab với thời gian chạy cục bộ, bạn có thể tùy chọn biến câu lệnh ở bước 3 để chạy với Terminal/Command Prompt. Dưới đây, mình muốn Google Colab sẽ làm việc tại thư mục

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
82

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
83

4. 7. mẹo nhỏ chuyển đổi nhanh giữa các môi trường Python

Tôi thường xuyên soạn thảo Notebook và lập trình Python để sử dụng trên nhiều môi trường máy tính khác nhau như Google colab, Macbook, Windows, Raspberry Pi, Linux Server vì vậy việc cấu hình chỉ thư mục sao cho tiện lợi sử dụng

Khởi động lại vỏ python
Thiết lập đường dẫn thư mục để sử dụng Jupyter Notebook trên nhiều môi trường máy tính

Một mẹo nhỏ tôi thường xuyên sử dụng đó là gán địa chỉ thư mục làm việc với biến

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
84, gán dấu gạch chéo ngược của máy tính Windows/Mac/Linux với biến
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
85 (các bạn có thể biết Windows sử dụng dấu gạch chéo ngược
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
86 để ngắt thư . Google Colab thực chất chạy trên môi trường Linux). Do đó, mỗi khi cần tham chiếu đến 1 thư mục, tệp trong thư mục đang làm việc, tôi sử dụng hàm
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
88 để nối các thành phần của tên này với nhau. Ví dụ để đọc 1 tệp mẫu. csv, tôi sử dụng câu lệnh

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
89

4. 8. Mount & Unmount Google Colab với Google Drive (Kết nối & ngắt kết nối)

Để tương tác với tệp & thư mục trong Google Drive của bạn trong Google Colab, bạn cần thực hiện thao tác gắn ổ đĩa. Việc này rất đơn giản, bạn nhấp vào biểu tượng Thư mục và chọn biểu tượng Google Drive, sau đó 1 đoạn mã sẽ được tự động thêm vào Colab, bạn cần thực hiện đoạn mã này, 1 tab mới được mở ra yêu cầu bạn xác thực quyền truy cập . Do mình đã kết nối Drive nhiều lần gần đây nên video demo dưới đây khi mount drive Google không bắt mình xác thực quyền truy cập 1 lần nữa.  

Connected and connect to Google Drive with Colab notebook. gắn kết và ngắt kết nối ổ đĩa google

Với những người sử dụng nhiều tài khoản Google trong cùng 1 trình duyệt như mình, đôi khi xác thực nhầm tài khoản để kết nối khiến bạn không gặp rắc rối vì không biết làm sao để thay đổi tài khoản và truy cập các thư mục cần thiết . Đây là đoạn mã bạn cần thực thi

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
90

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
91

 

Bạn có thể chèn đoạn mã này vào 1 tệp mẫu Colab để truy cập nhanh từ giao diện Code Snippet của Colab Notebook như trong video demo mình thực hiện

4. 9. Connected with Google Colab with Google Sheets

Trong Google Colab đã có sẵn đoạn mã để bạn nhập/xuất đơn giản nhất nhưng cũng bất tiện vì mỗi lần thực hiện lệnh đọc/ghi dữ liệu với Google Trang tính trong 1 phiên làm việc mới, bạn phải xác thực quyền truy cập 1 . Bài hướng dẫn toàn bộ tập tin của mình giúp các bạn thiết lập kết nối với Google Sheets thông qua 1 tài khoản dịch vụ thuận tiện tại đây. Đọc và xuất dữ liệu Google Sheets với Python & Jupyter Notebook

4. 10. Khôi phục Colab Notebook về phiên bản trước

Trong nhiều trường hợp, thao tác nhầm lẫn, bạn có thể xóa 1 hoặc nhiều khối mã, thậm chí xóa cả chương trình nội dung, chắc chắn bạn sẽ cần 1 thao tác giúp hoàn tác thao tác này. Đôi khi bạn cũng muốn khôi phục 1 phiên bản Notebook cũ hơn và bỏ qua các thay đổi đã thực hiện gần đây. Tính năng Lịch sử sửa đổi sẽ được cứu cánh cho bạn. Để truy cập tính năng này, hãy tìm

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
92. Như vậy, mặc dù không sử dụng Github, bạn vẫn có thể kiểm tra các phiên bản khác nhau của Notebook mình thực hiện với Colab.  

Khôi phục phiên bản Notebook cũ hơn với tính năng Lịch sử sửa đổi trong Google Colab

4. 11. Tạo bảng điều khiển với Google Colab hoàn toàn trực tuyến

Nếu bạn có ý định sử dụng Google Colab như 1 bảng điều khiển python "trên mây" thì cũng hoàn toàn khả thi. Để thực hiện ý tưởng này, bạn có thể cần sử dụng tập lệnh để đồng bộ tệp với Google Drive thông qua thư viện Python PyDrive như tôi đang sử dụng (lên lịch làm mới dữ liệu tự động bằng crontab trên máy Raspberry Pi) hoặc

4. 12. Connected Google Colab with Github

Để đọc các kho lưu trữ trên Github hoặc lưu Notebook của bạn trên Github, bạn có thể thực hiện rất đơn giản

  • Mở tệp từ Github. sử dụng
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    93 và chọn nguồn lưu trữ là Github sau đó xác thực việc truy cập tài khoản nếu bạn muốn mở tệp trong repo dưới dạng riêng tư
  • Lưu tệp vào Github. sử dụng
    jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
    94 sau đó xác thực tài khoản và chọn repo với chi nhánh bạn cần lưu tệp lưu trữ

4. 13. So sánh sự khác biệt giữa 2 Notebook

Google Colab cung cấp tính năng so sánh giữa 2 notebook với nhau rất tiện lợi. Bạn có thể kích hoạt tính năng này từ

jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
95

Khởi động lại vỏ python
So sánh nội dung giữa 2 notebook trong Google Colab

Hy vọng bài viết của mình có thể giúp các bạn mới làm quen với Python và cả những bạn đã sử dụng Google Colab ở mức cơ bản có thêm nhiều gợi ý bổ sung. Nếu nội dung bài viết hữu ích, bạn đừng quên để lại bình luận để chia sẻ suy nghĩ của mình hoặc bạn cũng có thể chia sẻ bài viết để nhiều bạn khác có thể tiếp cận nhé. Hẹn gặp lại các bạn trong các bài viết tiếp theo