Skip to main content
Il arrive que des données de trace volumineuses soient partiellement tronquées dans la Weave UI. Ce problème se produit parce que la sortie de trace par défaut est un objet Python brut personnalisé que Weave ne sait pas sérialiser. Pour éviter que des données de trace volumineuses ne soient tronquées, définissez comme valeur de retour un dictionnaire de chaînes de caractères afin de renvoyer l’ensemble des données de trace.
import weave

class MyObj:
    def __init__(self, x: int):
        self.x = x

    def __repr__(self):
        return f"MyObj(x={self.x})"

    def to_dict(self):
        return {"x": self.x}

@weave.op()
def make_my_obj():
    x = "s" * 10_000
    return MyObj(x)

Données de trace