SMC is surely one of the solution. But personally, when gradient is not available you need to very carefully study your system and model, design specific inference, and carefully verify your result. You dont want to end up with 5 million samples and effective sample size is still just 66.