View a markdown version of this page

Apa itu Ray - Amazon SageMaker AI

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Apa itu Ray

Ray adalah kerangka kerja terpadu open source untuk penskalaan aplikasi AI dan Python. Ini menyediakan lapisan komputasi untuk pemrosesan paralel, sehingga Anda tidak perlu menjadi ahli sistem terdistribusi untuk menjalankan pekerjaan di seluruh cluster. Anda terus menulis PyTorch, JAX, atau VllM, dan Ray menangani penskalaan. Untuk ikhtisar selengkapnya, lihat Ikhtisar dalam dokumentasi Ray.

Kerangka Ray

Ray memiliki tiga lapisan:

  • Ray AI Libraries, satu set pustaka Python untuk tugas-tugas pembelajaran mesin umum.

  • Ray Core, pustaka komputasi terdistribusi tujuan umum yang menskalakan aplikasi Python.

  • Ray cluster, satu set node pekerja yang terhubung ke node kepala. Cluster dapat berukuran tetap, atau dapat melakukan penskalaan otomatis ke sumber daya permintaan aplikasi Anda.

Perpustakaan Ray AI

  • Ray Data untuk preprocessing data terdistribusi dan inferensi batch.

  • Ray Train untuk pelatihan terdistribusi, data-paralel dan model-paralel.

  • Ray Tune untuk penyetelan hyperparameter paralel.

  • Ray Serve untuk penyajian model online.

  • RLLib untuk pembelajaran penguatan.

Pembelajaran penguatan pada Ray

RLLib adalah perpustakaan pembelajaran penguatan kapal Ray. Di luar itu, kerangka kerja pembelajaran penguatan yang digunakan untuk model bahasa besar pasca-pelatihan dibangun di atas Ray untuk lapisan terdistribusi mereka, karena satu kali lari harus menempatkan dan mengoordinasikan beberapa peran berbeda di seluruh GPU sekaligus: pembuatan peluncuran, penilaian hadiah, dan pelatihan kebijakan. Ray Core memberi mereka penempatan aktor dan penjadwalan untuk melakukan itu.

Kerangka kerja yang berjalan di Ray termasuk verl, OpenRLHF, dan NVIDIA. NeMo-RL Masing-masing berjalan sebagai beban kerja Ray biasa, jadi apa pun yang didukung Ray berjalan dengan cara yang sama di sini.

Apa yang Ray tangani untukmu

Ray mengelola pekerjaan sistem terdistribusi yang seharusnya menjadi milik Anda:

  • Orkestrasi komponen aplikasi terdistribusi.

  • Penjadwalan kapan dan di mana tugas dijalankan.

  • Toleransi kesalahan, sehingga tugas selesai meskipun gagal.

  • Penskalaan otomatis sumber daya agar sesuai dengan permintaan.

Ray di HyperPod

HyperPod menjalankan open source Ray melalui KubeRay operator, tidak berubah. Itu tidak memotong Ray, memodifikasi runtime Ray, atau memperkenalkan penjadwal berpemilik. RayCluster,RayJob,RayCronJob, dan RayService berperilaku seperti yang mereka lakukan di hulu, dan memanifestasikan Anda sudah berjalan terus bekerja. Untuk apa yang harus diatur, lihatMemulai.