Aller au contenu principal

Implementation avec le xAI SDK

Le SDK natif de xAI

Le xAI SDK est la methode la plus directe pour utiliser le multi-agent. Il expose des parametres specifiques comme agent_count qui n’existent pas dans les SDK tiers.

Implementation multi-agent dans le terminal

xai_sdk
Package Python officiel
agent_count
Parametre exclusif
Streaming
Reponse temps reel
Tools
web_search, x_search...

Configuration de base

L’initialisation du client xAI se fait avec votre cle API :

import os
from xai_sdk import Client
from xai_sdk.chat import user

client = Client(api_key=os.getenv("XAI_API_KEY"))

La variable d’environnement XAI_API_KEY doit contenir votre cle API xAI. Ne codez jamais la cle en dur dans votre code.

Requete a 4 agents (mode rapide)

Pour une recherche rapide et ciblee, utilisez agent_count=4 :

chat = client.chat.create(
    model="grok-4.20-multi-agent",
    agent_count=4
)
chat.append(user("Compare TCP et UDP en detail"))

for response, chunk in chat.stream():
    if chunk.content:
        print(chunk.content, end="", flush=True)

Le streaming est la methode recommandee : vous voyez la reponse se construire en temps reel plutot que d’attendre la fin de toute la recherche multi-agent.

Requete a 16 agents (mode approfondi)

Pour une recherche exhaustive, passez a agent_count=16 :

chat = client.chat.create(
    model="grok-4.20-multi-agent",
    agent_count=16
)
chat.append(user(
    "Fais un etat de l'art complet des architectures RAG en 2026, "
    "en comparant les approches hybrides, les performances et les couts"
))

for response, chunk in chat.stream():
    if chunk.content:
        print(chunk.content, end="", flush=True)

Ajouter des outils integres

Le xAI SDK facilite l’ajout d’outils comme la recherche web et la recherche X :

from xai_sdk.tools import web_search, x_search

chat = client.chat.create(
    model="grok-4.20-multi-agent",
    agent_count=4,
    tools=[web_search(), x_search()],
    include=["verbose_streaming"],
)

chat.append(user("Quelles sont les dernieres annonces d'xAI cette semaine ?"))

for response, chunk in chat.stream():
    if chunk.content:
        print(chunk.content, end="", flush=True)

Le parametre include=["verbose_streaming"] vous permet de voir les appels d’outils en temps reel pendant que les agents travaillent.

Contenu chiffre pour les conversations multi-tours

Si vous prevoyez des conversations multi-tours, activez le contenu chiffre :

chat = client.chat.create(
    model="grok-4.20-multi-agent",
    agent_count=4,
    use_encrypted_content=True,
)

Ce parametre permet au modele de conserver l’etat des sub-agents entre les tours, garantissant une meilleure coherence dans les echanges prolonges.

Gestion des erreurs

Le multi-agent etant en beta, prevoyez une gestion d’erreurs robuste :

try:
    chat = client.chat.create(
        model="grok-4.20-multi-agent",
        agent_count=4
    )
    chat.append(user("Ma question"))

    for response, chunk in chat.stream():
        if chunk.content:
            print(chunk.content, end="", flush=True)
except Exception as e:
    print(f"Erreur multi-agent : {e}")
    # Fallback vers un modele standard si necessaire

Points cles a retenir

  • Le xAI SDK expose agent_count pour controler directement le nombre d’agents
  • Utilisez toujours le streaming pour le multi-agent (.stream())
  • verbose_streaming revele les appels d’outils en temps reel
  • use_encrypted_content=True pour les conversations multi-tours
  • Prevoyez toujours une gestion d’erreurs (API beta)