<｜begin▁of▁sentence｜>### Instruction:
Given the coauthorships in network science which you can read from a GML file named netscience.gml, can you use the Louvain method in cdlib to perform community detection? And can you compute the Surprise metric to evaluate the quality of the community structure?
### Response:
import networkx as nx
from cdlib import algorithms, evaluation

# Create a graph from the coauthorships in network science file
G = nx.read_gml('netscience.gml')

# Apply the Louvain community detection algorithm
communities = algorithms.louvain(G)

# Compute the Surprise of the community structure
surprise_value = evaluation.surprise(G, communities)

# Print the Surprise metric
print(surprise_value.score)
<|EOT|>
