Skip to main content
Cette page explique comment publier, récupérer, supprimer et référencer des objets versionnés dans Weave. Consultez-la lorsque vous devez suivre des données structurées, comme des datasets, des modèles ou des prompts, d’un run à l’autre et dans le temps.

Objets

Un objet est une donnée versionnée et sérialisable. Weave versionne automatiquement les objets à chaque modification et en conserve un historique immuable. Les objets comprennent :
  • Datasets : collections d’exemples destinées à l’évaluation
  • Modèles : configurations et paramètres de votre logique LLM
  • Prompts : modèles de prompts versionnés

Publier un objet

La couche de sérialisation de Weave enregistre et versionne les objets.
Lorsque vous enregistrez un objet sous un nom donné, Weave crée la première version de cet objet s’il n’existe pas encore.

Récupérer un objet

Une fois l’objet publié, vous pouvez le récupérer à l’aide de sa référence.
weave.publish() renvoie une Ref. Appelez .get() sur n’importe quelle Ref pour récupérer l’objet.Vous pouvez également construire une réf., puis récupérer l’objet correspondant.

Supprimer un objet

Si vous n’avez plus besoin d’une version spécifique d’un objet, vous pouvez la supprimer à l’aide de sa réf.
Pour supprimer une version d’un objet, appelez .delete() sur la réf. de l’objet.
Toute tentative d’accès à un objet supprimé renvoie une erreur. La résolution d’un objet qui fait référence à un objet supprimé renvoie un DeletedRef à la place de ce dernier.

Construire des réf. d’objet

Les réf. identifient de manière unique un objet stocké et sa version. Les sections suivantes décrivent la structure de l’URI et les différentes façons de construire une réf. Dans Weave, une URI de réf. d’objet complète se présente comme suit :
  • [YOUR-TEAM-NAME] : entity Weights & Biases (nom d’utilisateur ou nom d’équipe)
  • [YOUR-PROJECT-NAME] : projet Weights & Biases
  • [OBJECT-NAME] : nom de l’objet
  • [OBJECT-VERSION] : un hash de version, une chaîne telle que v0 ou v1, ou un alias tel que :latest. Tous les objets possèdent l’alias :latest. Voir Organiser les versions d’objets avec des tags et des alias pour créer vos propres alias.
Vous pouvez construire des réf. de plusieurs manières :
  • weave.ref([NAME]) : récupère la version :latest d’un objet. Nécessite d’appeler weave.init(...).
  • weave.ref([NAME]:[VERSION]) : récupère la version spécifiée d’un objet. Nécessite d’appeler weave.init(...).
  • weave.ref([FULLY-QUALIFIED-REF-URI]) : récupère l’objet situé à l’URI de réf. d’objet complète indiquée. Ne nécessite pas d’appeler weave.init().

Organiser les versions d’objets avec des tags et des alias

Utilisez des tags et des alias pour étiqueter des versions spécifiques de n’importe quel objet Weave, notamment Dataset, Model, Prompt ou tout autre objet que vous publiez avec weave.publish. Ces étiquettes fonctionnent avec n’importe quel ObjectRef : les mêmes API s’appliquent donc à tous les types d’objets.
  • Alias : un nom unique qui pointe vers une seule version. Vous pouvez à tout moment déplacer un alias vers une autre version, ce qui le rend pratique pour des références stables comme production ou staging. Chaque objet dispose automatiquement d’un alias :latest qui pointe vers la version la plus récente.
  • Tag : une étiquette descriptive jointe à une version. Une version peut avoir plusieurs tags, et un même tag peut figurer sur plusieurs versions. Utilisez les tags pour catégoriser et filtrer les versions, par exemple reviewed ou passed-eval.
Pour connaître les caractères et les longueurs acceptés par les tags et les alias, consultez Règles de nommage. Pour résoudre un alias ou une version spécifique, ajoutez-le au nom de l’objet dans une réf. : L’exemple suivant publie deux versions d’un dataset, puis attribue et met à jour des tags et des alias sur chaque version.

Règles de nommage

Les noms d’objets, les tags et les alias doivent respecter les règles suivantes. Weave rejette tout tag ou alias qui ne les respecte pas. Avant de publier un objet, le SDK Python vérifie son nom selon les règles suivantes et le réécrit si nécessaire :
  1. Remplace chaque suite de caractères autres que des lettres, des chiffres, des caractères de soulignement et des points par un seul trait d’union.
  2. Remplace chaque suite d’au moins deux points, caractères de soulignement ou traits d’union par un seul trait d’union.
  3. Supprime les traits d’union et les caractères de soulignement en début et en fin de nom.
  4. Si le nom dépasse encore 128 caractères, conserve les 128 premiers et journalise un avertissement.
S’il ne reste rien après la réécriture, weave.publish() lève une ValueError. La réf. renvoyée par weave.publish() contient le nom réécrit : utilisez donc ce nom pour récupérer l’objet : Le SDK TypeScript ne réécrit pas le nom que vous transmettez à client.publish(). Si le nom enfreint les règles de nommage des objets, la requête échoue. Pour connaître les limites de longueur des noms d’ops et des noms d’affichage des appels, consultez Limites de longueur des noms.
Dernière modification le 5 octobre 2026