GVPs define scalar and vector features to embed the nodes and edges. The edges 𝑒 = (𝑠, 𝑉) consist of a normalized direction vector 𝑉 ∈ ℝ /×)×1 as well as the distance between two nodes 𝑠 ∈ ℝ /×) , where 𝑁 is the number of edges. Under the linear transformations and nonlinear activation, the edges are embedded as 𝑒 4 = (𝑠 4 , 𝑉 4 ), where 𝑠 4 ∈ ℝ /×5 and 𝑉 4 ∈ ℝ /×)×1 , F is the size of the hidden layer. The nodes follow a similar transformation but start with only scalar features, ℎ = (𝑠), where 𝑠 ∈ ℝ /×2 and m is the features of each node. The nodes are transformed as ℎ 4 = (𝑠 4 , 𝑉 ) , where 𝑠 4 ∈ ℝ /×5 and 𝑉 4 ∈ ℝ /×(5/#)×1 . In the following section, unless explicitly stated otherwise, the embedded edges are denoted as e and the embedded nodes are denoted as h for clarity. In LigandDiff, each graph is fully connected and interactions between all atoms are counted during the message passing process which is defined as