> ## Documentation Index
> Fetch the complete documentation index at: https://kawax.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# Concurrence

> Points pratiques pour utiliser Laravel Concurrency et exécuter des tâches en parallèle avec Laravel Copilot SDK en mode stdio / TCP.

## Exécution parallèle avec la Concurrency de Laravel

## Cas du mode stdio

Démarrer un processus par exécution n'est pas idéal, mais seule cette écriture fonctionne. Comme Concurrency effectue en interne une sérialisation complexe, on renvoie uniquement la chaîne issue de `content()` et non l'objet SessionEvent.

```php theme={null}
use Revolution\Copilot\Facades\Copilot;
use Illuminate\Support\Facades\Concurrency;

$prompt = 'Tell me something about Copilot.';

[$gpt5_response, $sonnet_response] = Concurrency::run([
    fn () => Copilot::run($prompt, config: ['model' => 'gpt-5.2'])->content(),
    fn () => Copilot::run($prompt, config: ['model' => 'claude-sonnet-4.5'])->content(),
]);

echo 'GPT-5 Response: '.$gpt5_response;
echo 'Claude Sonnet Response: '.$sonnet_response;
```

## Cas du mode TCP

Sans démarrage de processus, ça semble plus rapide, mais en pratique la différence est négligeable.

Avec le driver Process, un timeout à 60 secondes est fréquent des deux côtés. Avec le driver `fork` réservé au CLI, seule une des exécutions a abouti. Ce n'est pas un échec global via exception. Comme seule `gpt-5` échouait, en passant à `gpt-5.2` les deux réussissent. C'était peut-être simplement un problème de temps de réponse du modèle.

La Concurrency existe comme fonctionnalité, mais sa mise en pratique reste incertaine. Pour les traitements longs, utilisez plutôt une file d'attente.

<Info>
  Pour les dernières informations, consultez le [dépôt GitHub](https://github.com/invokable/laravel-copilot-sdk).
</Info>


## Related topics

- [Concurrence](/fr/concurrency.md)
- [Client HTTP](/fr/http-client.md)
