Version 1.14.5
Location C:\Program Files\Python\Lib\site-packages\prodigy
Prodigy Home C:\Users\Ronny.prodigy
Platform Windows-10-10.0.22621-SP0
Python Version 3.11.6
Spacy Version 3.6.1
Database Name SQLite
Database Id sqlite
Total Datasets 2
Total Sessions 5
Just curious - what browser are you using? If you're not already, can you try Chrome or Firefox?
If you're still not seeing the save button, can you right click, choose "Inspect" and see if you find any browser errors?
Can you run:
python -m prodigy print-dataset ner_ticker
Do you see any annotations? I'm worried that you may not have saved actually annotations into your dataset.
Per the docs:
As you annotate, batches of examples will be cleared from your outbox and sent back to the Prodigy server to be saved in the database. You can also hit the save button in the top-left corner or press COMMAND+S (on Mac) or CTRL+S to clear your outbox and manually save.
You can also view the logs to confirm whether annotations are actually saved to your database. Please provide logs when you can when debugging issues; this helps us diagnose problems a lot faster.
To learn more about how progress is measured, check out this part of the docs, especially the "What is a source" box. Unfortunately, progress can sometimes be unintuitive.
This offers a tractable way to estimate progress, but it has a few consequences that can be unintuitive in multiuser scenarios.
The Source-based progress tracks the progress through the input file rather than completed annotations. This means that even when starting a single-annotator flow, there will already be a non-zero progress as some of the file will have been consumed in the process of session initialization.
It is possible for one annotator to reach the end of their queue before the rest does. When this happens, the Source will have a position at the end of the file. So the Source-based progress bar will show 100% to every annotator.
The Source is unaware of the task router and the current sessions. Depending on the Prodigy configuration it could be possible for new annotators to join at given time. That also means that a person could join and immediately see a significant progress when they arrive at the annotation interface.
You're right, it was appearing after hitting the green button - I don't think it's in issue as it is probably auto-saving. My concern is that db-out is not returning any data (out.jsonl is empty):
C:\RTFilingsAI\train\ticker>PRODIGY_LOGGING=basic python -m prodigy ner.manual ner_ticker blank:en ./ticker_text.jsonl --label ACQUIREE,ACQUIREE_EXCHANGE,ACQUIREE_TICKER,ACQUIROR,ACQUIROR_EXCHANGE,ACQUIROR_TICKER
'PRODIGY_LOGGING' is not recognized as an internal or external command,
operable program or batch file.
Ah! My bad. I didn't notice that you were using Windows. I think that environment variables need to be declared differently on that platform. I found this resource that might prove useful.
Maybe something like this?
$Env:PRODIGY_LOGGING = "basic"
I'm not a Windows user myself so I'm not 100% sure how Windows prefers to receive this. I've also found this resource other resource ...
This suggests that you might be able to set and use the variable by first running a set command and then run the Prodigy command after.
Well, playing around with the different options I discovered that Prodigy will write out the annotations to the database when I use ner.openai.correct (see below). I would still like to know why ner.manual is not writing to the database - it would be nice to have that recipe working as we would still like to use it.
Can you record a video showing (1) start a new Prodigy session (2) annotate examples and accept them (either click the box or press A and (3) either save them by clicking the Save button or complete a batch (e.g., accept more than 10 examples)?
For example, this is what you should see in your logs.