In a large mixing bowl, pour in the warm milk, sugar, a teaspoon of flour, and yeast, then whisk them together. Let the mixture sit for a few minutes for the yeast to activate.
When yeast has been activated, add all other ingredients for the dough except for the flour; whisk them well.
Gradually add the flour and stir with a wooden spoon until everything is well incorporated, and all the flour is absorbed. The dough should be wet and moderately soft.
Cover the dough and let it rest for 1 hour.
In the meantime, to prepare the filling, melt the chocolate and butter in a small saucepan or pot. Set aside.
Roll out the dough thinly on a floured surface. Spread the prepared chocolate filling evenly over the dough, and then sift cocoa powder over it.
Roll up the dough tightly into a long cylinder, and then cut the cylinder in half longwise. Turn each half of the dough so that the layered part is facing upwards.
Press the tops of the two dough pieces together tightly, and then start braiding the dough by crossing one end over the other while making sure the layered part is always facing upwards.
Place the braided dough in a greased 9x5-inch loaf pan, sprinkle with almonds (if using), and let it rest for 20 minutes.
Meanwhile, preheat the oven to 350°F.
Bake the babka in the preheated oven for about 45 to 50 minutes or until golden brown. On an instant-read thermometer, the baked babka should register at 190°F in the center of the loaf.You can cover the pan with foil for the first 25 minutes of baking to prevent the top of the bread from browning too fast. Once it's done, remove the bread from the oven and let it cool in the pan for 15 minutes, then turn out onto a wire rack and cool it completely before slicing.