diff --git a/utils.py b/utils.py
index 07a6c109aa8cf1337c46d735552a4581c3d00c67..7548aa1e9ccfa4d3addff4b31919503c13bed513 100644
--- a/utils.py
+++ b/utils.py
@@ -1,7 +1,7 @@
-from dataclasses import dataclass, field
 import inspect
 import json
 import logging
+from dataclasses import dataclass, field
 from datetime import datetime
 from functools import wraps
 from hashlib import shake_256
@@ -96,11 +96,15 @@ class log_calls:
 
 @dataclass(frozen=True)
 class Prompt:
+    id: str = field(init=False)
     content: str
     score: float
     gen: int
     meta: dict = field(default_factory=dict)
 
+    def __post_init__(self):
+        self.id = shake_256(self.content.encode() + self.gen.to_bytes()).hexdigest(16)
+
     def __str__(self) -> str:
         return self.content