diff --git a/anansyTypes/structures/phrase.py b/anansyTypes/structures/phrase.py index 54ac358..c032944 100644 --- a/anansyTypes/structures/phrase.py +++ b/anansyTypes/structures/phrase.py @@ -12,6 +12,13 @@ class NoEmbeddingPhrase(Lexeme): #initialised with empty embedding super().__init__(id=id, content=content, embedding=Embedding(data=torch.tensor([])), original_content=original_content) + @classmethod + def from_dict(cls, data: dict) -> "NoEmbeddingPhrase": + return cls( + id=data["id"], + content=data["content"], + original_content=data["original_content"], + ) class Phrase(Lexeme): @@ -20,6 +27,7 @@ class Phrase(Lexeme): return cls( id=data["id"], content=data["content"], + original_content=data["original_content"], embedding=Embedding.from_dict(data["embedding"]), ) @@ -30,5 +38,6 @@ class Phrase(Lexeme): return cls( id=phrase.id, content=phrase.content, + original_content=phrase.original_content, embedding=embedding, )