Write the introduction to the paper last. Start with the content: the data, the proofs, the discussion of pseudocode, whatever it is. Then think about your target audience. Who read the kinds of journals you are hoping to publish in? Who attends the kinds of conferences you are hoping to present in? Then add whatever perambulatory context those people need to understand the paper. Hoping to accommodate everyone who might be interested is hopeless.
Let's say you want to make your paper accessible to general knowledge physicists. You can assume that they all have a good understanding of undergraduate physics. You probably can't assume that they've kept up with all the coursework they did as PhD students, but the kinds of things covered in the first year or so of classes should be pretty common across disciplines. You're reminding people of the content from those courses, not teaching them. But anything that's at an advance graduate level or research level probably isn't something someone is going to know, unless that's their field.
If this is being published in a journal on GR, you can give less but deeper GR context because readers of GR journals know more about that. Spend more time and less depth presenting the thermo or QM topics.