Nâng cấp lên TensorFlow.js 3.0

Điều gì đã thay đổi trong TensorFlow.js 3.0

Ghi chú phát hành có sẵn ở đây . Bản phát hành này nâng cấp TypeScript lên 4.8.4 và @webgpu/types lên 0.1.21. Nếu bạn không sử dụng TypeScript, bạn có thể cập nhật lên 4.0 mà không cần đọc tài liệu này.

Thay đổi đột phá

Bản phát hành này đang phá vỡ các dự án sử dụng typescript<4.4 . Tất cả các dự án khác sẽ không bị ảnh hưởng.

Nâng cấp mã từ 3.x

Đối với TypeScript >= 4.4

Không có thay đổi API đột phá nào được thực hiện trong bản phát hành này, vì vậy các dự án sử dụng typescript>=4.4 có thể coi đây là một bản phát hành và nâng cấp nhỏ mà không có bất kỳ thay đổi nào.

Đối với TypeScript < 4.4

Khi sử dụng typescript<4.4 , lỗi sau sẽ xảy ra.

node_modules/@webgpu/types/dist/index.d.ts:587:16 - error TS2304: Cannot find name 'PredefinedColorSpace'.

587   colorSpace?: PredefinedColorSpace;
                   ~~~~~~~~~~~~~~~~~~~~
...

Để khắc phục điều này, hãy nâng cấp TypeScript lên 4.4.2 trở lên hoặc thêm tệp predefined_color_space.d.ts (tên và đường dẫn có thể thay đổi) với các nội dung sau vào dự án của bạn để xác định loại bị thiếu. Xóa tệp này khi TypeScript được nâng cấp lên 4.4 trở lên.

được xác định trước_color_space.d.ts

type PredefinedColorSpace = "display-p3" | "srgb";

Đối với TypeScript < 3.6

typescript<3.6 có thêm lỗi sau.

node_modules/@tensorflow/tfjs-core/dist/engine.d.ts:127:9 - error TS1086: An accessor cannot be declared in an ambient context.

127     get backend(): KernelBackend;
            ~~~~~~~
...

Bật skipLibCheck để khắc phục lỗi này hoặc nâng cấp lên ít nhất TypeScript 3.6.2 để khắc phục (cũng sẽ cần phải áp dụng cách khắc phục ở trên cho PredefinedColorSpace ).