So here is what I have learned over the years from working for, dealing with, starting my own, and studying consultancy companies. It really quite simple.
Every successful consultancy company I know had several things in common.
1) The founders weren't concerned about money. The could afford to spend time bootstrapping the business because they had some source of fallback that most people don't have. For example, their parents/brother/sister may have been very well off and they knew that even if they "blow it all" it wouldn't mean starvation.
2) A guaranteed client. Most startup consultancies I have encountered had a guaranteed client. That is, a client that is already willing to work with them and throw contracts their way giving the company time to bootstrap itself while paying a few salaries.
3) Sales. Your consultancy is not different than any other consultancy. The only difference is nobody trusts you (see 4) and most prospects will likely go to a more established consultancy. You are going to be spending most of your time doing sales. Don't get discouraged, get some cheap email campaign software, get some cheap lead generation software and keep doing sales. Going to conferences and networking doesn't work in the boutique software consultancy game. It just doesn't.
4) No body trust you. You have to build the most professional web site you can afford and make yourself look trust worthy. Don't build something you can't afford but you need something.
5) (Warning: unethical) Most boutique software companies I know have some unethical gimmick. Basically if you are a white male you can hire cheap labor from India, China, South America, eastern europe and market yourself as the white western world's interface to cheap 3rd world software development expertise. You can hate me for saying that so bluntly, but google it and see how many consultancies ACTUALLY DO THAT. I know of software consultancies (several) that completely bootstrapped themselves this way thriving off of the cheap labor of the 3rd world for years to undercut competitors. This is such a popular technique that new startups are actually giving away months of there cheap labor for free in order to compete with other cheap labor selling consultancies whose prices they can't match and whose name is more well established. Please don't get hung up on the fact that I mentioned this point - its a reality.
6) Don't listen to others who tell you that you can't do it just because they can't.
7) See point 3. If you are not willing to do sales more than you do software than you should just stop right now. If you don't have enough money to pay for a sales then you have to do it yourself.
8) Don't think you have a software consultancy if you've just settled on being an independent contractor. You don't, and you are will likely just be a cog in the engine that I've described in points 1 - 7.
Hint: Nobody uses ML (I'm assuming you mean ML like in Standard ML or the like). Don't get hung up on a particular language or framework. You will just be limiting yourself to a very small segment of the market if you choose some niche language.