Le SDK CoreWeave Forge trace automatiquement les appels que vous effectuez avec le SDK d’OpenAI pour Python et Node.js. Une fois le traçage initialisé, chaque appel effectué au sein d’une conversation est enregistré dans Agent Lens sous la forme d’un span LLM, avec ses messages, ses appels d’outils, ses paramètres de requête et son utilisation des jetons, y compris les jetons mis en cache et les jetons de raisonnement. Vous n’avez rien à modifier dans votre façon d’appeler le SDK d’OpenAI.
L’intégration trace les complétions de chat (y compris en streaming), le parsing des sorties structurées, l’API Responses (y compris en streaming) et la génération d’images.
Prérequis
- Un compte CoreWeave Forge et une clé API définie dans la variable d’environnement
WANDB_API_KEY.
- Une clé API OpenAI définie dans la variable d’environnement
OPENAI_API_KEY.
- Pour Python : Python 3.10 ou version ultérieure et
openai 1.99.9 ou version ultérieure.
- Pour TypeScript : Node.js 18.19 ou version ultérieure (ou 20.6 ou version ultérieure) et
openai 4.0.0 ou version ultérieure.
Installer les paquets
Tracer les conversations OpenAI
Appelez tracing.init() avec les noms de votre équipe et de votre projet Forge. En Python, tracing.init() patche le SDK d’OpenAI, que vous l’importiez avant ou après l’appel. En TypeScript, démarrez Node avec l’option d’instrumentation indiquée dans l’onglet TypeScript.
Agent Lens n’affiche que les appels exécutés au sein d’une conversation. Un appel effectué en dehors d’une conversation n’a pas d’ID de conversation et n’apparaît donc pas dans Agent Lens. Créez une conversation pour chaque session d’agent et démarrez un tour de conversation pour chaque message utilisateur. Tous les tours partagent l’ID de la conversation : Agent Lens les regroupe donc en une seule conversation, et chaque appel devient un span LLM du tour dans lequel il s’exécute.
Encapsulez chaque exécution d’agent dans tracing.runIsolated() afin que sa conversation et ses tours de conversation restent séparés des autres exécutions simultanées.Exécutez le script avec l’option d’instrumentation. Celle-ci charge l’instrumentation Forge avant votre code, de sorte que le SDK d’OpenAI est déjà patché lorsque votre code l’importe :Si vous ne pouvez pas utiliser cette option, par exemple parce qu’un bundler regroupe vos dépendances dans un seul fichier, encapsulez plutôt le client :Si vous exécutez le script sans cette option, tracing.init() affiche un avertissement à ce sujet, une seule fois. Vous pouvez l’ignorer si vous encapsulez vos clients.
Pour ajouter ultérieurement des tours de conversation à une conversation existante, par exemple dans une application web qui traite un tour par requête, transmettez le même conversation_id (Python) ou conversationId (TypeScript) chaque fois que vous créez la conversation.
Pour en savoir plus sur les conversations, les tours de conversation et les autres types de spans, consultez Tracer vos agents.
Désactiver le patching automatique
En Python, passez autopatch_integrations=False à tracing.init(). Vous pouvez ensuite appliquer et retirer vous-même le patch du SDK d’OpenAI avec tracing.integrations.patch_openai() et tracing.integrations.unpatch_openai().
En TypeScript, exécutez votre code sans l’option --import=@coreweave/forge-sdk/instrument et encapsulez avec integrations.wrapOpenAI() uniquement les clients que vous souhaitez tracer.
Afficher vos traces
Dans CoreWeave Forge, sélectionnez Agent Lens dans le menu des produits, choisissez votre projet dans le sélecteur de projet en haut du menu latéral, puis sélectionnez Conversations. Pour plus d’informations, voir Afficher l’activité des agents. Dernière modification le 30 septembre 2026