I’ve set up tailscale in the past week and fallen in love with the ease of use. So, this has my vote too. But, if i was doing this, i would chop the file into, say, 500mb parts using 7z or WinZip and then transfer it through SCP (WinSCP if using windows) over tailscale IPs.
I don’t think I’m getting it right, but isn’t it just a matter of checking the character set in the query and determining if it belongs to English or Devnagri part of Unicode and applying transliteration if the query is in English.
If you are looking for a self hosted Devnagri transliteration tool, look into AI4Bharat, a tool developed by IIT Madras.