bson.M est map[string]interface pas slice. Et vous avez besoin de []interface pour "$slice".
o1 := bson.M{"$project": bson.M{"user": bson.M{"$slice": []interface{}{"$user", 2, 1}}}}
Si vous partagez des données factices, des entrées et des sorties, je pourrais vous aider davantage.