Hướng dẫn tạo bài tập và tổ chức cuộc thi

Tài liệu này hướng dẫn bạn tạo bài tập dữ liệu, kiểm tra cách chấm điểm, rồi gom các bài tập thành cuộc thi cho lớp học trên SkillPixel LMS.

Hướng dẫn cho giảng viên · Cập nhật ngày 7 tháng 10 năm 2026

Tài liệu này dành cho ai

Người đọc
Giảng viên muốn giao bài tập dữ liệu hoặc tổ chức bài kiểm tra, cuộc thi cho học viên.
Sau khi đọc
Bạn tạo được bài tập, tải tệp dữ liệu và tệp đáp án, thử chấm điểm, sửa tệp rồi chấm lại. Bạn tạo được cuộc thi, gửi mật khẩu cho lớp, đưa cuộc thi vào bài học và xem kết quả.
Cách đọc
Xem video 4 phút 26 giây để nắm toàn bộ quy trình, rồi làm theo từng bước bên dưới. Bấm vào ảnh để xem cỡ lớn.
Dữ liệu mẫu
Tên người, tên bài, điểm số và ngày giờ trong ảnh và video là dữ liệu mẫu.

Tổng quan nhanh

Đọc 5 ý sau trước khi bắt đầu. Ý đầu tiên là quan trọng nhất.

Ý 1

Bài tập là bài dữ liệu

Bạn tải lên một tệp đầu vào (dữ liệu học viên tải về) và một tệp đáp án dạng CSV. Hệ thống không có trình soạn code và không chọn ngôn ngữ lập trình.

Ý 2

Học viên nộp tệp CSV

Học viên tự giải bên ngoài hệ thống, rồi nộp một tệp CSV kết quả. Vài giây sau, hệ thống chấm và hiện điểm.

Ý 3

Cột Usage chia Public và Private

Trong tệp đáp án, cột Usage đánh dấu mỗi dòng là Public hoặc Private. Điểm được tính riêng cho từng nhóm dòng.

Ý 4

Cuộc thi gom nhiều bài

Bạn chọn bài từ ngân hàng đề của mình, đặt lịch, điểm cho từng bài, và chọn công khai hoặc riêng tư.

Ý 5

Thi bắt đầu là khóa

Khi cuộc thi đã bắt đầu, chỉ quản trị viên mới đổi được thời gian hoặc cách chấm điểm. Hãy kiểm tra kỹ trước giờ thi.

Ví dụ: bài "Tổng hai số". Ba tệp liên quan có các cột như sau.

TệpAi tạoCác cộtMột dòng mẫu
Tệp đầu vàoBạnid, a, b1, 3, 5
Tệp đáp ánBạnid, tong, Usage1, 8, Public hoặc Private
Bài nộpHọc viênid, tong1, 8

Trong lúc thi, học viên chỉ thấy điểm trên các dòng Public. Điểm trên các dòng Private bị ẩn cho đến khi cuộc thi kết thúc, và bảng xếp hạng chung cuộc tính theo điểm Private. Nếu tệp đáp án không có cột Usage, mọi dòng được tính là Public.

Video hướng dẫn

Video dài 4 phút 26 giây. Giọng đọc bằng tiếng Anh, phụ đề tiếng Việt bật sẵn. Chấm tròn màu xanh là con trỏ chuột.

Trong video có gì

Bấm vào mốc thời gian để tua video đến đoạn đó.

  • Phần 1: Bài tập
  • Mở Quản lý Bài tập từ menu tài khoản
  • Tạo bài tập mới: tiêu đề, mô tả ngắn, độ khó, thẻ
  • Viết đề bài và mô tả dữ liệu
  • Chọn tệp đầu vào và tệp đáp án
  • Cột Usage: dòng Public và dòng Private
  • Chọn cách chấm So sánh CSV cơ bản
  • Tạo bài tập, bật Bài tập công khai
  • Thử chấm bằng Nộp bài benchmark
  • Lời giải đúng chỉ được 0,875: tệp đáp án có một dòng sai
  • Thay tệp đáp án, rồi Chấm lại tất cả
  • Điểm mới sau khi chấm lại
  • Phần 2: Cuộc thi
  • Mở Quản lý Cuộc thi
  • Tạo cuộc thi: tên, đường dẫn, mô tả
  • Lịch trình với cách tính giờ Cố định
  • Cách tính giờ Linh hoạt
  • Tắt Cuộc thi công khai để chuyển sang riêng tư
  • Thêm bài, đặt Điểm sàn, Điểm đích, Điểm tối đa
  • Lưu cuộc thi, lấy mật khẩu và link mời
  • Phía học viên
  • Cuộc thi trong bài học của khóa học
  • Tham gia, đăng ký, bắt đầu làm bài
  • Nộp tệp CSV, xem điểm và bảng xếp hạng
  • Kết quả
  • Bảng xếp hạng chung cuộc
  • Lưu ý: thi đã bắt đầu thì chỉ quản trị viên được sửa

Giọng đọc gọi các nút bằng tên tiếng Anh. Trên màn hình và trong phụ đề là tên tiếng Việt thật, giống các bước bên dưới. Ảnh trong tài liệu được chụp sau khi quay video, nên một vài con số khác với video (ví dụ đồng hồ đếm ngược của học viên).

Phần 1: Bài tập

Bài tập là bài luyện tập có chấm điểm tự động. Bạn có thể để học viên luyện tự do, hoặc đưa bài vào cuộc thi ở Phần 2.

1.1 Mở danh sách bài tập

  1. Mở menu tài khoản

    Bấm vào ảnh đại diện ở góc trên bên phải. Trong nhóm Giảng viên, chọn Quản lý Bài tập.

    Nút Giảng dạy màu tím trên thanh đầu trang mở trang dành cho học viên, không phải trang quản lý. Hãy dùng menu tài khoản.

    Menu tài khoản của giảng viên, mục Quản lý Bài tập đang được chọn.
    Nhóm Giảng viên có Quản lý Bài tập và Quản lý Cuộc thi.
  2. Xem danh sách

    Trang Bài tập chỉ hiện các bài do bạn tạo. Có hai tab Đang hoạt động và Đã lưu trữ, và ô tìm kiếm "Tìm kiếm bài tập của bạn".

    Nút ⋮ ở cuối mỗi dòng có Sửa, Xem các lượt nộp và Lưu trữ (với bài đã lưu trữ là Khôi phục). Ba nút trên cùng: Bài tập mở trang học viên thấy, Bộ chấm metric mở danh mục bộ chấm dùng chung, Tạo bài tập mới để tạo bài.

    Trang Bài tập của giảng viên với 6 bài, cột Hiển thị ghi Công khai hoặc Riêng tư.
    Sáu bài mẫu. Cột Hiển thị cho biết bài Công khai hay Riêng tư, cột Độ khó ghi Dễ, Trung bình hoặc Khó. Cột Lượt nộp ghi "–" ở mọi dòng vì cột này chỉ đếm bài nộp luyện tập (xem Lưu ý quan trọng).

1.2 Tạo bài tập mới

Bấm Tạo bài tập mới. Trang Bài luyện tập mới có nhiều phần, điền lần lượt từ trên xuống. Nút Tạo bài tập chỉ bấm được khi đã điền đủ Tiêu đề, Mô tả ngắn, Đề bài và Dữ liệu.

  1. Thông tin cơ bản

    Nhập Tiêu đề và Mô tả ngắn (bắt buộc). Để trống Slug thì hệ thống tự tạo từ tiêu đề, dòng "Xem trước URL" cho bạn thấy kết quả. Chọn Độ khó. Nhập Thẻ, cách nhau bằng dấu phẩy.

    Công tắc Bài tập công khai bị khóa khi đang tạo. Bạn bật nó sau, ở bước 1.3.

    Phần Thông tin cơ bản đã điền tiêu đề Tổng hai số, độ khó Dễ và hai thẻ.
    Tiêu đề "Tổng hai số", Slug để trống nên URL xem trước là tong-hai-so. Thẻ "python, cơ bản" hiện thành hai nhãn. Công tắc Bài tập công khai đang tắt và chưa bấm được.
  2. Đề bài

    Viết đề trong phần Đề bài bằng Markdown, có thể viết công thức toán (KaTeX). Bên phải là bản xem trước. Hãy ghi rõ định dạng tệp học viên phải nộp: dòng tiêu đề, các cột, và một ví dụ.

    Trình soạn Markdown của phần Đề bài, bên trái là văn bản, bên phải là bản xem trước.
    Đề bài có ba mục: Yêu cầu, Định dạng bài nộp ("Tệp .csv có tiêu đề id,tong") và Ví dụ. Công thức a + b hiện đúng ở bản xem trước.
  3. Dữ liệu

    Trong phần Dữ liệu, mô tả tập dữ liệu và định dạng tệp đầu vào.

    Phần Dữ liệu mô tả tệp đầu vào gồm 20 dòng với các cột id, a, b.
    Mô tả mẫu: tệp đầu vào gồm 20 dòng, các cột id, a, b.
  4. Tệp đầu vào và tệp đáp án

    Trong phần Tệp đầu vào & đáp án, bấm Chọn tệp cho từng loại:

    • Tệp đầu vào (.zip, .txt, .csv): dữ liệu học viên tải về để làm bài.
    • Tệp đáp án (.csv): kết quả đúng, dùng để chấm. Thêm cột Usage với giá trị Public hoặc Private cho mỗi dòng. Tệp phải là CSV hợp lệ, nếu không hệ thống sẽ từ chối.

    Khi đang tạo bài, tệp chỉ được chọn sẵn (trạng thái "Đã chọn"). Tệp được tải lên khi bạn bấm Tạo bài tập.

    Hai tệp đã chọn: tệp đầu vào 231 B và tệp đáp án 303 B, trạng thái Đã chọn.
    Cả hai tệp ở trạng thái "Đã chọn". Mỗi tệp có nút Bỏ chọn và Đổi tệp.
  5. Chấm điểm tự động

    Ở Cách chấm điểm, chọn một trong ba cách:

    • So sánh CSV cơ bản: so từng dòng bài nộp với dòng tương ứng trong tệp đáp án. Đây là cách đơn giản nhất, phù hợp khi đáp án là giá trị chính xác.
    • Catalog dùng chung: dùng một bộ chấm metric đã publish, ví dụ Accuracy, F1, ROC AUC, RMSE, MAE, R2.
    • Riêng bài này: tự viết hoặc nạp tệp metric.py cho riêng bài này.

    Với So sánh CSV cơ bản, giữ nguyên Giới hạn thời gian chấm (giây) là 20 nếu dữ liệu nhỏ. Ba công tắc bên dưới mặc định đều bật. Ý nghĩa từng mục nằm ở Ý nghĩa các tùy chọn.

    Phần Chấm điểm tự động với cách chấm So sánh CSV cơ bản và ba công tắc đang bật.
    So sánh CSV cơ bản đang được chọn. Giới hạn thời gian chấm 20 giây. Bỏ khoảng trắng đầu/cuối, Chuẩn hóa ký tự xuống dòng và Phân biệt chữ hoa/thường đều bật.

    Hai cách còn lại cần thêm thông tin:

    Cách chấm Catalog dùng chung với ô Tên cột ID dòng và ô chọn Bộ chấm metric.
    Catalog dùng chung: nhập Tên cột ID dòng (cột có trong cả tệp đáp án và bài nộp) và chọn Bộ chấm metric.
    Cách chấm Riêng bài này với Thứ tự xếp hạng và trình soạn metric.py.
    Riêng bài này: thêm Thứ tự xếp hạng (Điểm cao hơn tốt hơn hoặc Điểm thấp hơn tốt hơn) và trình soạn metric.py với các nút Khôi phục mẫu, Nạp .py, Mở rộng.
  6. Bấm Tạo bài tập

    Bấm Tạo bài tập ở góc trên bên phải. Thông báo "Đã tạo bài luyện tập." hiện ra và trang chuyển thành Chỉnh sửa bài luyện tập, có ba tab Chi tiết, Bài nộp, Bảng xếp hạng.

    Đầu trang Chỉnh sửa bài luyện tập với dải tóm tắt và ba tab Chi tiết, Bài nộp, Bảng xếp hạng.
    Dải tóm tắt cho biết Trạng thái, Hiển thị, Độ khó, cách Chấm điểm và số tệp. "Đã tải lên 2/2" nghĩa là cả tệp đầu vào và tệp đáp án đã lên. Ảnh chụp khi bài đã được công khai.

1.3 Công khai bài tập

Bài mới tạo luôn là bài riêng tư. Bài riêng tư không hiện trên trang Bài tập của học viên, chỉ dùng được trong cuộc thi. Nếu bạn chỉ định dùng bài trong cuộc thi, hãy để riêng tư.

  1. Bật Bài tập công khai và lưu

    Ở tab Chi tiết, phần Thông tin cơ bản, bật Bài tập công khai rồi bấm Lưu thay đổi. Thông báo "Đã cập nhật bài luyện tập." hiện ra.

    Công tắc chỉ bật được khi đã có đủ hai tệp. Nếu còn thiếu, trang sửa hiện danh sách "Cần để công khai:" để bạn biết còn thiếu gì. Với cách chấm Riêng bài này, metric.py còn phải được kiểm tra đạt.

    Phần Thông tin cơ bản trên trang sửa, công tắc Bài tập công khai đang bật.
    Công tắc Bài tập công khai đã bật. Thay đổi chỉ có hiệu lực sau khi lưu.

1.4 Thử chấm bằng bài nộp sandbox

Trước khi giao bài, hãy tự nộp một lời giải đúng và một lời giải sai để chắc rằng tệp đáp án và cách chấm hoạt động đúng. Bài nộp thử (sandbox) được chấm như bài của học viên nhưng không lên bảng xếp hạng. Bạn nộp được cả khi bài đang riêng tư, và không phải chờ giữa hai lần nộp.

  1. Mở hộp nộp bài thử

    Mở tab Bài nộp, bấm Nộp bài benchmark. Trong hộp Nộp bài thử nghiệm (sandbox), kéo thả tệp .csv vào hoặc bấm Chọn tệp, rồi bấm Nộp bài. Thông báo "Bài nộp sandbox đã vào hàng chờ chấm." hiện ra.

    Muốn hiện điểm này trên bảng xếp hạng như một mốc tham khảo, đánh dấu Công bố lên bảng xếp hạng và đặt Tên benchmark. Nếu chỉ để thử, bỏ qua hai mục này.

    Hộp Nộp bài thử nghiệm sandbox với một tệp CSV đã chọn.
    Đã chọn tệp lời giải đúng (1 KB). Công bố lên bảng xếp hạng để trống.
  2. Xem điểm

    Bấm bộ lọc Sandbox, rồi bấm Làm mới (hoặc đặt Tự động làm mới). Mỗi bài nộp có hai điểm từ 0 đến 1: Public và Private. Hình ở bước 1.5 cho thấy bảng này.

    Lời giải đúng phải được 1 ở cả hai cột. Nếu không, tệp đáp án hoặc cách chấm có vấn đề. Trong video, lời giải đúng chỉ được 0,875 ở các dòng Public (7 trên 8 dòng), vì tệp đáp án có một dòng sai.

1.5 Sửa tệp và chấm lại

Khi bạn thay tệp đáp án, các bài đã nộp không tự chấm lại. Bạn phải bấm chấm lại.

  1. Thay tệp đáp án

    Mở tab Chi tiết, phần Tệp đầu vào & đáp án. Bấm Thay thế tệp ở dòng tệp đáp án và chọn tệp đã sửa. Ở trang sửa, tệp được tải lên ngay, thông báo "Đã tải tệp lên." hiện ra.

    Hai tệp ở trạng thái Đã tải lên, mỗi tệp có nút Tải xuống và Thay thế tệp.
    Hai tệp đều "Đã tải lên". Tải xuống để xem lại tệp, Thay thế tệp để đổi. Mục Nguồn dữ liệu đầu vào cho phép chọn Liên kết ngoài thay vì tải tệp lên.
  2. Chấm lại tất cả

    Quay lại tab Bài nộp, bấm Chấm lại tất cả. Đọc hộp xác nhận, rồi bấm Chấm lại. Thông báo cho biết bao nhiêu bài đã vào hàng chờ chấm lại và bao nhiêu bài bị bỏ qua.

    Đánh dấu Chỉ bài nộp bị lỗi nếu bạn chỉ muốn chấm lại các bài gặp lỗi bộ chấm. Muốn chấm lại vài bài, dùng nút chấm lại ở từng dòng, hoặc tích chọn các dòng rồi bấm Chấm lại bài đã chọn.

    Hộp xác nhận Chấm lại tất cả bài nộp với ô Chỉ bài nộp bị lỗi.
    Hộp xác nhận nói rõ: mọi bài nộp, kể cả bài trong cuộc thi và sandbox, được chấm lại bằng tệp đáp án hiện tại. Điểm cũ bị xóa cho đến khi có kết quả mới.
  3. Kiểm tra kết quả mới

    Bấm Làm mới sau vài giây. Mỗi bài đã chấm lại có dòng "Chấm lại lúc …".

    Tab Bài nộp, bộ lọc Sandbox có 2 bài, lời giải đúng được 1.000000 ở cả Public và Private.
    Bộ lọc Sandbox có 2 bài. Lời giải đúng giờ được 1.000000 ở cả Public và Private. Lời giải sai được 0.750000 (6 trên 8 dòng Public) và 0.666667 (8 trên 12 dòng Private). Cả hai có dòng "Chấm lại lúc".

1.6 Theo dõi bài nộp

Tab Bài nộp của một bài tập hiện mọi bài nộp: luyện tập, trong cuộc thi và sandbox.

Ẩn chỉ gỡ một lượt nộp khỏi bảng xếp hạng, học viên vẫn thấy bài đó trong lịch sử của mình. Loại trừ gỡ mọi bài nộp của học viên đó, cũ và mới, khỏi bảng xếp hạng cho đến khi bạn khôi phục. Nút Học viên bị loại trừ mở danh sách để khôi phục.

Tab Bài nộp của bài Tính điểm trung bình, các bài nộp từ hai cuộc thi với điểm Public và Private.
Bài "Tính điểm trung bình", bộ lọc Trên bảng xếp hạng có 14 bài. Cột Cuộc thi ghi "Bài tập về nhà - Chương 2" hoặc "Kiểm tra nhanh tuần 1". Bấm để xem cỡ lớn.

Phần 2: Cuộc thi

Cuộc thi gom một số bài tập của bạn, đặt trong một khoảng thời gian, và xếp hạng học viên theo tổng điểm. Bạn dùng được cho bài kiểm tra tại lớp, bài tập về nhà có giới hạn thời gian, hoặc kỳ thi luyện tập.

2.1 Mở danh sách cuộc thi

  1. Vào Quản lý Cuộc thi

    Mở menu tài khoản, chọn Quản lý Cuộc thi. Trang Quản lý cuộc thi chỉ hiện các cuộc thi do bạn tạo, có ô tìm "Tìm cuộc thi...", hai tab Đang hoạt động và Đã lưu trữ.

    Các cột: Cuộc thi, Hiển thị, Thời gian (kèm cách tính giờ Cố định hoặc Linh hoạt), Số bài, Đã đăng ký. Nút Cuộc thi mở trang học viên thấy, nút Tạo cuộc thi để tạo mới.

    Trang Quản lý cuộc thi với 4 cuộc thi mẫu, hai công khai và hai riêng tư.
    Bốn cuộc thi mẫu. "Bài tập về nhà - Chương 2" là Riêng tư, Linh hoạt, 2 bài, 4 học viên đã đăng ký. "Kiểm tra giữa kỳ" chưa có ai đăng ký nên cột Đã đăng ký ghi "–".

2.2 Tạo cuộc thi

Bấm Tạo cuộc thi. Trang Tạo cuộc thi có bốn phần.

  1. Thông tin cơ bản

    Nhập Tên cuộc thi và Đường dẫn (slug). Đường dẫn chỉ gồm chữ thường, số và dấu gạch ngang, và không trùng với cuộc thi khác. Mô tả không bắt buộc, hỗ trợ Markdown. Bạn có thể ghi luật thi và cách tính điểm ở đây.

    Phần Thông tin cơ bản của cuộc thi Kiểm tra giữa kỳ - Lập trình cơ bản.
    Tên "Kiểm tra giữa kỳ - Lập trình cơ bản", đường dẫn kiem-tra-giua-ky-lap-trinh-co-ban.
  2. Lịch trình: chọn cách tính giờ

    Ở Cách tính giờ, chọn Cố định hoặc Linh hoạt. Rồi điền Mở đăng ký, Bắt đầu, Thời lượng (phút), và thêm Kết thúc nếu chọn Linh hoạt. Mỗi ô ngày mở lịch có ô Thời gian và hai nút Huỷ, OK. Đường thời gian bên dưới cho thấy các mốc.

    Cố địnhLinh hoạt
    Ai bắt đầu khi nàoMọi người thi cùng lúc, từ mốc Bắt đầu.Mỗi học viên tự chọn lúc bắt đầu, trong khoảng từ Bắt đầu đến Kết thúc.
    Khi nào kết thúcBắt đầu cộng Thời lượng.Mỗi học viên có đủ Thời lượng tính từ lúc họ bấm bắt đầu, nhưng không ai làm quá mốc Kết thúc. Hai người bằng điểm thì ai dùng ít thời gian hơn xếp trên.
    Đề bài hiện khi nàoKhi đến giờ Bắt đầu.Khi học viên bấm Bắt đầu làm bài.
    Các ô cần điềnMở đăng ký, Bắt đầu, Thời lượng.Mở đăng ký, Bắt đầu, Kết thúc, Thời lượng. Thời lượng phải nằm gọn trong khoảng Bắt đầu đến Kết thúc.
    Dùng khiKiểm tra tại lớp, cả lớp làm cùng giờ.Bài tập về nhà có giới hạn thời gian, học viên làm lúc nào tiện trong vài ngày.
    Lịch trình Cố định: mở đăng ký 13/10/2026 07:00, bắt đầu 20/10/2026 08:00, thời lượng 60 phút.
    Cố định: mở đăng ký 13/10 lúc 07:00, bắt đầu 20/10 lúc 08:00, 60 phút, nên kết thúc lúc 09:00.
    Lịch trình Linh hoạt với ô Kết thúc 10/10/2026 23:00, thời lượng 45 phút, và cảnh báo màu cam.
    Linh hoạt: bắt đầu 07/10 lúc 01:41, kết thúc 10/10 lúc 23:00, mỗi học viên có 45 phút. Dòng cảnh báo màu cam hiện vì đã có học viên bắt đầu làm bài, nên các ô giờ bị khóa.

    Mở đăng ký phải trước hoặc bằng Bắt đầu. Ô Thời lượng mặc định là 120 phút, nhập số phút nguyên từ 1 trở lên.

  3. Quyền truy cập: công khai hay riêng tư

    Công tắc Cuộc thi công khai mặc định bật. Cuộc thi công khai hiện trên trang Cuộc thi của học viên và ai cũng đăng ký được. Tắt công tắc để chuyển sang riêng tư: cuộc thi không hiện trong danh sách, học viên cần mật khẩu hoặc link mời để đăng ký.

    Hệ thống tạo Mật khẩu đăng ký (8 ký tự) sau khi bạn lưu cuộc thi. Bấm biểu tượng sao chép để lấy mật khẩu, hoặc bấm Sao chép link mời. Học viên mở link mời sẽ thấy hộp mật khẩu đã điền sẵn, chỉ cần bấm Đăng ký.

    Tạo mật khẩu mới làm mật khẩu cũ hết hiệu lực ngay. Link mời đã gửi cũng không dùng được nữa, bạn phải gửi lại.

    Phần Quyền truy cập: Cuộc thi công khai tắt, mật khẩu đăng ký 8 ký tự với nút sao chép.
    Cuộc thi công khai đang tắt. Bên dưới là mật khẩu, nút Sao chép link mời và Tạo mật khẩu mới.
  4. Danh sách đề bài và điểm

    Gõ tên bài vào ô "Tìm bài để thêm..." rồi bấm Thêm. Ô tìm chỉ tìm trong ngân hàng đề của bạn. Bài riêng tư cũng thêm được. Thứ tự trong danh sách là thứ tự P1, P2, … trên bảng xếp hạng. Dùng mũi tên để đổi thứ tự, biểu tượng thùng rác để xóa bài.

    Với mỗi bài, nhập ba con số:

    • Điểm sàn: điểm chấm (raw) được tính là 0 điểm. Bằng hoặc kém hơn mức này được 0.
    • Điểm đích: điểm chấm được tính là điểm tối đa. Bằng hoặc tốt hơn mức này được trọn điểm. Phải khác Điểm sàn.
    • Điểm tối đa: số điểm của bài trong tổng điểm cuộc thi, lớn hơn 0. Ô này điền sẵn 100.

    Với cách chấm So sánh CSV cơ bản, điểm chấm nằm từ 0 đến 1, nên thường đặt Điểm sàn 0 và Điểm đích 1.

    Danh sách đề bài với Tổng hai số 0, 1, 60 và Chuẩn hóa họ tên 0, 1, 40.
    Bài 1 "Tổng hai số": Điểm sàn 0, Điểm đích 1, Điểm tối đa 60. Bài 2 "Chuẩn hóa họ tên": 0, 1, 40. Tổng tối đa của cuộc thi là 100.

    Cách tính điểm một bài. Lấy điểm Private cao nhất của học viên ở bài đó. Điểm bài = Điểm tối đa × (điểm Private − Điểm sàn) ÷ (Điểm đích − Điểm sàn), rồi giới hạn trong khoảng 0 đến Điểm tối đa. Tổng điểm cuộc thi là tổng các bài.

    Ví dụ: bài phân loại hoa Iris có Điểm sàn 0,5, Điểm đích 0,95, Điểm tối đa 100. Học viên đạt 0,9 thì được 100 × (0,9 − 0,5) ÷ (0,95 − 0,5) = 88,89 điểm.

  5. Bấm Tạo cuộc thi

    Bấm Tạo cuộc thi. Thông báo "Đã tạo cuộc thi." hiện ra và trang chuyển thành Chỉnh sửa cuộc thi, có hai tab Thông tin và Đã đăng ký.

    Trên trang sửa, danh sách đề bài có nút lưu riêng là Lưu danh sách đề bài. Các phần khác lưu bằng Lưu cuộc thi. Nếu cuộc thi riêng tư, đây là lúc sao chép mật khẩu hoặc link mời để gửi cho lớp.

2.3 Đưa cuộc thi vào bài học

Bạn có thể đặt một cuộc thi riêng tư vào khóa học, dưới dạng bài học loại Cuộc thi. Học viên mở được bài học đó sẽ tham gia mà không cần nhập mật khẩu, vì mật khẩu được điền sẵn.

  1. Thêm bài học Cuộc thi

    Mở trình sửa khóa học từ Quản lý Giảng dạy. Ở bảng Nội dung bên trái, mở chương cần thêm, bấm Thêm bài học và chọn loại bài học Cuộc thi. Biểu mẫu Tạo bài học cuộc thi mới hiện ra.

  2. Điền biểu mẫu

    Nhập Tiêu đề, chọn cuộc thi ở ô Cuộc thi riêng tư, thêm Mô tả nếu cần, rồi bấm Lưu. Khi sửa lại bài học, các nút là Cập nhật và Xóa.

    Ô chọn chỉ liệt kê cuộc thi riêng tư do bạn tạo và chưa gắn với bài học khác. Mỗi bài học gắn với một cuộc thi.

    Trình sửa khóa học, biểu mẫu Chỉnh sửa bài học cuộc thi cho bài Bài tập về nhà - Chương 2.
    Bài học "Bài tập về nhà - Chương 2" (biểu tượng cúp) trong Chương 2, đã lưu và đang mở để sửa. Ô Cuộc thi riêng tư chọn cuộc thi cùng tên.

2.4 Học viên thấy gì

Biết màn hình của học viên giúp bạn hướng dẫn lớp và trả lời câu hỏi.

  1. Trang Cuộc thi và trang Bài tập

    Trang Cuộc thi của học viên chỉ liệt kê cuộc thi công khai, với Trạng thái Sắp diễn ra, Đang diễn ra hoặc Đã kết thúc. Cuộc thi riêng tư không có ở đây. Trang Bài tập của học viên chỉ liệt kê bài tập công khai.

    Trang Cuộc thi của học viên với hai cuộc thi công khai.
    Học viên chỉ thấy 2 cuộc thi công khai: "Luyện thi cuối kỳ" (Sắp diễn ra) và "Kiểm tra nhanh tuần 1" (Đã kết thúc). Hai cuộc thi riêng tư không hiện.
    Trang Bài tập của học viên chỉ có các bài công khai.
    Trang Bài tập có "Tổng hai số", "Phân loại hoa Iris", "Đếm số nguyên tố" và bài công khai của giảng viên khác. Ba bài riêng tư không hiện.
  2. Tham gia từ bài học

    Trong bài học Cuộc thi, học viên thấy một thẻ có các mốc thời gian và một nút. Nút ghi Tham gia cuộc thi khi chưa đăng ký, Mở cuộc thi khi đã đăng ký, Xem cuộc thi khi đã kết thúc.

    Ở trang cuộc thi, học viên bấm Đăng ký tham gia. Với cuộc thi riêng tư, hộp Nhập mật khẩu cuộc thi hiện ra, đã điền sẵn nếu học viên đến từ bài học hoặc link mời. Học viên bấm Đăng ký và thấy thông báo "Đăng ký thành công. Chúc bạn thi tốt!".

    Bài học cuộc thi phía học viên, nhãn Đang diễn ra và Bạn đã đăng ký, nút Mở cuộc thi.
    Học viên đã đăng ký nên nút ghi Mở cuộc thi. Trước khi đăng ký, nút này ghi Tham gia cuộc thi (xem video ở 3:27).
  3. Bắt đầu làm bài

    Với cuộc thi Cố định, đề bài hiện khi đến giờ Bắt đầu. Với cuộc thi Linh hoạt, học viên bấm Bắt đầu làm bài, rồi xác nhận Bắt đầu ngay trong hộp "Bắt đầu làm bài ngay?". Đồng hồ Thời gian còn lại của riêng học viên đó bắt đầu chạy và không tạm dừng được.

    Trang cuộc thi đang diễn ra phía học viên, thời gian còn lại 00:34:14, danh sách 2 bài.
    Cuộc thi Linh hoạt, Riêng tư. Thời gian còn lại 00:34:14 trên tổng 45 phút. Bên dưới là danh sách 2 bài. Nút Xếp hạng chung cuộc ở bên phải.
  4. Nộp bài và xem điểm

    Học viên mở một bài, có bốn tab Đề bài, Dữ liệu, Bài nộp của tôi, Bảng xếp hạng. Bấm Nộp bài, chọn tệp .csv, rồi bấm Nộp bài trong hộp thoại. Thông báo "Đã nhận bài nộp. Đang chấm điểm..." hiện ra, vài giây sau có điểm.

    Trong lúc thi, học viên chỉ thấy điểm Public, cả ở bài nộp của mình lẫn bảng xếp hạng của bài. Giữa hai lần nộp cùng một bài, học viên phải chờ 30 giây.

    Tab Bài nộp của tôi, 1 lượt nộp với điểm 0.875000 Cao nhất.
    Bài nộp của tôi: 1 lượt, điểm 0.875000, nhãn Cao nhất.
    Bảng xếp hạng của bài, xếp theo điểm public, 4 học viên.
    Bảng xếp hạng của bài ghi "Xếp hạng theo điểm public". 4 học viên, hai người 0.875000 và hai người 0.750000.

2.5 Theo dõi đăng ký và kết quả

  1. Xem ai đã đăng ký

    Trong trang Chỉnh sửa cuộc thi, mở tab Đã đăng ký. Bảng có Học viên, Email, Ngày đăng ký và Bắt đầu lúc (lúc học viên bấm bắt đầu, với cuộc thi Linh hoạt). Ô "Tìm theo tên hoặc email..." giúp tìm nhanh.

    Tab Đã đăng ký của cuộc thi Linh hoạt với 4 học viên và cột Bắt đầu lúc.
    4 học viên đã đăng ký. Dải tóm tắt ghi Hiển thị "Riêng tư · đã liên kết bài học" và Cách tính giờ "Linh hoạt, 45 phút".
  2. Xem bài nộp trong cuộc thi

    Bài nộp của cuộc thi nằm ở tab Bài nộp của từng bài tập. Chọn tên cuộc thi ở ô phạm vi để chỉ xem bài nộp của cuộc thi đó (xem 1.6).

  3. Xem bảng xếp hạng chung cuộc

    Mở trang cuộc thi dành cho học viên (với cuộc thi công khai, bấm nút Cuộc thi trên trang Quản lý cuộc thi) rồi bấm Xếp hạng chung cuộc. Không có trang xếp hạng riêng cho giảng viên.

    Bảng chỉ có sau khi cuộc thi kết thúc, và mọi bài phải có đủ Điểm sàn, Điểm đích, Điểm tối đa. Nếu còn bài đang chấm, trang ghi "Kết quả đang được tính" và kết quả là tạm thời.

    Bảng xếp hạng chung cuộc của Kiểm tra nhanh tuần 1 với 7 học viên, cao nhất 300.00 điểm.
    "Kiểm tra nhanh tuần 1", Đã kết thúc. Cột P1, P2, P3 là điểm từng bài (tối đa 100 mỗi bài). Hạng 1 được 300.00, hạng 2 được 288.89 vì bài P3 được 88,89 (ví dụ ở bước 2.2).

Ý nghĩa các tùy chọn

Bài tập

MụcÝ nghĩaMặc định, giới hạn
Tiêu đề, Mô tả ngắn, Đề bài, Dữ liệuCả bốn đều bắt buộc. Đề bài và Dữ liệu hỗ trợ Markdown và công thức toán.Tiêu đề tối đa 200 ký tự
SlugPhần định danh bài trong đường dẫn, không được trùng. Để trống thì tự tạo từ tiêu đề.Tối đa 255 ký tự
Độ khóNhãn Dễ, Trung bình, Khó cho học viên xem. Không ảnh hưởng đến điểm.Dễ
ThẻNhãn hiện trên danh sách, cách nhau bằng dấu phẩy.Tối đa 20 thẻ
Bài tập công khaiBật: bài hiện trên trang Bài tập của học viên. Tắt: bài ẩn ở đó, chỉ dùng được trong cuộc thi. Có hiệu lực khi lưu.Bài mới là riêng tư. Chỉ bật được khi đã có đủ hai tệp.
Tệp đầu vàoDữ liệu học viên tải về. Định dạng .zip, .txt hoặc .csv.Tối đa 5 GB
Nguồn dữ liệu đầu vào: Tải tệp lên / Liên kết ngoàiThay vì tải tệp, dán một link http(s) đến dữ liệu bạn lưu ở nơi khác. Lưu link sẽ xóa hẳn tệp đầu vào đã tải. Tải tệp lên sẽ thay link.Link tối đa 2048 ký tự
Tệp đáp ánKết quả đúng dạng CSV. Cột Usage (Public hoặc Private, không phân biệt hoa thường) chia điểm làm hai. Không có cột Usage thì mọi dòng là Public. Tệp không đọc được dạng CSV sẽ bị từ chối.Chỉ .csv, tối đa 64 MB
So sánh CSV cơ bảnDòng tiêu đề của bài nộp phải giống hệt tệp đáp án (không tính cột Usage), nếu không bài nộp bị từ chối vì sai định dạng. Dòng thứ i của bài nộp so với dòng thứ i của đáp án. Điểm = số dòng khớp ÷ tổng số dòng, từ 0 đến 1, tính riêng cho dòng Public và dòng Private. Dòng thừa trong bài nộp bị bỏ qua.
Bỏ khoảng trắng đầu/cuốiBỏ khoảng trắng hai đầu mỗi ô trước khi so, và bỏ các dòng trống ở cuối tệp.Bật
Chuẩn hóa ký tự xuống dòngCoi các kiểu xuống dòng của Windows và Mac cũ như nhau.Bật
Phân biệt chữ hoa/thườngTắt thì "ABC" và "abc" được coi là khớp.Bật
Giới hạn thời gian chấm (giây)Thời gian tối đa bộ chấm được dùng cho một bài nộp, với mọi cách chấm. Tăng lên khi dữ liệu lớn.20 giây, cho phép 5 đến 90
Catalog dùng chungDùng một bộ chấm metric đã publish (Accuracy, F1, ROC AUC, RMSE, MAE, R2 và các bộ khác). Cần chọn Bộ chấm metric và nhập Tên cột ID dòng. Thứ tự xếp hạng theo bộ chấm.
Riêng bài nàyViết hoặc nạp metric.py cho riêng bài. Tệp được kiểm tra ngầm. Trong lúc kiểm tra, bài nộp mới vẫn dùng bản hợp lệ trước đó. Chọn Thứ tự xếp hạng: Điểm cao hơn tốt hơn hoặc Điểm thấp hơn tốt hơn.metric.py tối đa 256 KB
Tên cột ID dòngCột có trong cả tệp đáp án và bài nộp, dùng để ghép dòng khi chấm bằng metric.Bắt buộc với hai cách chấm metric
Nộp bài benchmark (sandbox)Bài nộp thử của bạn, chấm như bài học viên, không lên bảng xếp hạng trừ khi chọn Công bố lên bảng xếp hạng và đặt Tên benchmark.Không giới hạn số lần, nộp được cả khi bài riêng tư
Lưu trữẨn bài khỏi học viên. Khôi phục sẽ trả lại trạng thái công khai hay riêng tư như cũ.Không có nút xóa

Chấm lại

MụcÝ nghĩa
Chấm lại tất cảMọi bài nộp của bài tập (luyện tập, cuộc thi, sandbox) được chấm lại bằng tệp đáp án và bộ chấm hiện tại. Điểm cũ bị xóa cho đến khi có kết quả mới, nên bảng xếp hạng có thể thay đổi. Bài đang được chấm bị bỏ qua. Bài kẹt trong hàng chờ quá 15 phút được chấm lại.
Chỉ bài nộp bị lỗiChỉ chấm lại các bài gặp lỗi bộ chấm.
Chấm lại bài đã chọn, Chấm lại bài nộp nàyChỉ chấm lại các dòng bạn chọn.
Cuộc thi đã bắt đầuNếu bạn không phải quản trị viên, bài nộp của cuộc thi đã bắt đầu bị bỏ qua và được đếm vào số "bỏ qua".

Cuộc thi

MụcÝ nghĩaMặc định, giới hạn
Tên cuộc thiTên hiển thị.Bắt buộc, tối đa 200 ký tự
Đường dẫn (slug)Phần cuối đường dẫn của trang cuộc thi. Chỉ chữ thường, số, dấu gạch ngang. Trùng thì báo "Đã có cuộc thi dùng đường dẫn này".Bắt buộc
Mô tảLuật thi, giải thưởng, cách tính điểm. Hỗ trợ Markdown.Không bắt buộc
Cố địnhMọi người thi cùng lúc. Kết thúc tại Bắt đầu cộng Thời lượng.Mặc định
Linh hoạtHọc viên tự chọn lúc bắt đầu trong khoảng Bắt đầu đến Kết thúc. Mỗi người có đủ Thời lượng nhưng không vượt Kết thúc. Bằng điểm thì ai dùng ít thời gian hơn xếp trên.Thời lượng phải nằm gọn trong khoảng Bắt đầu đến Kết thúc
Mở đăng kýTừ lúc này học viên đăng ký được.Bắt buộc, trước hoặc bằng Bắt đầu
Bắt đầu, Kết thúcCố định: đề bài mở lúc Bắt đầu. Linh hoạt: học viên bấm bắt đầu được từ mốc Bắt đầu, Kết thúc là lúc cuối cùng được nộp.Bắt đầu trước Kết thúc
Thời lượng (phút)Số phút nguyên.Từ 1 trở lên, biểu mẫu điền sẵn 120
Cuộc thi công khaiBật: hiện trên trang Cuộc thi của học viên, ai cũng đăng ký được. Tắt: không hiện, cần mật khẩu hoặc link mời.Bật
Mật khẩu đăng kýHệ thống tạo khi lưu. Tạo mật khẩu mới làm mật khẩu cũ hết hiệu lực ngay, link mời đã gửi phải gửi lại.8 ký tự
Sao chép link mờiLink mở trang cuộc thi với mật khẩu điền sẵn. Học viên vẫn phải bấm Đăng ký.
Danh sách đề bàiChỉ gồm bài của bạn và chỉ bài đã chấm được. Thứ tự là P1, P2, … trên bảng xếp hạng.Tối đa 100 bài
Điểm sànĐiểm chấm được tính là 0. Với metric "điểm thấp hơn tốt hơn" (ví dụ RMSE), Điểm sàn lớn hơn Điểm đích.Bắt buộc
Điểm đíchĐiểm chấm được tính trọn điểm. Phải khác Điểm sàn.Bắt buộc
Điểm tối đaSố điểm của bài trong tổng điểm cuộc thi.Lớn hơn 0, điền sẵn 100
Lưu trữẨn cuộc thi khỏi học viên. Khôi phục để hiện lại.Không có nút xóa

Lưu ý quan trọng

Cuộc thi đã bắt đầu thì chỉ quản trị viên sửa được lịch và điểm. Sau giờ Bắt đầu, bạn không đổi được thời gian, danh sách đề bài, Điểm sàn, Điểm đích, Điểm tối đa. Trang sửa vẫn cho bạn gõ vào các ô, nhưng báo lỗi khi lưu. Hãy thêm đủ bài và kiểm tra điểm trước giờ Bắt đầu. Đừng đặt giờ Bắt đầu sát lúc tạo cuộc thi: nếu cuộc thi bắt đầu ngay, bạn sẽ không lưu được danh sách đề bài. Nếu cần sửa sau khi đã bắt đầu, liên hệ quản trị viên.

Câu hỏi thường gặp

Có làm được bài lập trình, học viên viết code ngay trên web không?
Không. Hệ thống không có trình soạn code, không chọn ngôn ngữ lập trình, không có giới hạn thời gian hay bộ nhớ cho từng test. Học viên tự chạy chương trình ở máy mình rồi nộp tệp CSV kết quả.
Học viên không thấy bài tập của tôi.
Bài đang riêng tư hoặc đã lưu trữ. Bật Bài tập công khai và bấm Lưu thay đổi (cần đủ hai tệp). Nếu bài chỉ dùng trong cuộc thi, cứ để riêng tư.
Học viên không tìm thấy cuộc thi của tôi.
Cuộc thi riêng tư không hiện trên trang Cuộc thi. Gửi mật khẩu hoặc link mời cho lớp, hoặc đưa cuộc thi vào một bài học.
Tôi đã sửa tệp đáp án, sao điểm cũ không đổi?
Thay tệp không tự chấm lại. Mở tab Bài nộp, bấm Chấm lại tất cả, rồi Chấm lại.
Cuộc thi đã bắt đầu mà tôi quên thêm một bài.
Bạn không tự sửa được nữa. Liên hệ quản trị viên.
Lời giải đúng của tôi không được điểm 1.
Kiểm tra dòng tiêu đề của bài nộp có giống hệt tệp đáp án không (trừ cột Usage), và thứ tự các dòng có giống không. Với So sánh CSV cơ bản, dòng thứ i so với dòng thứ i. Nếu đúng hết, có thể tệp đáp án có dòng sai: sửa tệp, bấm Thay thế tệp, rồi chấm lại.