Ok - I think I have resolved this, and it has been resolved before:

Take a look at this question on how to create a graph of variable assignment. The point here is, because pytorch uses dynamic computation graphs, and the specification of either how to construct this graph or to compute with it is in python code only, you need to recover the edges from the code. That’s what the trace is for - then you can combine this with the pickled information (nodes) to reconstitute the graph.