Hey guys, I'm currently running through the documentation and noticed a lot of hooks to receive information but not many to send.
I guess my question is, with the API at present, would I be able to interface with prodigy with an application (ie Swift app). Where I would be able to annotate on the swift app and then send it back to prodigy.
Hi! That should definitely possible but the specifics of course depend on what you're trying to do Once the server is running, you can interact with it via the REST API: https://prodi.gy/docs/api-web-app#rest-api-docs
The most relevant endpoints are /get_questions and /give_answers. /get_questions returns you a batch of examples to annotate, and /give_answers lets you send back a batch of annotated examples.
Thank you so much! Mainly a non-web based application would be the goal in case they don't allow prodigy due to HIPAA and to allow physicians to quickly review with or without a connection/setting up a server etc.
Thank you for pointing of the specific end points.
Also I hope its alright. If it is not please let me know privately and I will not go ahead with the project.
Yeah, in general, this should be fine! (Of course, it'd probably be easier and less work to just use Prodigy's web-based UI if you can.)
Btw, we have a lot of users who are working with sensitive data like electronic health records and are running Prodigy on an air-gapped machine (see Med7 for instance), so I'm pretty confident that you won't have any problems there. I don't know of any case where Prodigy didn't meet the compliance requirements and it's passed every security review – mainly because it does exactly what it says it does and runs entirely offline on your own hardware
Ill definitely look into this now. Thank you for the resource. Im going to give it my best over the next few weeks and see if I can also manage to present a huge amount of tags in a scrollbox. Thats my main concern (like potentially in the 6-figure range).
By 6-figure range, you mean 100k+ labels? And what exactly are you annotating and is this for a machine learning model? If so, this approach seems a bit counterproductive and you'll likely making your life a lot harder this way. I've explained this in a bit more detail for NER on this thread:
So UMLS entities would be annotated. The situation I'm thinking about is if the annotator needs to remove the suggested entity and search for a new one through all available UMLS entities.
In reality, a very small subset of UMLS entities will be used, but which those are are to be determined.