Using a vegetable steamer, steam the sweet potatoes until fork tender, about 10 to 15 minutes. Remove from steamer and reserve.
In a soup or stock pot, heat the olive oil over medium-high heat and, when hot, add the shallots, carrots, a pinch of crushed red pepper flakes and a pinch of Kosher salt, and saute briefly, until the shallots are translucent, about 2 to 3 minutes. Add the ground coriander, the cumin, the Ras el Hanout, and the cinnamon and saute, stirring to blend, for one minute.
Add the entire can of diced tomatoes with jalapeno and stir to blend for one minute. Return the steamed sweet potatoes to the pot and add the vegetable broth, stirring to blend. Raise the heat to high and bring the soup to the boil, then reduce heat to low, cover and simmer for 15 minutes.
Remove the soup from the heat and, using an immersion blend, puree the soup until thick, creamy and smooth. Return the soup to medium heat and add the shredded Gruyere cheese and 2 tablespoons of non-fat milk, stirring well, until the cheese has melted and is fully incorporated. Should the soup prove to thick for your liking, you may add a bit more broth to thin to desired consistency.
Serve immediately, garnished with some chopped fresh parsley or cilantro and some freshly popped popcorn to make it festive! Enjoy!