The silhouette score measures, for each point, how close it is to its own cluster compared with the nearest neighboring cluster. It ranges from -1 to 1: close to 1, the point is well placed; close to 0, it is on the boundary; negative, it is probably misassigned. Its mean evaluates the clustering.
Example
silhouette_score(X_s, labels)