Перейти до вмісту

Ray

Матеріал з K2 ERP Wiki

return self.value

Результат: паралельний запуск trials і вибір найкращої конфігурації.; * Ray Data documentation.;

</syntaxhighlight>

Ray має обмеження.;

== Ray Train ==

Задача: підібрати learning rate, batch size і model parameters.;<div style="background:#eef2ff; border-left:6px solid #4f46e5; padding:12px; margin:12px 0;">

* `@ray.remote` робить функцію distributed task;
* `square.remote(i)` запускає task;
* `ray.get(refs)` отримує результати;
* Ray сам планує виконання tasks на доступних ресурсах.; Рекомендовано:
Ray Serve має змогу використовуватися для:
</div>

== Для чого застосовується Ray ==

== Batch inference ==

'''Ray Data''' — це бібліотека Ray для distributed data processing.; '''істотно:''' надмірне використання `ray.get` у неправильному місці має змогу зменшити паралельність, бо код почне чекати результатів занадто рано.; RLlib сприяє масштабувати RL workloads, але не скасовує потреби в правильній постановці environment, reward function і evaluation.;

істотно: autoscaling потрібно налаштовувати обережно, інакше можна отримати надмірні cloud-витрати або нестабільну продуктивність.; :contentReference [oaicite:6]{index=6}

* персональні інформаційні дані;
* фінансові інформаційні дані;
* медичні інформаційні дані;
* секретні ключі;
* customer data;
* приватні документи;
* production database dumps;
* комерційні таємниці;
* неанонімізовані datasets.; * Ray Core documentation.; * distributed systems складні самі по собі;
* debugging важчий, ніж у локальному Python;
* network overhead має змогу зменшити виграш;
* object store має змогу стати bottleneck;
* потрібне планування ресурсів;
* GPU scheduling потребує уваги;
* неправильний `ray.get` має змогу зламати parallelism;
* autoscaling має змогу створити cost risks;
* production deployment потребує observability;
* не кожну задачу варто масштабувати через Ray;
* потрібне розуміння fault tolerance.; :contentReference [oaicite:0]{index=0}
== KubeRay ==
Не варто без потреби обробляти або логувати:

Правило: distributed pipeline має ті самі privacy-вимоги, що й локальний pipeline, але з більшим ризиком через більше машин, логів, cache і мережевих шляхів.;

Ray є собою open-source фреймворком, а Anyscale надає комерційні інструменти й platform experience для розгортання Ray у production.; Ray Core надає три основні примітиви:

self.value = 0
  • container orchestration;
  • pod scheduling;
  • resource isolation;
  • cluster management;
  • integration with cloud-native tooling;
  • observability;
  • autoscaling;
  • GitOps workflows;
  • infrastructure consistency.; result = ray.get(ref)

Просте пояснення: Ray cluster — це середовище, де Ray розподіляє tasks, actors і objects між різними ресурсами.;

  • model worker;
  • cache;
  • service object;
  • simulator;
  • environment у reinforcement learning;
  • long-running process;
  • stateful pipeline component.;== Загальний характеристика ==

ray.init()

* serving ML models;
* LLM serving;
* online inference;
* microservices with Python;
* autoscaling deployments;
* model composition;
* A/B testing;
* multi-model serving;
* batch або streaming inference endpoint;
* integration with FastAPI-style workflows.; import ray

</div>

* parallel hyperparameter tuning;
* distributed cross-validation;
* batch inference;
* preprocessing великого dataset;
* запуск багатьох експериментів;
* scalable classical ML workflows.;<syntaxhighlight lang="python">

'''Практична роль:''' KubeRay потрібен командам, які вже використовують Kubernetes і хочуть запускати Ray workloads у cloud-native середовищі.; '''KubeRay''' — це інструментарій для запуску Ray на Kubernetes.; Ray додатково можна порівняти з Dask.;<div style="background:#fef2f2; border-left:6px solid #ef4444; padding:12px; margin:12px 0;">
== Objects ==
Ray часто застосовується для batch inference, коли потрібно:

'''Критично:''' fault tolerance не з’являється автономно для будь-якої логіки.; Ray Data має змогу використовуватися для:

!; Можливі сценарії:

Autoscaling сприяє:

Model serving

Ray Tune має змогу використовуватися для:

  • grid search;
  • random search;
  • Bayesian optimization;
  • early stopping;
  • distributed trials;
  • experiment tracking;
  • tuning ML models;
  • tuning deep learning training;
  • пошуку learning rate, batch size, model size, regularization;
  • оптимізації costly experiments.; Ray кешує remote objects у distributed shared-memory object store.; !; Apache Spark

Типові задачі:

  • ETL;
  • batch inference;
  • preprocessing;
  • reading datasets;
  • transformation pipelines;
  • distributed map operations;
  • streaming data pipelines;
  • feeding data into training;
  • large-scale data workloads.; У повідомленні Ray описано як open-source distributed computing framework for AI workloads, включно з data processing, model training і inference at scale.; істотно: Kubernetes додає потужність, але й складність.;

Практична користь: без observability distributed system оперативно стає “чорною скринькою”, з цієї причини dashboard і logs критично важливі.; * починати локально;

  • вимірювати baseline без Ray;
  • робити tasks достатньо великими;
  • уникати зайвого `ray.get`;
  • використовувати actors для stateful workloads;
  • контролювати object store memory;
  • задавати CPU/GPU resources;
  • використовувати checkpointing;
  • налаштовувати logs і metrics;
  • тестувати failure cases;
  • використовувати dashboard;
  • контролювати cloud costs;
  • захищати cluster access;
  • документувати pipeline.; Якщо йдеться про ML pipeline, варто дивитися Ray Data, Train, Tune або Serve.; * RLlib documentation.;== Ray і Anyscale ==

Actors

Objects у Ray — це інформаційні дані, які створюються tasks або actors і зберігаються в distributed object store.; * занадто дрібні tasks;

  • занадто частий `ray.get`;
  • передача великих objects без потреби;
  • відсутність resource annotations;
  • неправильне планування GPU;
  • відсутність retry logic;
  • відсутність checkpointing;
  • ігнорування object store memory;
  • запуск cluster без observability;
  • відкритий dashboard;
  • неконтрольовані cloud costs;
  • відсутність тестів перед масштабуванням;
  • відсутність cleanup після jobs.;
  • Ray Core — базовий distributed runtime;
  • Ray Data — distributed data processing;
  • Ray Train — distributed model training і fine-tuning;
  • Ray Tune — hyperparameter tuning;
  • Ray Serve — model serving і scalable inference;
  • RLlib — reinforcement learning;
  • Ray Clusters — запуск Ray на локальних машинах, VM, Kubernetes або cloud;
  • KubeRay — запуск і керування Ray у Kubernetes.; * локально на одній машині;
  • на кількох VM;
  • у cloud;
  • у Kubernetes;
  • через KubeRay;
  • у managed платформі;
  • у hybrid environments.; * додавати worker nodes при зростанні навантаження;
  • зменшувати ресурси, коли workload завершується;
  • оптимізувати cost;
  • обробляти burst workloads;
  • запускати distributed jobs у cloud;
  • масштабувати training, inference або data workloads.; results = ray.get(refs)

Суть Ray Core: це фундамент Ray, який надає можливість перетворювати Python-функції та класи на distributed tasks і actors.; Приклади:

Професійний підхід: Ray має масштабувати добре спроєктований pipeline, а не приховувати проблеми архітектури, даних або коду.; * Ray Serve documentation.; Висновок: Spark сильний у big data ETL і SQL-аналітиці, а Ray часто краще підходить для гнучких Python/AI workloads, training, inference і model serving.; Під час роботи з Ray потрібно уважно ставитися до даних, які передаються між tasks, actors, object store і cluster nodes.;== Ray і Spark ==

Ray можна розглядати як distributed runtime і набір AI-бібліотек для масштабування Python та ML-застосунків.; Ray потрібен тоді, коли звичайного локального Python-коду вже недостатньо.; Інструмент: Ray Data + Ray actors або Ray Serve.;

Типові сценарії:

Суть Ray Train: він сприяє масштабувати навчання моделей без ручного керування всією distributed training інфраструктурою.; Ray має змогу доповнювати Scikit-learn у задачах, де потрібно масштабування.; * тестувати локально до запуску на cluster;

  • починати з малого workload;
  • вимірювати performance;
  • контролювати cost;
  • додавати logging;
  • використовувати metrics;
  • налаштовувати retries;
  • робити checkpointing;
  • перевіряти security;
  • обмежувати permissions;
  • документувати cluster setup;
  • перевіряти data governance;
  • тестувати failure scenarios.; Якщо задача маленька або має багато дрібних залежних кроків, Ray має змогу не дати виграшу.;

</syntaxhighlight> Ray Tune — це бібліотека для hyperparameter tuning.; Результат: scalable endpoint для prediction-запитів.; :contentReference [oaicite:3]{index=3} ray.init() !; Підказка: якщо задача має незалежні шматки роботи, Ray Core має змогу бути достатнім.;=== Parallel Python tasks ===

Ray Data

Результат: паралельний запуск Python-функцій на доступних CPU.; :contentReference [oaicite:4]{index=4}
офіційно затверджений сайт Ray by Anyscale описує Ray як open source framework для managing, executing and optimizing compute needs, з фокусом на AI workloads: data processing, training і serving.;<div style="background:#f0eaff; border-left:6px solid #8e44ad; padding:12px; margin:12px 0;">

== Типові сценарії використання ==

* batch inference для великого dataset;
* distributed training PyTorch-моделі;
* fine-tuning LLM;
* hyperparameter tuning;
* scalable embeddings pipeline;
* reinforcement learning experiment;
* model serving API;
* distributed simulation;
* parallel web data processing;
* large-scale feature engineering;
* multi-GPU inference;
* GenAI document processing pipeline;
* Kubernetes-based AI platform.; масштабування Python-застосунків забезпечується через '''Ray''' — це open-source фреймворк; додатково реалізовано AI workloads і машинного навчання від локального комп’ютера до кластерів із багатьма CPU, GPU або TPU.; Ray має змогу працювати поверх Kubernetes через KubeRay.; Можливі складнощі:
Ray часто застосовують, коли потрібно разом із PyTorch.;</div>

print(ray.get(counter.increment.remote()))

<div style="background:#ecfdf5; border-left:6px solid #10b981; padding:12px; margin:12px 0;">

<div style="background:#e8f8f5; border-left:6px solid #16a085; padding:12px; margin:12px 0;">

* parallel Python execution;
* distributed data processing;
* batch inference;
* distributed training;
* fine-tuning моделей;
* hyperparameter search;
* reinforcement learning;
* model serving;
* multi-GPU workloads;
* LLM inference;
* GenAI pipelines;
* scalable ETL;
* distributed simulation;
* cloud-native AI workloads.; :contentReference [oaicite:2]{index=2}
<div style="background:#eafaf1; border-left:6px solid #2ecc71; padding:12px; margin:12px 0;">
Це надає можливість:

<div style="background:#eef2ff; border-left:6px solid #4f46e5; padding:12px; margin:12px 0;">

<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">

<div style="background:#e8f8f5; border-left:6px solid #16a085; padding:12px; margin:12px 0;">

* '''tasks''' — розподілені функції;
* '''actors''' — stateful distributed objects;
* '''objects''' — distributed objects у shared-memory object store.;<div style="background:#e8f8f5; border-left:6px solid #16a085; padding:12px; margin:12px 0;">

* запускати обчислення асинхронно;
* будувати dependency graph;
* передавати результати між tasks;
* не блокувати виконання без потреби;
* масштабувати parallel workflows.; return x * x
RLlib має змогу використовуватися для:
'''Практична роль:''' foundation-hosted статус підкреслює значення Ray у ширшій open-source AI infrastructure екосистемі.; '''істотно:''' reinforcement learning складний сам по собі.; Інструмент: Ray Train.; '''Ray''' — це open-source фреймворк для масштабування Python і AI workloads.; '''Головне правило:''' Ray найкраще функціонує тоді, коли задача має реальну паралельність, достатньо великі одиниці роботи і зрозумілу стратегію керування ресурсами.;</div>
<div style="background:#eafaf1; border-left:6px solid #2ecc71; padding:12px; margin:12px 0;">

== переважні аспекти Ray ==

Dashboard сприяє бачити:
<div style="background:#fef2f2; border-left:6px solid #ef4444; padding:12px; margin:12px 0;">
</div>

</div>
counter = Counter.remote()

Під час роботи з Ray часто виникають типові помилки.; Він надає Ray Core для distributed tasks, actors і objects, а додатково AI-бібліотеки для data processing, training, tuning, serving і reinforcement learning.;</div>

* результатами функцій;
* batch data;
* model weights;
* intermediate results;
* large arrays;
* references між tasks;
* даними для downstream processing.; Інструмент: Ray Core tasks.;<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
Actors корисні, коли потрібно зберігати стан між викликами:
Ray складається з:

Приклад:

</div>

Ray потрібно використовувати як infrastructure tool, а не як гарантію правильності ML-рішення.; class Counter:
 def increment(self):

== Приватність даних ==

Задача: обробити великий dataset моделлю.; Інструмент: Ray Serve.; '''Ray Serve''' — це бібліотека для scalable model serving.;<div style="background:#ecfdf5; border-left:6px solid #10b981; padding:12px; margin:12px 0;">

'''Ray Core''' — це базовий distributed computing framework у Ray.; '''Ray Dashboard''' — це інтерфейс для спостереження за Ray cluster.; * head node;
* worker nodes;
* scheduler;
* object stores;
* workers;
* dashboard;
* autoscaling mechanism залежно від setup.; Ray
Інструмент: Ray Tune.; Distributed workloads мають ризики збоїв.; Доступи, firewall, authentication, network policies і secrets management потрібно налаштовувати окремо.; Ray додатково має змогу використовуватися з TensorFlow.;<div style="background:#e7f3ff; border-left:6px solid #2b7cff; padding:12px; margin:12px 0;">
Офіційна документація описує RLlib як open source library for reinforcement learning, що підтримує роботу production-level, highly scalable і fault-tolerant RL workloads через unified APIs.;== Ray і PyTorch ==

Ray workloads можуть працювати з кодом, даними, моделями, ключами, cloud resources і мережевими сервісами, з цієї причини безпека є собою критичною.;== Див.; додатково ==
== Object refs ==

'''істотно:''' Ray не робить повільний або погано спроєктований код автономно швидким.;</div>

У 2025 році PyTorch Foundation повідомила, що Ray став foundation-hosted project.; * Ray Train documentation.; :contentReference [oaicite:1]{index=1}

=== Hyperparameter tuning ===

Objects можуть бути:

Ray застосовується для розподілених обчислень, data processing, model training, fine-tuning, batch inference, model serving, hyperparameter tuning, reinforcement learning, LLM applications, GenAI pipelines і high-performance Python workloads.; Ray особливо корисний для ML-команд, AI platform teams, Python-розробників і data/ML engineers, яким потрібно масштабувати код від локального ноутбука до cluster або cloud.; '''Висновок:''' Ray не замінює TensorFlow, а має змогу допомагати масштабувати TensorFlow workloads у distributed environment.; Ray cluster має змогу працювати:
Задача: розгорнути модель як online inference service.; Офіційна документація описує Ray Train як scalable machine learning library for distributed training and fine-tuning, яка надає можливість масштабувати training code з однієї машини до cluster of machines і абстрагує складність distributed computing.; Коли remote task запускається, вона часто повертає не сам результат одразу, а reference:

</div>
== Обмеження Ray ==

Ray Train — це бібліотека для distributed training і fine-tuning.; * Офіційна документація Ray.; * task retry;

  • actor restart;
  • node failure handling;
  • checkpointing;
  • object reconstruction;
  • job recovery;
  • training checkpoints;
  • serving resilience.;== Fault tolerance ==

Anyscale — це організація, пов’язана з розвитком Ray і managed-платформами для Ray workloads.; KubeRay має змогу допомагати:

Ray Dashboard

ObjectRef — це посилання на object у Ray.; Водночас Ray вимагає розуміння distributed systems: resource scheduling, memory, object store, retries, checkpointing, observability, security і cost control.; Перевага: Ray об’єднує кілька частин AI pipeline — data processing, training, tuning, serving і reinforcement learning — навколо одного distributed runtime.; Висновок: Dask зручний для parallel data workflows у стилі pandas/NumPy, а Ray — для ширших distributed AI і Python applications.;== Ray і Python ==

  • open-source;
  • масштабування Python-коду;
  • прості primitives: tasks, actors, objects;
  • супровід AI workloads;
  • Ray Data;
  • Ray Train;
  • Ray Tune;
  • Ray Serve;
  • RLlib;
  • супровід CPU і GPU workloads;
  • локальний і cluster запуск;
  • Kubernetes через KubeRay;
  • Python-friendly API;
  • корисність для ML, LLM і GenAI pipeline;
  • можливість масштабувати від laptop до cloud cluster.; Критерій
  • масштабувати Python-функції;
  • масштабувати Python-класи;
  • запускати distributed ML code;
  • використовувати familiar Python APIs;
  • поєднувати NumPy, pandas, PyTorch, TensorFlow та інші бібліотеки;
  • запускати jobs локально або на cluster.; Ray має змогу підтримувати механізми fault tolerance залежно від типу workload і налаштувань:

print(results)

Небезпека: distributed workload має змогу працювати повільніше й дорожче за локальний, якщо розбити задачу неправильно або не контролювати overhead.;

Ray Serve

  • distributed training;
  • hyperparameter tuning;
  • serving моделей;
  • batch inference;
  • data preprocessing;
  • experiment orchestration.; Потрібно правильно розбивати задачу, контролювати інформаційні дані, ресурси, пам’ять, fault tolerance і network overhead.; Офіційна документація описує Ray як open-source framework to build and scale ML and Python applications, а GitHub-репозиторій — як unified framework for scaling AI and Python applications із core distributed runtime і AI libraries.;

Офіційна документація Ray Core описує його як distributed computing framework із tasks, actors і objects для побудови та масштабування distributed applications.; * distributed PyTorch training;

  • TensorFlow training;
  • multi-GPU training;
  • fine-tuning LLM;
  • training на великих datasets;
  • fault-tolerant training;
  • cloud training jobs;
  • integration with Ray Data.;== Приклади задач ==

Потрібно контролювати:

Практична порада: перед впровадженням Ray варто чітко визначити bottleneck: CPU, GPU, IO, memory, network або model latency.;

Ray можна використовувати у різних сценаріях.; :contentReference [oaicite:5]{index=5}

'''Суть:''' Ray  open-source проєкт, Anyscale  комерційна програмний пакет й платформа навколо Ray.; def square(x):
== Autoscaling ==
</div>

@ray.remote

Критично: Ray cluster не можна бездумно відкривати в публічну мережу.; * PyTorch Foundation announcement щодо Ray.; * Ray Tune documentation.;

  • офіційно затверджений сайт Ray.;
    '''Головна думка:''' Ray — це практичний distributed runtime для Python і AI, який сприяє масштабувати data processing, training, inference і serving, але ефективність залежить від правильної архітектури workload і контролю ресурсів.; '''Головна перевага:''' Ray надає можливість масштабувати AI і Python workloads без переходу на в цілому іншу мову або зовсім іншу програмну модель.;== Джерела ==
    Приклад:
    
    Ray cluster зазвичай містить:
    
    </div>
    
    == Ray Tune ==
    
    * створювати RayCluster;
    * керувати Ray workloads у Kubernetes;
    * запускати Ray jobs;
    * масштабувати workers;
    * інтегрувати Ray із cloud-native infrastructure;
    * запускати AI workloads у Kubernetes;
    * використовувати Kubernetes scheduling, networking і observability.; def __init__(self):
    
    '''RLlib''' — це бібліотека Ray для reinforcement learning.; До них належать:
    '''Практична роль:''' object store надає можливість різним tasks і actors обмінюватися даними без ручного керування файлами, sockets або message queues.;
    

!; Batch inference — це запуск моделі на великому наборі даних.; ref = square.remote(10) refs = [square.remote(i) for i in range(5)]

Результат: scalable inference pipeline з контрольованим використанням CPU/GPU.;

Ray і Dask

Ray і PyTorch Foundation

  • доступ до Ray dashboard;
  • доступ до Ray cluster;
  • network exposure;
  • credentials;
  • environment variables;
  • secrets;
  • object store data;
  • model artifacts;
  • datasets;
  • logs;
  • permissions у cloud;
  • container images;
  • supply chain dependencies.; * Ray GitHub repository.; !;
Результат: training job, який масштабується з laptop до cluster.;
  • running tasks;
  • actors;
  • nodes;
  • resources;
  • CPU/GPU usage;
  • memory usage;
  • object store usage;
  • logs;
  • errors;
  • job status;
  • performance bottlenecks.; Приклади:

Тематичні мітки

Хороші практики роботи з Ray

Ray Core

Задача: навчити модель на кількох GPU або машинах.; Помилка: додавати Ray до будь-якого Python-коду лише “для швидкості”.; Просте пояснення: task — це Python-функція, яку Ray має змогу виконати не лише в поточному процесі, а паралельно в distributed environment.; Ray

Перевага: Ray надає можливість розподіляти inference workload між багатьма worker processes або GPU, що особливо корисно для AI pipeline.; Ray особливо тісно пов’язаний із Python.; Для невеликого prototype Ray можна запускати локально, а Kubernetes залишити для production або platform engineering.; завдяки наявності Практична роль: Ray Data користувачі можуть обробляти великі datasets і передавати їх у training або inference pipeline.;

Ray Cluster — це набір машин або worker nodes, на яких запускається Ray.; Документація Ray пояснює, що tasks і actors створюють objects та працюють з objects; remote objects можуть зберігатися будь-де в Ray cluster, а object refs використовуються для посилання на них.;<syntaxhighlight lang="text">

Ray має змогу використовувати autoscaling у відповідних cluster setups.; Для важливих workload потрібно проєктувати checkpointing, retry, idempotency і recovery.; print(ray.get(counter.increment.remote()))
ключовий фокус Distributed Python і AI workloads Parallel і distributed computing для Python data ecosystem
Типові інформаційні дані AI pipelines, ML, inference, actors, training DataFrames, arrays, delayed computations
Сильна сторона Tasks, actors, AI libraries, model serving Масштабування pandas/NumPy-like workflows
Типові користувачі ML engineers, AI platform teams, Python backend teams Data scientists, data engineers, scientific Python users

Суть Ray Serve: Ray Serve сприяє перетворити модель або Python-функцію на scalable online service.; Задача: виконати багато незалежних обчислень.; Основна ідея: Ray надає можливість взяти Python-функції, класи або ML-процеси й масштабувати їх на багато ядер, машин або GPU без повного переписування застосунку під складну distributed infrastructure.; @ray.remote

!; Dask

  • distributed PyTorch training через Ray Train;
  • hyperparameter tuning PyTorch моделей через Ray Tune;
  • batch inference;
  • serving PyTorch моделей через Ray Serve;
  • multi-GPU experiments;
  • LLM fine-tuning;
  • reinforcement learning з PyTorch policies.;

Типові помилки користувачів

Batch inference

Task у Ray — це remote function, яка має змогу виконуватися паралельно на worker процесі.; Рекомендовано: Практична роль: PyTorch відповідає за модель і tensor operations, а Ray — за масштабування training, inference, tuning або serving.; Ray Train має змогу використовуватися для:

{{SEO


  • reinforcement learning;
  • multi-agent RL;
  • simulation environments;
  • policy training;
  • distributed rollout workers;
  • scalable RL experiments;
  • research і production RL workloads.; |-

| ключовий фокус | Distributed Python, AI workloads, ML training, inference, serving | Big data processing, SQL, ETL, batch analytics |- | Програмна модель | Tasks, actors, objects, AI libraries | DataFrames, RDD, SQL, Spark jobs |- | AI workloads | Сильний фокус на ML/AI, GPU, serving, tuning | Часто застосовується для data engineering і batch processing |- | Python flexibility | Ближчий до general Python distributed computing | Більше орієнтований на Spark execution model |- | Типові задачі | Training, inference, RL, ML pipelines, distributed Python | ETL, data lake processing, analytics, SQL workloads |}

self.value += 1

Ray надає можливість:

Distributed training

Практична роль: Scikit-learn добре підходить для класичного ML, а Ray має змогу допомогти масштабувати експерименти навколо нього.;== Безпека ==

Ray і TensorFlow

RLlib

import ray

Actor у Ray — це stateful distributed object.;

Відповідальне використання

Ray часто порівнюють з Apache Spark.;== Висновок ==

Суть actor: це distributed class instance, який живе в Ray cluster і має змогу зберігати стан між remote method calls.; Критерій

Ray Cluster

Ray і Kubernetes

  • обробити мільйони документів;
  • зробити embeddings;
  • класифікувати великий dataset;
  • запускати LLM або vision model на batch;
  • використовувати GPU ефективніше;
  • паралелити inference між worker nodes;
  • поєднати data loading і model prediction.;

Tasks

У цьому прикладі:

Це дає:

Перевага для Python-розробника: Ray надає можливість залишатися в Python-екосистемі й поступово переходити від локального коду до distributed execution.;

Ray і Scikit-learn

Практична роль: Ray Tune надає можливість паралельно запускати багато training trials і швидше знаходити вдалі гіперпараметри.; * KubeRay documentation.; Основні переважні аспекти Ray: