# text classification

**URL:** <https://support.prodi.gy/t/text-classification/2063>\
**Category:** Uncategorized\
**Tags:** usage, textcat\
**Created:** [September 30, 2019, 5:44pm UTC](https://support.prodi.gy/t/text-classification/2063 "2019-09-30T17:44:10Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![robertto](https://avatars.discourse-cdn.com/v4/letter/r/f475e1/32.png) [@robertto](https://support.prodi.gy/u/robertto)\
**Post date:** [October 1, 2019, 1:01pm UTC](https://support.prodi.gy/t/text-classification/2063/3 "2019-10-01T13:01:20Z")

</div>

I tried to start to make workflow as following.

Work on my jsonl data (without label) by this:

```python
python -m prodigy textcat.manual dfObsV0003 en_core_web_sm dfObsV03.jsonl --label Observation
Using 1 labels: Observation

```

but I faced with this error:

```python

✨ ERROR: Invalid task format for view ID 'classification'
'label' is a required property

{'text': 'Chapter 1', '_input_hash': 1891558552, '_task_hash': -2011871074, '_session_id': 'dfObsV0003-default', '_view_id': 'classification'}

```

as you You mentioned here

> [@Only 25 lines loading from my .jsonl stream](https://support.prodi.gy/t/only-25-lines-loading-from-my-jsonl-stream/1838/2):
>
> Hi! One thing to keep in mind when using the active learning-powered recipes like textcat.teach is that they don’t necessarily show you all examples you’re loading in. The main concept behind the active learning approach is to show you the most relevant examples for annotation using the model’s predictions. Under the hood, Prodigy uses an exponential moving average of the scores to decide whether to send an example out for annotation or not. So based on the annotation decisions you make, the m…

that is bug. I add the edited version of script (since it has indent error)

```python
def add_label_to_stream(stream, label):
        for eg in stream:
            eg["label"] = label[0]
            yield eg
        if has_options:
            stream = add_label_options(stream, label)
        else:
            stream = add_label_to_stream(stream, label)

```

to end of texcat. it does not work I also add that to end of  
recipe manual...again it does not work...!  
Am I doing any mistake? could be related to my jsonl data? can you give me a step by step way to manually annotate my data and then make a model based on my annotation?

---

_[View the full topic](https://support.prodi.gy/t/text-classification/2063)._
