[Feature] JSON export/import for EvalOutput classes
- Dominant language
- Python
- Stars
- 291
- Forks
- 60
- PR merge metrics
- No merged PRs in 30d
Description
I'd like to be able to easily and persistently store EvalOutput results to e.g. local disk or NoSQL databases like DynamoDB... And ideally also load them back into fmeval/Python objects.
There are [several](https://www.benfrederickson.com/dont-pickle-your-data/) [good](https://stackoverflow.com/questions/2121874/python-pickling-after-changing-a-modules-directory) [reasons](https://stackoverflow.com/questions/6687262/how-do-i-know-which-versions-of-pickle-a-particular-version-of-python-supports) why I'd prefer to avoid just using pickle... and JSON seems like a natural fit for this kind of data, but we can't simply `json.dumps()` an `EvalOutput` object today.
It would be useful if we offered a clear mechanism to save the evaluation summary/scores to JSON, and ideally load back from JSON as well.
Contributor guide
Research direction
Start by locating the EvalOutput classes and the evaluation summary and score fields they expose. Define a stable JSON representation that can be saved to local disk or a NoSQL store and loaded back into fmeval/Python objects; done means the format and round-trip behavior are clear and usable.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100