I have to do a quote for a contract work with a small company to do an AI task on images (classification, pattern recognition with specific conditions).
With "classic" programming tasks, you can know 99% in advance that, given enough time, you will succeed to build the product. But with an AI task, you can never promise in advance that "It will work with a 90% success rate!". Since there will be a part of research, you don't know in advance.
Question: How do you do a quote for AI R&D tasks, in which you don't know in advance that it will succeed?
- If I charge only if the finished product works then I will have lost 1 month of work in the case the R&D is not successful.
- If I charge even if the finished product is not working as expected (say 80% of success in the classification task), then the client will have lost money with a non-working product. It the client was a big company, I would do this. But here for a small company, I would feel bad to charge for something which is non working as expected for the client.
What are the most common ways to handle such projects?