JSON array import
A JSON file that is a list of objects imports like a table. Keys are columns. Label Studio exports are recognised automatically.
Shape
The file must be a list of objects, like [{...}, {...}]. A single object, a list of numbers or a list of lists is rejected with a message that says what shape is expected.
[
{"text": "a", "options": ["x", "y"]},
{"text": "b", "options": ["x", "z"], "n": 3}
]Per-row options
A key that holds a list of strings is read as the options of a pick-one or pick-several question for that row.
Label Studio exports
If the objects look like a Label Studio export (tasks with data and annotations or predictions), Azmaval rebuilds the labelling interface from them. See the Label Studio page.
Frequently asked questions
What happens to keys that appear in only some rows?
They become columns, and rows without them are blank in that column. Mark a column optional if it is not always present.
Is JSON Lines supported too?
Yes, and it is better for large files because it can be read one line at a time.