what is best way to to extract paragraph or long sentences in a text document?

That's probably the easiest option, yes. You can split them up into logical chunks (paragraphs etc.) and create one record per chunk. If your file gets too big, you could also create multiple files and then annotate them in order – start the server with file 1, then with file 2 etc.

If you add custom properties to your JSON, Prodigy will simply pass them through and save them with the annotations. So you can include custom meta like the ID etc. For example:

{"text": "...", "internal_id": 1234}

Anything you put in the "meta" dict will be displayed in the bottom right corner of the annotation card – so you could use that to store meta information you want to see during annotation. For example:

{"text": "...", {"meta": "internal_id": 1234}}