From 3962c5794f304e73d22a424763eed861526739f9 Mon Sep 17 00:00:00 2001 From: Thorsten Sommer Date: Mon, 14 Oct 2024 19:34:06 +0200 Subject: [PATCH] Added bias data classes --- .../Settings/DataModel/Bias.cs | 29 ++++++++++ .../Settings/DataModel/BiasCategory.cs | 11 ++++ .../DataModel/BiasCategoryExtensions.cs | 55 +++++++++++++++++++ 3 files changed, 95 insertions(+) create mode 100644 app/MindWork AI Studio/Settings/DataModel/Bias.cs create mode 100644 app/MindWork AI Studio/Settings/DataModel/BiasCategory.cs create mode 100644 app/MindWork AI Studio/Settings/DataModel/BiasCategoryExtensions.cs diff --git a/app/MindWork AI Studio/Settings/DataModel/Bias.cs b/app/MindWork AI Studio/Settings/DataModel/Bias.cs new file mode 100644 index 00000000..a05fdd3b --- /dev/null +++ b/app/MindWork AI Studio/Settings/DataModel/Bias.cs @@ -0,0 +1,29 @@ +namespace AIStudio.Settings.DataModel; + +public sealed class Bias +{ + /// + /// The unique identifier of the bias. + /// + public Guid Id { get; init; } = Guid.Empty; + + /// + /// In which category the bias is located. + /// + public BiasCategory Category { get; set; } = BiasCategory.NONE; + + /// + /// The bias description. + /// + public string Description { get; init; } = string.Empty; + + /// + /// Related bias. + /// + public IReadOnlyList Related { get; init; } = []; + + /// + /// Related links. + /// + public IReadOnlyList Links { get; init; } = []; +} \ No newline at end of file diff --git a/app/MindWork AI Studio/Settings/DataModel/BiasCategory.cs b/app/MindWork AI Studio/Settings/DataModel/BiasCategory.cs new file mode 100644 index 00000000..bcf5121d --- /dev/null +++ b/app/MindWork AI Studio/Settings/DataModel/BiasCategory.cs @@ -0,0 +1,11 @@ +namespace AIStudio.Settings.DataModel; + +public enum BiasCategory +{ + NONE, + + WHAT_SHOULD_WE_REMEMBER, + TOO_MUCH_INFORMATION, + NOT_ENOUGH_MEANING, + NEED_TO_ACT_FAST, +} \ No newline at end of file diff --git a/app/MindWork AI Studio/Settings/DataModel/BiasCategoryExtensions.cs b/app/MindWork AI Studio/Settings/DataModel/BiasCategoryExtensions.cs new file mode 100644 index 00000000..4398c9c2 --- /dev/null +++ b/app/MindWork AI Studio/Settings/DataModel/BiasCategoryExtensions.cs @@ -0,0 +1,55 @@ +namespace AIStudio.Settings.DataModel; + +public static class BiasCategoryExtensions +{ + public static string ToName(this BiasCategory biasCategory) => biasCategory switch + { + BiasCategory.WHAT_SHOULD_WE_REMEMBER => "What should we remember?", + BiasCategory.TOO_MUCH_INFORMATION => "Too much information", + BiasCategory.NOT_ENOUGH_MEANING => "Not enough meaning", + BiasCategory.NEED_TO_ACT_FAST => "Need to act fast", + + _ => "Unknown category", + }; + + public static string GetThoughts(this BiasCategory biasCategory) => biasCategory switch + { + BiasCategory.WHAT_SHOULD_WE_REMEMBER => + """ + - We store memories differently based on how they were experienced + - We reduce events and lists to their key elements + - We discard specifics to form generalities + - We edit and reinforce some memories after the fact + """, + + BiasCategory.TOO_MUCH_INFORMATION => + """ + - We notice things already primed in memory or repeated often + - Bizarre, funny, visually-striking, or anthropomorphic things stick out more than non-bizarre/unfunny things + - We notice when something has changed + - We are drawn to details that confirm our own existing beliefs + - We notice flaws in others more easily than we notice flaws in ourselves + """, + + BiasCategory.NOT_ENOUGH_MEANING => + """ + - We tend to find stories and patterns even when looking at sparse data + - We fill in characteristics from stereotypes, generalities, and prior histories + - We imagine things and people we’re familiar with or fond of as better + - We simplify probabilities and numbers to make them easier to think about + - We project our current mindset and assumptions onto the past and future + - We think we know what other people are thinking + """, + + BiasCategory.NEED_TO_ACT_FAST => + """ + - We favor simple-looking options and complete information over complex, ambiguous options + - To avoid mistakes, we aim to preserve autonomy and group status, and avoid irreversible decisions + - To get things done, we tend to complete things we’ve invested time & energy in + - To stay focused, we favor the immediate, relatable thing in front of us + - To act, we must be confident we can make an impact and feel what we do is important + """, + + _ => string.Empty, + }; +} \ No newline at end of file