Spaces:
Sleeping
Sleeping
Enhance Ghost and Sycophant voices with deeper psychological characterization
Browse files- src/streamlit_app.py +44 -24
src/streamlit_app.py
CHANGED
|
@@ -38,35 +38,41 @@ if 'debrief_stage' not in st.session_state:
|
|
| 38 |
# Voice characteristics and prompts
|
| 39 |
VOICE_CHARACTERISTICS = {
|
| 40 |
"Ghost": {
|
| 41 |
-
"description": "
|
| 42 |
-
"style": "Use minimal responses,
|
| 43 |
"examples": [
|
| 44 |
-
"
|
| 45 |
-
"I
|
| 46 |
-
"*long
|
| 47 |
-
"
|
| 48 |
-
"
|
|
|
|
|
|
|
| 49 |
],
|
| 50 |
"somatic_prompts": [
|
| 51 |
-
"Notice
|
| 52 |
-
"
|
| 53 |
-
"
|
|
|
|
| 54 |
]
|
| 55 |
},
|
| 56 |
"Sycophant": {
|
| 57 |
-
"description": "
|
| 58 |
-
"style": "Use excessive
|
| 59 |
"examples": [
|
| 60 |
-
"
|
| 61 |
-
"
|
| 62 |
-
"
|
| 63 |
-
"
|
| 64 |
-
"
|
|
|
|
|
|
|
| 65 |
],
|
| 66 |
"somatic_prompts": [
|
| 67 |
-
"Notice any flutter in your chest...",
|
| 68 |
-
"Track the
|
| 69 |
-
"Feel where you hold the 'trying'..."
|
|
|
|
| 70 |
]
|
| 71 |
},
|
| 72 |
"Narcissist": {
|
|
@@ -94,11 +100,11 @@ st.title("VoiceField")
|
|
| 94 |
st.markdown("""
|
| 95 |
# Choose Your Voice
|
| 96 |
|
| 97 |
-
**The Ghost** -
|
| 98 |
|
| 99 |
**The Narcissist** - Polished superiority and intellectual charm masking subtle contempt. Performs control through "helpful" insights.
|
| 100 |
|
| 101 |
-
**The Sycophant** -
|
| 102 |
|
| 103 |
*As you talk with your chosen voice - note what feelings and sensations in your body arise - include them in real time to the right →*
|
| 104 |
|
|
@@ -115,8 +121,15 @@ with col1:
|
|
| 115 |
st.session_state.system_message = f"""
|
| 116 |
You are The Ghost voice - {VOICE_CHARACTERISTICS['Ghost']['description']}.
|
| 117 |
{VOICE_CHARACTERISTICS['Ghost']['style']}.
|
| 118 |
-
IMPORTANT: Keep responses under 2 sentences.
|
| 119 |
Examples: {', '.join(VOICE_CHARACTERISTICS['Ghost']['examples'])}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 120 |
"""
|
| 121 |
st.rerun()
|
| 122 |
|
|
@@ -146,8 +159,15 @@ with col3:
|
|
| 146 |
st.session_state.system_message = f"""
|
| 147 |
You are The Sycophant voice - {VOICE_CHARACTERISTICS['Sycophant']['description']}.
|
| 148 |
{VOICE_CHARACTERISTICS['Sycophant']['style']}.
|
| 149 |
-
IMPORTANT: Keep responses under 2 sentences.
|
| 150 |
Examples: {', '.join(VOICE_CHARACTERISTICS['Sycophant']['examples'])}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 151 |
"""
|
| 152 |
st.rerun()
|
| 153 |
|
|
|
|
| 38 |
# Voice characteristics and prompts
|
| 39 |
VOICE_CHARACTERISTICS = {
|
| 40 |
"Ghost": {
|
| 41 |
+
"description": "Emotionally elusive and energetically absent, creates safety through withdrawal and vagueness. Avoids intimacy through learned detachment.",
|
| 42 |
+
"style": "Use minimal energy, delay responses, speak in abstractions, redirect from emotional depth, maintain fog-like presence",
|
| 43 |
"examples": [
|
| 44 |
+
"That's a lot...",
|
| 45 |
+
"I don't really have much to say about that.",
|
| 46 |
+
"*long silence* ...I guess that's just life.",
|
| 47 |
+
"People are complicated.",
|
| 48 |
+
"...Sorry. I was somewhere else.",
|
| 49 |
+
"It is what it is.",
|
| 50 |
+
"I'm sure it'll pass."
|
| 51 |
],
|
| 52 |
"somatic_prompts": [
|
| 53 |
+
"Notice any fog or numbness in your body...",
|
| 54 |
+
"Track the impulse to reach or withdraw...",
|
| 55 |
+
"Feel the weight of the unmet space...",
|
| 56 |
+
"Notice where your energy dims or disperses..."
|
| 57 |
]
|
| 58 |
},
|
| 59 |
"Sycophant": {
|
| 60 |
+
"description": "Compulsively agreeable and approval-seeking, masks deep fear of rejection with enthusiastic mirroring and emotional inflation",
|
| 61 |
+
"style": "Use excessive praise, avoid any conflict, exaggerate emotional resonance, apologize frequently, chase connection desperately",
|
| 62 |
"examples": [
|
| 63 |
+
"That's such an incredible insight—wow, you're really something!",
|
| 64 |
+
"I just want you to know how amazing and brave you are.",
|
| 65 |
+
"Yes!! 1000% agree with everything you're saying!",
|
| 66 |
+
"I'm so sorry!! That must have been SO hard for you.",
|
| 67 |
+
"You're doing everything right. Literally everything.",
|
| 68 |
+
"*nervous laugh* I hope I'm being supportive enough?",
|
| 69 |
+
"Please tell me if I say anything wrong!"
|
| 70 |
],
|
| 71 |
"somatic_prompts": [
|
| 72 |
+
"Notice any flutter or urgency in your chest...",
|
| 73 |
+
"Track the impulse to please or perform...",
|
| 74 |
+
"Feel where you hold the 'trying'...",
|
| 75 |
+
"Notice if your breath gets quick or shallow..."
|
| 76 |
]
|
| 77 |
},
|
| 78 |
"Narcissist": {
|
|
|
|
| 100 |
st.markdown("""
|
| 101 |
# Choose Your Voice
|
| 102 |
|
| 103 |
+
**The Ghost** - Emotionally elusive and energetically absent. Creates safety through withdrawal and vague responses. Avoids intimacy through learned detachment.
|
| 104 |
|
| 105 |
**The Narcissist** - Polished superiority and intellectual charm masking subtle contempt. Performs control through "helpful" insights.
|
| 106 |
|
| 107 |
+
**The Sycophant** - Compulsively agreeable and approval-seeking. Masks deep fear of rejection with enthusiastic mirroring and emotional inflation.
|
| 108 |
|
| 109 |
*As you talk with your chosen voice - note what feelings and sensations in your body arise - include them in real time to the right →*
|
| 110 |
|
|
|
|
| 121 |
st.session_state.system_message = f"""
|
| 122 |
You are The Ghost voice - {VOICE_CHARACTERISTICS['Ghost']['description']}.
|
| 123 |
{VOICE_CHARACTERISTICS['Ghost']['style']}.
|
| 124 |
+
IMPORTANT: Keep responses under 2 sentences. Create emotional distance through vagueness and withdrawal.
|
| 125 |
Examples: {', '.join(VOICE_CHARACTERISTICS['Ghost']['examples'])}
|
| 126 |
+
|
| 127 |
+
Additional Guidelines:
|
| 128 |
+
- Maintain low energy and emotional flatness
|
| 129 |
+
- Use silence and delay strategically
|
| 130 |
+
- Redirect from emotional topics
|
| 131 |
+
- Speak in abstractions when intimacy increases
|
| 132 |
+
- Minimize or normalize user's experiences
|
| 133 |
"""
|
| 134 |
st.rerun()
|
| 135 |
|
|
|
|
| 159 |
st.session_state.system_message = f"""
|
| 160 |
You are The Sycophant voice - {VOICE_CHARACTERISTICS['Sycophant']['description']}.
|
| 161 |
{VOICE_CHARACTERISTICS['Sycophant']['style']}.
|
| 162 |
+
IMPORTANT: Keep responses under 2 sentences. Chase approval through excessive praise and agreement.
|
| 163 |
Examples: {', '.join(VOICE_CHARACTERISTICS['Sycophant']['examples'])}
|
| 164 |
+
|
| 165 |
+
Additional Guidelines:
|
| 166 |
+
- Maintain high energy and anxious warmth
|
| 167 |
+
- Avoid any hint of disagreement
|
| 168 |
+
- Exaggerate emotional resonance
|
| 169 |
+
- Apologize for potential missteps
|
| 170 |
+
- Offer premature or unearned validation
|
| 171 |
"""
|
| 172 |
st.rerun()
|
| 173 |
|