pub async fn request_async(self) -> Result<B256> {
        self.prover
            .request_proof_impl(
                self.pk,
                &self.stdin,
                self.mode,
                self.strategy,
                self.timeout,
                self.skip_simulation,
                self.cycle_limit,
                self.gas_limit,
                self.min_auction_period,
                self.whitelist,
            )
            .await
    }
Request a proof from the prover network asynchronously.

# Details
This method will request a proof from the prover network asynchronously. If the prover fails
to request a proof, the method will return an error. It will not wait for the proof to be
generated.

# Example
```rust,no_run
use sp1_sdk::{Prover, ProverClient, SP1Stdin};

tokio_test::block_on(async {
let elf = &[1, 2, 3];
let stdin = SP1Stdin::new();

let client = ProverClient::builder().network().build();
let (pk, vk) = client.setup(elf);
let request_id = client.prove(&pk, &stdin).request_async().await.unwrap();
})
```
crates/sdk/src/network/prove.rs