SIPA: a self-iterative preference alignment method for generative language models | Synapse