I wrote a Python package that uses graphviz to draw NN architectures of PyTorch neural nets[1]. Visualizing a neural net is a fun problem by itself; neural nets are essentially DAGs, but somehow recording the flow of data has lots of quirks (especially when dealing with RNNs or skip connections). There's a top-level view where you're just discussing about the layers as they are connected, and a low-level view where the output of each op matters.