Ce guide explique comment intégrer des bibliothèques tierces (par exemple OpenAI) au SDK TypeScript de Weave. Weave prend en charge l’instrumentation automatique, ce qui simplifie la configuration et réduit le besoin de configuration manuelle.Documentation Index
Fetch the complete documentation index at: https://docs.wandb.ai/llms.txt
Use this file to discover all available pages before exploring further.
Utiliser les intégrations Weave avec votre projet TypeScript
Si vous ne savez pas quel type de projet vous avez
package.json et tsconfig.json.
Pour déterminer si un projet utilise CommonJS ou ESM, vérifiez le champ type dans package.json :
- Si
typevaut"module", le projet utilise ESM. - Si le champ
typeest absent ou défini sur"commonjs", le projet utilise CommonJS par défaut.
Configurer un projet CommonJS
-
Créez ou mettez à jour votre
package.json: -
Créez un
tsconfig.jsonavec des paramètres compatibles avec CommonJS :Ces paramètres configurent TypeScript pour compiler en CommonJS :-
module: "CommonJS"— Compile les modules au format CommonJS (require/module.exports). Pour plus de détails sur cette option du compilateur, voir TypeScript - Module. -
target: "es2022"(Recommandé) — Génère du JavaScript moderne compatible avec les versions récentes de Node.js. Pour plus de détails sur cette option du compilateur, voir TypeScript - Target. -
rootDir: "."— Considère le répertoire contenanttsconfig.jsoncomme la racine de vos fichiers d’entrée. TypeScript l’utilise avecoutDirpour reproduire la structure de votre dossier source dans le résultat généré. Pour plus de détails sur cette option du compilateur, voir TypeScript - Root Dir. -
outDir: "dist"— Écrit le JavaScript généré (et les autres sorties du compilateur) dans le dossierdist. Pour plus de détails sur cette option du compilateur, voir TypeScript - Out Dir.
-
-
Installez Weave et toutes les autres bibliothèques requises :
-
Compilez votre fichier TypeScript.
Pour un fichier d’exemple
test.ts:Cela compile le fichier endist/test.js. -
Exécutez le fichier compilé avec Node.js :
require de Node.js, Weave peut instrumenter automatiquement les bibliothèques prises en charge sans nécessiter l’option --import utilisée dans les projets ESM.
Configurer un projet ESM
--import afin que Weave puisse enregistrer son instrumentation avant le chargement des autres modules.
Pour configurer votre projet pour ESM :
-
Créez ou mettez à jour votre
package.json: -
Créez un
tsconfig.jsonavec des paramètres ESM compatibles avec Node.js :Ces paramètres configurent TypeScript pour compiler vers un ESM Node.js moderne :-
module: "nodenext"— Compile les modules selon la sémantique ESM de Node.js. Pour plus de détails sur cette option du compilateur, voir TypeScript - Module. -
moduleResolution: "nodenext"— Garantit que la résolution des modules suit les règles ESM de Node.js. Pour plus de détails sur cette option du compilateur, voir TypeScript - Module Resolution. -
target: "es2022"(Recommandé) — Génère un code JavaScript moderne compatible avec les versions récentes de Node.js. Pour plus de détails sur cette option du compilateur, voir TypeScript - Target. -
rootDir: "."— Traite le répertoire qui contienttsconfig.jsoncomme la racine de vos fichiers d’entrée. TypeScript l’utilise avecoutDirpour reproduire la structure de votre dossier source dans le dossier de sortie. Pour plus de détails sur cette option du compilateur, voir TypeScript - Root Dir. -
outDir: "dist"— Écrit le code JavaScript généré (et les autres sorties du compilateur) dans le dossierdist. Pour plus de détails sur cette option du compilateur, voir TypeScript - Out Dir.
-
-
Installez Weave et toute autre bibliothèque requise :
-
Compilez votre fichier TypeScript.
Pour un fichier d’exemple
test.ts:Cette commande compile le fichier endist/test.js. -
Exécutez le fichier compilé avec Node.js et préchargez l’instrumentation Weave :
--import garantit que le module weave/instrument est chargé avant les autres modules afin que Weave puisse automatiquement instrumenter les bibliothèques et intégrations prises en charge.
Weave doit être installé localement dans le projet que vous exécutez.
Utilisation avancée et dépannage
Utiliser NODE_OPTIONS (uniquement pour ESM)
NODE_OPTIONS :
Compatibilité des bundlers
-
Marquez les bibliothèques LLM comme externes dans la configuration de votre bundler. Cela évite qu’elles soient intégrées au bundle, afin que Weave puisse les patcher correctement à l’exécution.
L’exemple suivant montre comment marquer le package
openaicomme externe dans une configurationnext.config.js, ce qui l’empêche d’être intégré au bundle. Le module est chargé à l’exécution, ce qui permet à Weave de le patcher automatiquement et de le suivre. Utilisez cette configuration lorsque vous travaillez avec des frameworks comme Next.js pour activer l’instrumentation automatique. - Si le patching échoue toujours, utilisez l’instrumentation manuelle.