Unfortunately I'm not familiar with any Oracle solutions that provide VRFs. Here is a way to get a random number, but it can still be manipulated by validators:
int seed = cell_hash(begin_cell()
.store_uint(now(), 256)
.store_uint(block_lt(), 256)
.store_uint(cur_lt(), 256)
.end_cell());
randomize(seed);
Randomize can be put in more complex schemes to significantly decrease the probability that a validator will affect the random value, but there isn't anything flawless. Here's a link to more information:
https://ton.org/docs/develop/smart-contracts/guidelines/random-number-generation