ontology_builder = lb.OntologyBuilder(
tools=[
lb.Tool(tool=lb.Tool.Type.NER,name="ner"),
],
classifications=[
lb.Classification(
class_type=lb.Classification.Type.RADIO,
scope=lb.Classification.Scope.GLOBAL,
name="Choose the best response",
options=[lb.Option(value="Response A"), lb.Option(value="Response B"), lb.Option(value="Tie")]
),
lb.Classification(
class_type=lb.Classification.Type.TEXT,
name="Provide a reason for your choice"
),
lb.Classification(
class_type=lb.Classification.Type.CHECKLIST,
scope=lb.Classification.Scope.INDEX,
name="checklist_convo",
options=[
lb.Option(value="first_checklist_answer"),
lb.Option(value="second_checklist_answer")
]
),
lb.Classification(
class_type=lb.Classification.Type.CHECKLIST,
name="nested_checklist_question",
scope = lb.Classification.Scope.INDEX,
options=[
lb.Option("first_checklist_answer",
options=[
lb.Classification(
class_type=lb.Classification.Type.CHECKLIST,
name="sub_checklist_question",
options=[lb.Option("first_sub_checklist_answer")]
)
])
]
),
lb.Classification(
class_type=lb.Classification.Type.RADIO,
name="nested_radio_question",
scope = lb.Classification.Scope.GLOBAL,
options=[
lb.Option("first_radio_answer",
options=[
lb.Classification(
class_type=lb.Classification.Type.RADIO,
name="sub_radio_question",
options=[lb.Option("first_sub_radio_answer")]
)
])
]
)
]
)
ontology = client.create_ontology("Pairwise comparison ontology", ontology_builder.asdict(), media_type=lb.MediaType.Conversational)