def __init__(
        self,
        service: cirq_ionq.Service,
        target: str | None,
        timeout_seconds: int | None = None,
        seed: cirq.RANDOM_STATE_OR_SEED_LIKE = None,
    ):
        """Construct the sampler.

        Users should get a sampler from the `sampler` method on `cirq_ionq.Service`.

        Args:
            service: The service used to create this sample.
            target: Where to run the job. Can be 'qpu' or 'simulator'. If this is not specified,
                there must be a default target set on `service`.
            seed: If the target is `simulation` the seed for generating results. If None, this
                will be `np.random`, if an int, will be `np.random.RandomState(int)`, otherwise
                must be a modulate similar to `np.random`.
            timeout_seconds: Length of time to wait for results. Default is specified in the job.
        """
        self._service = service
        self._target = target
        self._seed = seed
        self._timeout_seconds = timeout_seconds
Construct the sampler.

        Users should get a sampler from the `sampler` method on `cirq_ionq.Service`.

        Args:
            service: The service used to create this sample.
            target: Where to run the job. Can be 'qpu' or 'simulator'. If this is not specified,
                there must be a default target set on `service`.
            seed: If the target is `simulation` the seed for generating results. If None, this
                will be `np.random`, if an int, will be `np.random.RandomState(int)`, otherwise
                must be a modulate similar to `np.random`.
            timeout_seconds: Length of time to wait for results. Default is specified in the job.
        
cirq-ionq/cirq_ionq/sampler.py