Passer au contenu principal
Weave fournit un ensemble de variables d’environnement permettant de configurer et d’optimiser son comportement. Cette page s’adresse aux développeurs qui utilisent le SDK Weave et souhaitent ajuster le comportement à l’exécution, notamment le traçage, la journalisation, la mise en cache et les nouvelles tentatives, sans modifier le code de l’application. Vous pouvez définir ces variables dans votre shell ou dans des scripts afin de contrôler des fonctionnalités spécifiques. Les exemples suivants montrent deux façons courantes de définir les variables d’environnement de Weave. Utilisez l’approche shell pour configurer Weave pour une session entière, ou l’approche Python pour définir des valeurs dans votre script.
# Exemple de définition des variables d'environnement dans le shell
export WEAVE_PARALLELISM=10  # Contrôle le nombre de workers parallèles
export WEAVE_PRINT_CALL_LINK=false  # Désactive la sortie du lien d'appel
# Exemple de définition des variables d'environnement en Python
import os

os.environ["WEAVE_PARALLELISM"] = "10"
os.environ["WEAVE_PRINT_CALL_LINK"] = "false"

Variables d’environnement disponibles

Le tableau suivant répertorie chaque variable d’environnement prise en charge, son type, sa valeur par défaut et le comportement qu’elle contrôle. Pour connaître les valeurs acceptées lors de la définition de variables booléennes, voir la note sur les valeurs booléennes.
VariableTypePar défautDescription
WANDB_API_KEYstringNoneSi elle est définie, vous connecte automatiquement à W&B Weave sans vous demander votre clé API. Pour générer une clé API, connectez-vous à votre compte W&B et accédez à Paramètres utilisateur.
WEAVE_DISABLEDboolfalseLorsqu’elle est définie sur true, désactive tout le traçage Weave. Les ops Weave se comportent comme des fonctions classiques.
WEAVE_PRINT_CALL_LINKbooltrueContrôle l’affichage d’un lien vers l’interface Weave lors de l’appel d’une op Weave. Vous pouvez également le définir directement dans votre code en configurant l’argument settings de weave.init() comme ceci : weave.init("your-project-name", settings={"print_call_link": False})
WEAVE_LOG_LEVELstrINFOContrôle le niveau de journalisation de Weave.
WEAVE_CAPTURE_CODEbooltrueContrôle si le code des ops doit être enregistré afin que vous puissiez le recharger ultérieurement.
WEAVE_DEBUG_HTTPboolfalseLorsqu’elle est définie sur true, active la journalisation des requêtes et des réponses HTTP à des fins de débogage.
WEAVE_PARALLELISMint20Dans les évaluations, contrôle le nombre d’exemples à évaluer en parallèle. Définissez-la sur 1 pour exécuter les exemples de façon séquentielle.
WEAVE_TRACE_LANGCHAINbooltrueContrôle le traçage global pour LangChain. Définissez-la sur false pour désactiver explicitement le traçage de LangChain.
WEAVE_USE_SERVER_CACHEbooltrueActive la mise en cache des réponses du serveur. Lorsqu’elle est activée, Weave met en cache les réponses du serveur sur disque afin que les requêtes répétées puissent être traitées depuis le cache au lieu d’être récupérées à nouveau depuis le serveur.
WEAVE_SERVER_CACHE_SIZE_LIMITint1,000,000,000Définit la taille maximale du cache serveur, en octets. Lorsque le cache atteint cette taille, Weave supprime automatiquement les entrées les plus anciennes pour libérer de l’espace pour les nouvelles. Important : l’implémentation sous-jacente utilise SQLite, qui possède un journal à écriture anticipée (WAL) atteignant 4 Mo quelle que soit cette configuration. Weave supprime ce WAL lorsque le programme se termine.
WEAVE_SERVER_CACHE_DIRstrNoneSpécifie le répertoire dans lequel Weave stocke les fichiers de cache. Si elle n’est pas définie, Weave utilise un répertoire temporaire.
WEAVE_MAX_CALLS_QUEUE_SIZEint100000Définit la taille maximale de la file d’attente des appels. La valeur par défaut est 100000. Définir une valeur de 0 permet à la file d’attente de croître sans limite.
WEAVE_ENABLE_WALboolfalseActive le journal à écriture anticipée (WAL) de Weave. Lorsqu’elle est définie sur true, Weave écrit les requêtes API sur disque avant de les envoyer au serveur, afin qu’elles puissent être récupérées si le processus se termine avant leur envoi.
WEAVE_DISABLE_WAL_SENDERboolfalseDésactive l’expéditeur du journal à écriture anticipée (WAL) de Weave. Lorsqu’elle est définie sur true, Weave écrit les requêtes sur disque mais ne les envoie pas au serveur. Utile pour le débogage.
WEAVE_RETRY_MAX_ATTEMPTSint3Définit le nombre maximal de tentatives de réessai pour les requêtes ayant échoué.
WEAVE_RETRY_MAX_INTERVALfloat300.0Définit l’intervalle maximal entre les tentatives de réessai, en secondes.
WANDB_BASE_URLstringNoneDéfinit l’URL de l’hôte Weave. Cela équivaut à saisir l’URL de l’hôte lorsque wandb.login() vous la demande. Vous pouvez spécifier WANDB_BASE_URL et WANDB_API_KEY avant d’utiliser weave.init() pour vous connecter et vous authentifier automatiquement à Weave.
Toutes les variables d’environnement booléennes acceptent les valeurs suivantes (sans distinction de casse) :
  • true, 1, yes, on pour True
  • false, 0, no, off pour False