o
    9wi                     @   s4   d dl mZmZ d dlmZmZ G dd deZdS )    )ABCabstractmethod)AnyCallablec                	   @   sD   e Zd ZdZeedefddZedede	de	de	fdd	Z
d
S )	_Launchera  Abstract base class for all Launchers.

    Launchers are responsible for the creation and instrumentation of new processes so that the
    :class:`~lightning.fabric.strategies.strategy.Strategy` can set up communication between all them.

    Subclass this class and override any of the relevant methods to provide a custom implementation depending on
    cluster environment, hardware, strategy, etc.

    returnc                 C      dS )z]Returns whether this launcher can work in interactive environments such as Jupyter notebooks.N )selfr	   r	   k/home/ubuntu/sommelier/.venv/lib/python3.10/site-packages/lightning/fabric/strategies/launchers/launcher.pyis_interactive_compatible       z#_Launcher.is_interactive_compatiblefunctionargskwargsc                 O   r   )zLaunches the processes.Nr	   )r
   r   r   r   r	   r	   r   launch"   r   z_Launcher.launchN)__name__
__module____qualname____doc__propertyr   boolr   r   r   r   r	   r	   r	   r   r      s    
 r   N)abcr   r   typingr   r   r   r	   r	   r	   r   <module>   s   