I was also thinking to have a master server and slave servers. The slave servers will start to generate and validate sets and will send the result to master using rabbit me. Once a set is found, the master will shut down the slave servers.
I think your approach is going to work. RabbitMQ is about messages, message passing is a tool to organize parallel processing.
Your Task Generator (master) sends tasks (RabbitMQ messages) into the worker queue. Your processors (slaves) are subscribed to the queue. They can fetch task messages from the queue and start generating sets. Once generated, they send the result back to the master node. It can issue subsequent tasks based on what results it receives, ie
generate sets of higher value from now or
enough, stop work (those ones should go into different
command topic that slaves are also subscribed to).