aboutsummaryrefslogtreecommitdiff
path: root/apps/cf-ai-backend/src/utils/seededRandom.ts
diff options
context:
space:
mode:
Diffstat (limited to 'apps/cf-ai-backend/src/utils/seededRandom.ts')
-rw-r--r--apps/cf-ai-backend/src/utils/seededRandom.ts7
1 files changed, 7 insertions, 0 deletions
diff --git a/apps/cf-ai-backend/src/utils/seededRandom.ts b/apps/cf-ai-backend/src/utils/seededRandom.ts
index 36a1e4f9..9e315ee8 100644
--- a/apps/cf-ai-backend/src/utils/seededRandom.ts
+++ b/apps/cf-ai-backend/src/utils/seededRandom.ts
@@ -1,5 +1,9 @@
import { MersenneTwister19937, integer } from "random-js";
+/**
+ * Hashes a string to a 32-bit integer.
+ * @param {string} seed - The input string to hash.
+ */
function hashString(seed: string) {
let hash = 0;
for (let i = 0; i < seed.length; i++) {
@@ -10,6 +14,9 @@ function hashString(seed: string) {
return hash;
}
+/**
+ * returns a funtion that generates same sequence of random numbers for a given seed between 0 and 1.
+ */
export function seededRandom(seed: string) {
const seedHash = hashString(seed);
const engine = MersenneTwister19937.seed(seedHash);