StableHLO

StableHLO là một bộ hoạt động dành cho các thao tác cấp cao (HLO) trong các mô hình học máy (ML). Về cơ bản, đây là lớp khả năng di chuyển giữa các khung học máy và trình biên dịch học máy: các khung ML tạo ra chương trình StableHLO tương thích với các trình biên dịch học máy dùng các chương trình StableHLO.

Mục tiêu của chúng tôi là đơn giản hoá và đẩy nhanh quá trình phát triển công nghệ học máy bằng cách tăng cường khả năng tương tác giữa nhiều khung máy học (chẳng hạn như TensorFlow, JAX và PyTorch) và các trình biên dịch học máy (chẳng hạn như XLA và IREE).

StableHLO dựa trên phương ngữ MHLO và cải thiện phương ngữ này bằng chức năng bổ sung, bao gồm cả việc chuyển đổi tuần tự và tạo phiên bản. Chúng tôi sử dụng mã byte MLIR làm định dạng chuyển đổi tuần tự, đồng thời đảm bảo khả năng tương thích ngược và xuôi. Điều này đảm bảo khả năng tương thích giữa các khung và trình biên dịch, ngay cả khi StableHLO tiếp tục phát triển.

Kho lưu trữ này bao gồm quy cách kỹ thuật của StableHLO cùng với phương thức triển khai dựa trên MLIR trong C++ và Python. Bạn có thể dùng các chương trình này để xác định các chương trình StableHLO cho các trình biên dịch như XLA và IREE sử dụng.

Hướng dẫn tạo

Hãy xem StableHLO trên GitHub để biết hướng dẫn về bản dựng.

Cộng đồng

Để xây dựng một lớp dễ di chuyển tuyệt vời giữa các khung ML (Học máy) và trình biên dịch ML (Học máy), chúng tôi cần có sự hợp tác trên toàn ngành ML. Vì vậy, chúng tôi rất sẵn sàng trợ giúp của bạn trong dự án StableHLO.

Chúng tôi đang sử dụng các vấn đề / lấy yêu cầu trên GitHub để sắp xếp quá trình phát triển và openxla-discuss để thảo luận lâu hơn. Chúng tôi cũng có một kênh #stablehlo trên máy chủ Discord OpenXLA.