GAT takes a graph as input, including edge and node feature tensors, and produces updated node states by aggregating information from neighboring nodes using attention mechanisms. Unlike traditional convolutional networks, GATs dynamically weight the importance of neighboring nodes during message passing, enhancing their ability to handle variable connectivity and lack of spatial order in graphs.