From 84132a29eb8c54976033128965a8d6426831aa4c Mon Sep 17 00:00:00 2001 From: tomsutch Date: Wed, 25 May 2022 12:39:10 +0100 Subject: [PATCH] Only encode to JSON once when serializing a Python model (#2178) --- docs/_docs/additional_topics.md | 5 ++--- notebooks/additional_topics.ipynb | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/docs/_docs/additional_topics.md b/docs/_docs/additional_topics.md index fd5b211..5c03e7c 100644 --- a/docs/_docs/additional_topics.md +++ b/docs/_docs/additional_topics.md @@ -36,14 +36,13 @@ In Python, models should not be saved with pickle; the Stan backend attached to ```python # Python -import json from prophet.serialize import model_to_json, model_from_json with open('serialized_model.json', 'w') as fout: - json.dump(model_to_json(m), fout) # Save model + fout.write(model_to_json(m)) # Save model with open('serialized_model.json', 'r') as fin: - m = model_from_json(json.load(fin)) # Load model + m = model_from_json(fin.read()) # Load model ``` The json file will be portable across systems, and deserialization is backwards compatible with older versions of prophet. diff --git a/notebooks/additional_topics.ipynb b/notebooks/additional_topics.ipynb index 17d4419..adbb7a0 100644 --- a/notebooks/additional_topics.ipynb +++ b/notebooks/additional_topics.ipynb @@ -122,14 +122,13 @@ "metadata": {}, "outputs": [], "source": [ - "import json\n", "from prophet.serialize import model_to_json, model_from_json\n", "\n", "with open('serialized_model.json', 'w') as fout:\n", - " json.dump(model_to_json(m), fout) # Save model\n", + " fout.write(model_to_json(m)) # Save model\n", "\n", "with open('serialized_model.json', 'r') as fin:\n", - " m = model_from_json(json.load(fin)) # Load model" + " m = model_from_json(fin.read()) # Load model" ] }, {