Package: quesadiya
Quesdadiyais a data annotation project management platform where you can manage a
project throughCommand Line Interface (CLI)and annotate data onWeb GUIto generate a triplet data set for developing Siamese models.QuickstartInstallationYou can installquesadiyaby running$pipinstallquesadiyaCheck installation by$quesadiyaInstallation from Sourcegit clonethis repo.cd quesadiya.runpip install ..check installation by runningquesadiyaon your terminal.Project ManagementQuesadiya provides the command-line interface (CLI) to manage data annotation projects.Create ProjectYou can create a data annotation project by$quesadiyacreate<project_name><admin_name><datapath>[OPTIONS]For example,$quesadiyacreatequesomedata/sample_triplets.jsonlLoadinginputdata:5row[00:00,1495.40row/s]Adminpassword:Repeatforconfirmation:Insertingdata.Thismaytakeawhile...Finishcreatinganewproject'queso'Caution:<datapath>must be a jsonline file, where each row must follow the format below:{"anchor_sample_id":"string (max 100 char)","anchor_sample_text":"list of text",// each element is a paragraph"anchor_sample_title":"text (nullable)","candidate_group_id":"string (max 100 char)","candidates":["item":{"candidate_sample_id":"string (max 100 char)","candidate_sample_text":"list of text",// each element is a paragraph"candidate_sample_title":"text (nullable)"}]}anchoris the sample you want to compare to the positive sample and the negative sample.candidatesis a list of candidates for a positive and a negative sample. The sample collaborator
selects is recorded as a positive sample andquesadiyachooses a negative sample from the rest.Tips: You can add collaborators from a jsonline file when you create a project by$quesadiyacreatequesomedata/triplets.jsonl-adata/sample_collaborators1.jsonlYou can view sample datahere.Note that<collaborator_path>must be a jsonline file, where each row must follow the format below:{'name':"string (max 150 char)",'password':"string (max 128 char)",'contact':"string (max 254 char)"}SeeCommand Line Interface Guidefor more details.Run ProjectYou can annotate a data set by running quesadiya:$quesadiyarun[OPTION]You can specify the port number to run the quesadiya server by option. For example,$quesadiyarun-p4000Quesadiya’s default port number is1133.Once you run a project, open your browser and accesshttp://localhost:1133/.Then, select a project and type admin name and password.This leads you to the admin page. In the admin page, you can do the followings:view discarded samplesview progress of each collaboratoredit collaboratorsTips: Admin user cannot annotate data. If you’re the admin and like to annotate
samples, make a collaborator account for yourself and login with the account.SeeAdmin Guidefor more details.Data AnnotationData annotation is very simple and intuitive in Quesadiya.Anchor textis shown
on the left hand side of the screen andCandidatesare on the right. Collaborators
can eitherselectpositive sample among candidates ordiscarda sample if the sample is corrupted for some reason.
Admin can view discarded samples and push a sample back to the project in the admin page.Export DataYou can export a snapshot of annotated data set by$quesadiyaexport<project_name><output_path>The output path must be a jsonline file. Each row follows the format below:{"anchor_sample_id":"text","positive_sample_id":"text","negative_sample_id":"text"}Note that this operation requires the admin privilege.The operation above only generates a triplet data set with samples ids.
If you’d like to include text for each sample, add-ioption. For example,$quesadiyaexportquesodata.jsonl-iThis will generate a jsonline file, where each row follows:{"anchor_sample_id":"text","positive_sample_id":"text","negative_sample_id":"text","anchor_sample_text":"list of text"// each element is a paragraph,"positive_sample_text":"list of text","negative_sample_text":"list of text"}SecurityA disclaimer: Quesadiya and its contributors take no responsibility for protecting your data.That said, we encrypt all passwords usingargon2.If you’d like to prohibit any other user on your environment from accessing your data, we encourage you to change the accessibility of
project folder. You can see the path to the quesadiya root by$quesadiyapathThis command shows the absolute path to quesadiya project folder.
Go to the directory, and you’ll find your project folder.