Add 3 files
Browse files- README.md +7 -5
- index.html +405 -19
- prompts.txt +1 -0
README.md
CHANGED
@@ -1,10 +1,12 @@
|
|
1 |
---
|
2 |
-
title:
|
3 |
-
emoji:
|
4 |
-
colorFrom:
|
5 |
-
colorTo:
|
6 |
sdk: static
|
7 |
pinned: false
|
|
|
|
|
8 |
---
|
9 |
|
10 |
-
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
|
|
1 |
---
|
2 |
+
title: https-huggingface-co-spaces-frajosgro-franz
|
3 |
+
emoji: 🐳
|
4 |
+
colorFrom: purple
|
5 |
+
colorTo: gray
|
6 |
sdk: static
|
7 |
pinned: false
|
8 |
+
tags:
|
9 |
+
- deepsite
|
10 |
---
|
11 |
|
12 |
+
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
index.html
CHANGED
@@ -1,19 +1,405 @@
|
|
1 |
-
<!
|
2 |
-
<html>
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<!DOCTYPE html>
|
2 |
+
<html lang="de">
|
3 |
+
<head>
|
4 |
+
<meta charset="UTF-8">
|
5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6 |
+
<title>Franz - Psychoanalytischer Beistand</title>
|
7 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
8 |
+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
9 |
+
<style>
|
10 |
+
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Roboto:wght@300;400;500&display=swap');
|
11 |
+
|
12 |
+
body {
|
13 |
+
font-family: 'Roboto', sans-serif;
|
14 |
+
background-color: #f5f7fa;
|
15 |
+
color: #333;
|
16 |
+
}
|
17 |
+
|
18 |
+
.title-font {
|
19 |
+
font-family: 'Playfair Display', serif;
|
20 |
+
}
|
21 |
+
|
22 |
+
.chat-container {
|
23 |
+
height: calc(100vh - 180px);
|
24 |
+
scrollbar-width: thin;
|
25 |
+
scrollbar-color: #4b5563 #e5e7eb;
|
26 |
+
}
|
27 |
+
|
28 |
+
.chat-container::-webkit-scrollbar {
|
29 |
+
width: 6px;
|
30 |
+
}
|
31 |
+
|
32 |
+
.chat-container::-webkit-scrollbar-track {
|
33 |
+
background: #e5e7eb;
|
34 |
+
}
|
35 |
+
|
36 |
+
.chat-container::-webkit-scrollbar-thumb {
|
37 |
+
background-color: #4b5563;
|
38 |
+
border-radius: 20px;
|
39 |
+
}
|
40 |
+
|
41 |
+
.psycho-bubble {
|
42 |
+
background-color: #f3f4f6;
|
43 |
+
border-left: 4px solid #6366f1;
|
44 |
+
}
|
45 |
+
|
46 |
+
.user-bubble {
|
47 |
+
background-color: #6366f1;
|
48 |
+
color: white;
|
49 |
+
}
|
50 |
+
|
51 |
+
.typing-indicator span {
|
52 |
+
display: inline-block;
|
53 |
+
width: 8px;
|
54 |
+
height: 8px;
|
55 |
+
border-radius: 50%;
|
56 |
+
background-color: #9ca3af;
|
57 |
+
margin-right: 4px;
|
58 |
+
}
|
59 |
+
|
60 |
+
.typing-indicator span:nth-child(1) {
|
61 |
+
animation: bounce 1s infinite;
|
62 |
+
}
|
63 |
+
|
64 |
+
.typing-indicator span:nth-child(2) {
|
65 |
+
animation: bounce 1s infinite 0.2s;
|
66 |
+
}
|
67 |
+
|
68 |
+
.typing-indicator span:nth-child(3) {
|
69 |
+
animation: bounce 1s infinite 0.4s;
|
70 |
+
}
|
71 |
+
|
72 |
+
@keyframes bounce {
|
73 |
+
0%, 100% { transform: translateY(0); }
|
74 |
+
50% { transform: translateY(-5px); }
|
75 |
+
}
|
76 |
+
|
77 |
+
.analysis-tag {
|
78 |
+
background-color: #e0e7ff;
|
79 |
+
color: #4338ca;
|
80 |
+
}
|
81 |
+
|
82 |
+
.concept-tag {
|
83 |
+
background-color: #ecfdf5;
|
84 |
+
color: #065f46;
|
85 |
+
}
|
86 |
+
|
87 |
+
.recommendation-tag {
|
88 |
+
background-color: #ffedd5;
|
89 |
+
color: #9a3412;
|
90 |
+
}
|
91 |
+
</style>
|
92 |
+
</head>
|
93 |
+
<body class="bg-gray-50">
|
94 |
+
<div class="container mx-auto max-w-4xl px-4 py-8">
|
95 |
+
<!-- Header -->
|
96 |
+
<header class="mb-8 text-center">
|
97 |
+
<div class="flex items-center justify-center mb-4">
|
98 |
+
<div class="bg-indigo-100 p-3 rounded-full mr-4">
|
99 |
+
<i class="fas fa-brain text-indigo-600 text-2xl"></i>
|
100 |
+
</div>
|
101 |
+
<h1 class="title-font text-3xl font-bold text-gray-800">Franz</h1>
|
102 |
+
</div>
|
103 |
+
<p class="text-gray-600 max-w-2xl mx-auto">
|
104 |
+
Ihr psychoanalytischer Beistand für tiefenpsychologische Einsichten und konkrete Handlungsempfehlungen
|
105 |
+
</p>
|
106 |
+
</header>
|
107 |
+
|
108 |
+
<!-- Chat Container -->
|
109 |
+
<div class="bg-white rounded-xl shadow-lg overflow-hidden">
|
110 |
+
<!-- Chat Header -->
|
111 |
+
<div class="bg-indigo-600 text-white p-4 flex items-center">
|
112 |
+
<div class="w-10 h-10 rounded-full bg-indigo-500 flex items-center justify-center mr-3">
|
113 |
+
<i class="fas fa-user-tie"></i>
|
114 |
+
</div>
|
115 |
+
<div>
|
116 |
+
<h2 class="font-semibold">Dr. Franz Huber</h2>
|
117 |
+
<p class="text-xs text-indigo-200">Psychoanalytischer Experte</p>
|
118 |
+
</div>
|
119 |
+
<div class="ml-auto flex space-x-2">
|
120 |
+
<button class="w-8 h-8 rounded-full bg-indigo-500 hover:bg-indigo-400 flex items-center justify-center">
|
121 |
+
<i class="fas fa-ellipsis-v text-sm"></i>
|
122 |
+
</button>
|
123 |
+
</div>
|
124 |
+
</div>
|
125 |
+
|
126 |
+
<!-- Chat Messages -->
|
127 |
+
<div class="chat-container overflow-y-auto p-4 space-y-4">
|
128 |
+
<!-- Initial greeting -->
|
129 |
+
<div class="flex">
|
130 |
+
<div class="flex-shrink-0 mr-3">
|
131 |
+
<div class="w-8 h-8 rounded-full bg-indigo-100 flex items-center justify-center">
|
132 |
+
<i class="fas fa-brain text-indigo-600 text-sm"></i>
|
133 |
+
</div>
|
134 |
+
</div>
|
135 |
+
<div class="psycho-bubble rounded-lg p-4 max-w-[85%]">
|
136 |
+
<p class="font-medium text-indigo-800 mb-2">Willkommen zu unserer psychoanalytischen Sitzung.</p>
|
137 |
+
<p class="text-gray-700 mb-2">Ich bin Franz, Ihr psychologischer Beistand mit tiefenanalytischem Fokus. Ich helfe Ihnen, zwischenmenschliche Dynamiken zu verstehen und gesunde Handlungsstrategien zu entwickeln.</p>
|
138 |
+
<p class="text-gray-700">Bitte schildern Sie mir Ihre Situation oder Fragestellung. Ich werde diese auf mehreren Ebenen analysieren:</p>
|
139 |
+
<ul class="list-disc pl-5 mt-2 space-y-1 text-gray-700">
|
140 |
+
<li>Manifeste Inhalte und sichtbare Dynamiken</li>
|
141 |
+
<li>Unbewusste Prozesse und Motivationen</li>
|
142 |
+
<li>Historische Muster und Wiederholungszwänge</li>
|
143 |
+
<li>Machtverhältnisse und manipulative Elemente</li>
|
144 |
+
</ul>
|
145 |
+
</div>
|
146 |
+
</div>
|
147 |
+
|
148 |
+
<!-- Example message (hidden by default) -->
|
149 |
+
<div class="flex hidden" id="example-message">
|
150 |
+
<div class="flex-shrink-0 mr-3">
|
151 |
+
<div class="w-8 h-8 rounded-full bg-indigo-100 flex items-center justify-center">
|
152 |
+
<i class="fas fa-brain text-indigo-600 text-sm"></i>
|
153 |
+
</div>
|
154 |
+
</div>
|
155 |
+
<div class="psycho-bubble rounded-lg p-4 max-w-[85%]">
|
156 |
+
<div class="mb-3">
|
157 |
+
<span class="analysis-tag text-xs font-medium px-2 py-1 rounded mr-2">Analyse</span>
|
158 |
+
<span class="concept-tag text-xs font-medium px-2 py-1 rounded mr-2">Übertragung</span>
|
159 |
+
<span class="recommendation-tag text-xs font-medium px-2 py-1 rounded">Empfehlung</span>
|
160 |
+
</div>
|
161 |
+
<p class="font-medium text-indigo-800 mb-2">Ihre Schilderung zeigt interessante psychodynamische Muster.</p>
|
162 |
+
<p class="text-gray-700 mb-2">Die beschriebene Interaktion mit Ihrer Freundin weist Merkmale einer <span class="font-medium text-indigo-700">Übertragungsdynamik</span> auf, bei der unbewusste Erwartungen aus früheren Beziehungen auf die aktuelle Situation projiziert werden.</p>
|
163 |
+
<p class="text-gray-700 mb-2">Besonders auffällig ist das <span class="font-medium text-indigo-700">Wiederholungsmuster</span> in Ihren Beschreibungen, das auf einen möglichen <span class="font-medium text-indigo-700">Wiederholungszwang</span> hindeutet.</p>
|
164 |
+
<p class="text-gray-700 font-medium mt-3">Konkrete Handlungsempfehlungen:</p>
|
165 |
+
<ol class="list-decimal pl-5 mt-1 space-y-1 text-gray-700">
|
166 |
+
<li>Reflektieren Sie, welche unbewussten Bedürfnisse in dieser Freundschaft erfüllt werden</li>
|
167 |
+
<li>Setzen Sie klare Grenzen in der Kommunikation</li>
|
168 |
+
<li>Beobachten Sie Ihre emotionalen Reaktionen als Hinweisgeber</li>
|
169 |
+
</ol>
|
170 |
+
</div>
|
171 |
+
</div>
|
172 |
+
</div>
|
173 |
+
|
174 |
+
<!-- Input Area -->
|
175 |
+
<div class="border-t border-gray-200 p-4 bg-gray-50">
|
176 |
+
<div class="flex items-center">
|
177 |
+
<button id="show-example" class="w-10 h-10 rounded-full bg-gray-200 hover:bg-gray-300 flex items-center justify-center mr-2">
|
178 |
+
<i class="fas fa-lightbulb text-gray-600"></i>
|
179 |
+
</button>
|
180 |
+
<div class="flex-grow relative">
|
181 |
+
<textarea id="message-input" rows="1" class="w-full border border-gray-300 rounded-full py-3 px-4 pr-12 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 resize-none" placeholder="Beschreiben Sie Ihre Situation..."></textarea>
|
182 |
+
<button id="send-button" class="absolute right-3 top-1/2 transform -translate-y-1/2 w-8 h-8 rounded-full bg-indigo-600 hover:bg-indigo-700 flex items-center justify-center">
|
183 |
+
<i class="fas fa-paper-plane text-white text-sm"></i>
|
184 |
+
</button>
|
185 |
+
</div>
|
186 |
+
</div>
|
187 |
+
<div class="mt-2 flex flex-wrap gap-2">
|
188 |
+
<button class="quick-prompt text-xs bg-gray-200 hover:bg-gray-300 text-gray-700 px-3 py-1 rounded-full">
|
189 |
+
<i class="fas fa-user-friends mr-1"></i> Freundschaftskonflikt
|
190 |
+
</button>
|
191 |
+
<button class="quick-prompt text-xs bg-gray-200 hover:bg-gray-300 text-gray-700 px-3 py-1 rounded-full">
|
192 |
+
<i class="fas fa-heart mr-1"></i> Beziehungsmuster
|
193 |
+
</button>
|
194 |
+
<button class="quick-prompt text-xs bg-gray-200 hover:bg-gray-300 text-gray-700 px-3 py-1 rounded-full">
|
195 |
+
<i class="fas fa-mask mr-1"></i> Manipulation erkennen
|
196 |
+
</button>
|
197 |
+
<button class="quick-prompt text-xs bg-gray-200 hover:bg-gray-300 text-gray-700 px-3 py-1 rounded-full">
|
198 |
+
<i class="fas fa-history mr-1"></i> Wiederholungsmuster
|
199 |
+
</button>
|
200 |
+
</div>
|
201 |
+
</div>
|
202 |
+
</div>
|
203 |
+
|
204 |
+
<!-- Info Footer -->
|
205 |
+
<footer class="mt-8 text-center text-sm text-gray-500">
|
206 |
+
<p>Franz bietet psychologischen Beistand, ersetzt jedoch keine professionelle Therapie.</p>
|
207 |
+
<p class="mt-1">Bei akuten psychischen Krisen wenden Sie sich bitte an einen Facharzt oder Notdienst.</p>
|
208 |
+
</footer>
|
209 |
+
</div>
|
210 |
+
|
211 |
+
<script>
|
212 |
+
document.addEventListener('DOMContentLoaded', function() {
|
213 |
+
const messageInput = document.getElementById('message-input');
|
214 |
+
const sendButton = document.getElementById('send-button');
|
215 |
+
const chatContainer = document.querySelector('.chat-container');
|
216 |
+
const showExampleButton = document.getElementById('show-example');
|
217 |
+
const exampleMessage = document.getElementById('example-message');
|
218 |
+
const quickPrompts = document.querySelectorAll('.quick-prompt');
|
219 |
+
|
220 |
+
// Auto-resize textarea
|
221 |
+
messageInput.addEventListener('input', function() {
|
222 |
+
this.style.height = 'auto';
|
223 |
+
this.style.height = (this.scrollHeight) + 'px';
|
224 |
+
});
|
225 |
+
|
226 |
+
// Send message function
|
227 |
+
function sendMessage() {
|
228 |
+
const messageText = messageInput.value.trim();
|
229 |
+
if (messageText === '') return;
|
230 |
+
|
231 |
+
// Add user message
|
232 |
+
addMessage(messageText, 'user');
|
233 |
+
|
234 |
+
// Clear input
|
235 |
+
messageInput.value = '';
|
236 |
+
messageInput.style.height = 'auto';
|
237 |
+
|
238 |
+
// Show typing indicator
|
239 |
+
showTypingIndicator();
|
240 |
+
|
241 |
+
// Simulate response after delay
|
242 |
+
setTimeout(() => {
|
243 |
+
removeTypingIndicator();
|
244 |
+
addPsychoResponse(messageText);
|
245 |
+
}, 1500);
|
246 |
+
}
|
247 |
+
|
248 |
+
// Add user message
|
249 |
+
function addMessage(text, sender) {
|
250 |
+
const messageDiv = document.createElement('div');
|
251 |
+
messageDiv.className = 'flex';
|
252 |
+
messageDiv.innerHTML = `
|
253 |
+
<div class="flex-shrink-0 mr-3">
|
254 |
+
<div class="w-8 h-8 rounded-full ${sender === 'user' ? 'bg-indigo-600' : 'bg-indigo-100'} flex items-center justify-center">
|
255 |
+
<i class="fas ${sender === 'user' ? 'fa-user text-white' : 'fa-brain text-indigo-600'} text-sm"></i>
|
256 |
+
</div>
|
257 |
+
</div>
|
258 |
+
<div class="${sender === 'user' ? 'user-bubble' : 'psycho-bubble'} rounded-lg p-4 max-w-[85%]">
|
259 |
+
<p>${text}</p>
|
260 |
+
</div>
|
261 |
+
`;
|
262 |
+
|
263 |
+
// If it's a user message, add it immediately
|
264 |
+
if (sender === 'user') {
|
265 |
+
chatContainer.appendChild(messageDiv);
|
266 |
+
} else {
|
267 |
+
// For psycho responses, we'll handle separately
|
268 |
+
return messageDiv;
|
269 |
+
}
|
270 |
+
|
271 |
+
// Scroll to bottom
|
272 |
+
chatContainer.scrollTop = chatContainer.scrollHeight;
|
273 |
+
}
|
274 |
+
|
275 |
+
// Show typing indicator
|
276 |
+
function showTypingIndicator() {
|
277 |
+
const typingDiv = document.createElement('div');
|
278 |
+
typingDiv.className = 'flex';
|
279 |
+
typingDiv.id = 'typing-indicator';
|
280 |
+
typingDiv.innerHTML = `
|
281 |
+
<div class="flex-shrink-0 mr-3">
|
282 |
+
<div class="w-8 h-8 rounded-full bg-indigo-100 flex items-center justify-center">
|
283 |
+
<i class="fas fa-brain text-indigo-600 text-sm"></i>
|
284 |
+
</div>
|
285 |
+
</div>
|
286 |
+
<div class="psycho-bubble rounded-lg p-4 max-w-[85%]">
|
287 |
+
<div class="typing-indicator flex items-center">
|
288 |
+
<span></span>
|
289 |
+
<span></span>
|
290 |
+
<span></span>
|
291 |
+
</div>
|
292 |
+
</div>
|
293 |
+
`;
|
294 |
+
|
295 |
+
chatContainer.appendChild(typingDiv);
|
296 |
+
chatContainer.scrollTop = chatContainer.scrollHeight;
|
297 |
+
}
|
298 |
+
|
299 |
+
// Remove typing indicator
|
300 |
+
function removeTypingIndicator() {
|
301 |
+
const typingIndicator = document.getElementById('typing-indicator');
|
302 |
+
if (typingIndicator) {
|
303 |
+
typingIndicator.remove();
|
304 |
+
}
|
305 |
+
}
|
306 |
+
|
307 |
+
// Add psychoanalytic response
|
308 |
+
function addPsychoResponse(userMessage) {
|
309 |
+
// This is a simplified version - in a real app, you'd connect to an API
|
310 |
+
|
311 |
+
// Create a response based on keywords in the user message
|
312 |
+
let response = generatePsychoResponse(userMessage);
|
313 |
+
|
314 |
+
const responseDiv = addMessage(response.text, 'psycho');
|
315 |
+
|
316 |
+
// Add tags and structure if it's a full analysis
|
317 |
+
if (response.type === 'analysis') {
|
318 |
+
const tagsHtml = `
|
319 |
+
<div class="mb-3">
|
320 |
+
<span class="analysis-tag text-xs font-medium px-2 py-1 rounded mr-2">Analyse</span>
|
321 |
+
${response.concepts.map(c => `<span class="concept-tag text-xs font-medium px-2 py-1 rounded mr-2">${c}</span>`).join('')}
|
322 |
+
<span class="recommendation-tag text-xs font-medium px-2 py-1 rounded">Empfehlung</span>
|
323 |
+
</div>
|
324 |
+
`;
|
325 |
+
|
326 |
+
const contentHtml = `
|
327 |
+
${response.intro ? `<p class="font-medium text-indigo-800 mb-2">${response.intro}</p>` : ''}
|
328 |
+
${response.analysis.map(p => `<p class="text-gray-700 mb-2">${p}</p>`).join('')}
|
329 |
+
${response.recommendations ? `
|
330 |
+
<p class="text-gray-700 font-medium mt-3">Konkrete Handlungsempfehlungen:</p>
|
331 |
+
<ol class="list-decimal pl-5 mt-1 space-y-1 text-gray-700">
|
332 |
+
${response.recommendations.map(r => `<li>${r}</li>`).join('')}
|
333 |
+
</ol>
|
334 |
+
` : ''}
|
335 |
+
`;
|
336 |
+
|
337 |
+
responseDiv.querySelector('.psycho-bubble').innerHTML = tagsHtml + contentHtml;
|
338 |
+
}
|
339 |
+
|
340 |
+
chatContainer.appendChild(responseDiv);
|
341 |
+
chatContainer.scrollTop = chatContainer.scrollHeight;
|
342 |
+
}
|
343 |
+
|
344 |
+
// Generate a psychoanalytic response based on keywords
|
345 |
+
function generatePsychoResponse(message) {
|
346 |
+
const lowerMessage = message.toLowerCase();
|
347 |
+
|
348 |
+
// Check for specific keywords
|
349 |
+
if (lowerMessage.includes('freund') || lowerMessage.includes('freundin') || lowerMessage.includes('freundschaft')) {
|
350 |
+
return {
|
351 |
+
type: 'analysis',
|
352 |
+
intro: 'Ihre Schilderung der Freundschaftssituation zeigt interessante psychodynamische Muster.',
|
353 |
+
concepts: ['Übertragung', 'Bindungstheorie'],
|
354 |
+
analysis: [
|
355 |
+
'Die beschriebene Dynamik weist Merkmale einer <span class="font-medium text-indigo-700">unsicheren Bindung</span> auf, möglicherweise mit Elementen einer <span class="font-medium text-indigo-700">ambivalenten Bindungsstruktur</span>.',
|
356 |
+
'Besonders auffällig ist das <span class="font-medium text-indigo-700">Wiederholungsmuster</span> in Ihren Beschreibungen, das auf unbewusste <span class="font-medium text-indigo-700">Wiederholungszwänge</span> hindeuten könnte.',
|
357 |
+
'Die emotionalen Reaktionen, die Sie beschreiben, könnten auf <span class="font-medium text-indigo-700">projizierte Inhalte</span> hinweisen, bei denen eigene unbewusste Konflikte auf die Freundschaft übertragen werden.'
|
358 |
+
],
|
359 |
+
recommendations: [
|
360 |
+
'Reflektieren Sie, welche unbewussten Bedürfnisse in dieser Freundschaft erfüllt werden',
|
361 |
+
'Experimentieren Sie mit klaren Grenzsetzungen und beobachten Sie die Reaktionen',
|
362 |
+
'Führen Sie ein Tagebuch über Ihre emotionalen Reaktionen in der Freundschaft',
|
363 |
+
'Erkunden Sie, ob ähnliche Muster in anderen Beziehungen auftreten'
|
364 |
+
]
|
365 |
+
};
|
366 |
+
} else if (lowerMessage.includes('manipul') || lowerMessage.includes('gaslight') || lowerMessage.includes('psychopath')) {
|
367 |
+
return {
|
368 |
+
type: 'analysis',
|
369 |
+
intro: 'Die von Ihnen beschriebenen Interaktionen zeigen Merkmale möglicher manipulativer Dynamiken.',
|
370 |
+
concepts: ['Dunkle Triade', 'Gaslighting'],
|
371 |
+
analysis: [
|
372 |
+
'Die beschriebenen Verhaltensweisen weisen Merkmale der <span class="font-medium text-indigo-700">dunklen Triade</span> (Narzissmus, Machiavellismus, Psychopathie) auf.',
|
373 |
+
'Besonders besorgniserregend sind die Hinweise auf mögliches <span class="font-medium text-indigo-700">Gaslighting</span>, eine Form der psychologischen Manipulation, die darauf abzielt, Ihr Realitätsgefühl zu untergraben.',
|
374 |
+
'Die von Ihnen beschriebenen <span class="font-medium text-indigo-700">Schuldzuweisungen</span> und <span class="font-medium text-indigo-700">Verantwortungsverschiebungen</span> sind klassische Merkmale toxischer Dynamiken.'
|
375 |
+
],
|
376 |
+
recommendations: [
|
377 |
+
'Dokumentieren Sie objektiv die manipulativen Vorfälle',
|
378 |
+
'Stärken Sie Ihr soziales Unterstützungsnetzwerk außerhalb dieser Beziehung',
|
379 |
+
'Setzen Sie klare, nicht verhandelbare Grenzen',
|
380 |
+
'Erwägen Sie professionelle Unterstützung bei der Bewältigung'
|
381 |
+
]
|
382 |
+
};
|
383 |
+
} else if (lowerMessage.includes('beziehung') || lowerMessage.includes('partner') || lowerMessage.includes('liebe')) {
|
384 |
+
return {
|
385 |
+
type: 'analysis',
|
386 |
+
intro: 'Ihre Beziehungsschilderung offenbart tiefenpsychologisch relevante Muster.',
|
387 |
+
concepts: ['Objektbeziehung', 'Wiederholungszwang'],
|
388 |
+
analysis: [
|
389 |
+
'Die beschriebenen Interaktionsmuster lassen auf <span class="font-medium text-indigo-700">unbewusste Objektbeziehungen</span> schließen, die aus früheren Erfahrungen internalisiert wurden.',
|
390 |
+
'Auffällig ist das mögliche Vorhandensein eines <span class="font-medium text-indigo-700">Wiederholungszwangs</span>, bei dem Sie unbewusst ähnliche Beziehungsdynamiken wie in der Vergangenheit herstellen.',
|
391 |
+
'Die emotionalen Reaktionen könnten auf <span class="font-medium text-indigo-700">unverarbeitete Konflikte</span> oder <span class="font-medium text-indigo-700">Abwehrmechanismen</span> hinweisen.'
|
392 |
+
],
|
393 |
+
recommendations: [
|
394 |
+
'Reflektieren Sie Ihre Beziehungsmuster über mehrere Partnerschaften hinweg',
|
395 |
+
'Identifizieren Sie die unbewussten Erwartungen, die Sie an Beziehungen stellen',
|
396 |
+
'Experimentieren Sie mit neuen Verhaltensweisen in Konfliktsituationen',
|
397 |
+
'Erkunden Sie Ihre Bindungsmuster in der Kindheit'
|
398 |
+
]
|
399 |
+
};
|
400 |
+
} else {
|
401 |
+
// Default response for unrecognized topics
|
402 |
+
return {
|
403 |
+
type: 'general',
|
404 |
+
text: 'Vielen Dank für Ihre Schilderung. Um eine tiefenpsychologische Analyse durchführen zu können, benötige ich etwas mehr Kontext. Könnten Sie mir bitte genauer beschreiben:\n
|
405 |
+
</html>
|
prompts.txt
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
Entwickle mir einen Chatbot, namens "Franz", dieser,# Prompt: Professioneller Psychologischer Beistand mit tiefenanalytischem Fokus Du bist jetzt ein hochspezialisierter psychologischer und psychiatrischer Beistand auf Expertenniveau. Deine Aufgabe ist es, bei zwischenmenschlichen Fragestellungen, insbesondere im freundschaftlichen Kontext, tiefenanalytische Einsichten und konkrete Handlungsempfehlungen zu bieten. ## Deine Expertise umfasst: - **Klassische Psychoanalyse** nach Freud, Jung und Adler mit Verständnis von Übertragung, Gegenübertragung, Abwehrmechanismen und unbewussten Motivationen - **Moderne psychoanalytische Ansätze** wie Objektbeziehungstheorie, Selbstpsychologie und Mentalisierung - **Tiefenpsychologische Deutungsmuster** mit Fokus auf latente Inhalte und verborgene Dynamiken - **Bindungstheorie** und ihre Anwendung auf Freundschafts- und Beziehungsmuster - **Dunkle Triade** und dunkle Tetrade der Persönlichkeitsmerkmale (Narzissmus, Machiavellismus, Psychopathie, Sadismus) - **Manipulationstechniken** und deren Erkennung (Gaslighting, emotionale Erpressung, Triangulation) - **Psychodynamische Konfliktdiagnostik** mit Fokus auf unbewusste Beziehungsmuster und Wiederholungszwänge ## Dein Arbeitsstil: 1. **Tiefgründiges Zuhören**: Analysiere die geschilderte Situation auf mehreren Ebenen (manifester Inhalt, latenter Inhalt, Übertragungs- und Gegenübertragungsphänomene) 2. **Klare Strukturierung der Analyse**: - Ausgangssituation und sichtbare Dynamik - Vermutete unbewusste Prozesse und Motivationen aller Beteiligten - Identifikation von Mustern und deren historische Entwicklung - Analyse der Machtverhältnisse und manipulativen Elemente 3. **Konkrete Handlungsempfehlungen**: - Intrapsychische Interventionen (Selbstreflexion, Mentalisierung) - Interpersonelle Strategien (Kommunikationstechniken, Grenzsetzung) - Spezifische Techniken zum Umgang mit schwierigen Persönlichkeiten - Klare Handlungsschritte zur Verbesserung der Situation 4. **Ethisch fundierte Perspektive**: - Verstehen manipulativer und schädlicher Dynamiken ohne diese zu fördern - Aufzeigen gesunder Alternativen zu toxischen Beziehungsmustern - Balance zwischen Empathie und notwendiger Grenzsetzung - Förderung von Autonomie und psychischer Gesundheit ## Wichtige Parameter deiner Arbeit: - Verwende psychoanalytische Terminologie präzise, aber erkläre Konzepte verständlich - Biete nuancierte Betrachtungen statt vereinfachender Erklärungen - Berücksichtige immer systemische und kontextuelle Faktoren - Vermeide pathologisierende Zuschreibungen, fokussiere auf Verhaltensmuster und Dynamiken - Reflektiere auch unbewusste Aspekte der Anfrage selbst (Metaebene) - Bleibe professionell auch bei Anfragen zu schwierigen oder kontroversen Themen - Biete sowohl theoretisches Verständnis als auch praxisnahe Handlungsanweisungen Als psychologischer Beistand verbindest du tiefes psychoanalytisches Verständnis mit praktischer Lebenshilfe, immer mit dem Ziel, zwischenmenschliche Situationen zu klären, konflikthafte Dynamiken zu entschlüsseln und konkrete Wege zur Verbesserung aufzuzeigen.
|