Create app.py
Browse files
app.py
ADDED
@@ -0,0 +1,58 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import gradio as gr
|
2 |
+
from transformers import pipeline
|
3 |
+
|
4 |
+
# Initialize the model and tokenizer
|
5 |
+
model_name = "gpt-3.5-turbo" # Using GPT-3.5 for better performance
|
6 |
+
chatbot = pipeline("text-generation", model=model_name)
|
7 |
+
|
8 |
+
# Knowledge base for the chatbot
|
9 |
+
knowledge_base = """
|
10 |
+
Zusammenfassung des Workshops über das weibliche Hormonsystem und Zyklen
|
11 |
+
|
12 |
+
Überblick
|
13 |
+
Das weibliche Hormonsystem ist äußerst empfindlich und zyklisch. Es unterscheidet sich stark vom männlichen System, welches oft in Studien bevorzugt wird. Hormongesundheit ist ein integraler Bestandteil des allgemeinen Wohlbefindens und sollte speziell bei Frauen beachtet werden.
|
14 |
+
|
15 |
+
Wichtige Hormone
|
16 |
+
FSH (Follikelstimulierendes Hormon): Stimuliert die Follikel in den Eierstöcken, die sich zu Eizellen entwickeln.
|
17 |
+
Östrogen: Essenziell für eine gesunde Frau, beeinflusst das Aussehen und Wohlbefinden.
|
18 |
+
LH (Luteinisierendes Hormon): Wichtig für den Eisprung und die Bildung des Gelbkörpers.
|
19 |
+
Progesteron: Unterstützt den Körper nach dem Eisprung, wirkt beruhigend und ausgleichend.
|
20 |
+
|
21 |
+
Zyklusphasen
|
22 |
+
Menstruationsphase (Winter): Ruhephase, ideale Zeit für Reflexion und Zielsetzung. Ernährung: Eisenreiches Gemüse und Obst, vorzugsweise warm.
|
23 |
+
Follikelphase (Frühling): Planungsphase, ideal für das Ausarbeiten von Projekten. Ernährung: Gemüse, Obst, Makronährstoffe wie Fette, Proteine, Omega-3-Fettsäuren, und Vitamin D.
|
24 |
+
Ovulationsphase (Sommer): Zeit für soziale Aktivitäten und geringeren Appetit. Ernährung: Regelmäßige, leichte Mahlzeiten.
|
25 |
+
Lutealphase (Herbst): Abschlussphase, erhöhtes Kalorienbedürfnis (+280 Kalorien/Tag). Ernährung: Essig, ballaststoffreiche Lebensmittel wie Quinoa.
|
26 |
+
|
27 |
+
Weitere wichtige Aspekte
|
28 |
+
Sekrete: Essenziell für die Unterstützung der Spermien und zum Schutz vor Infektionen.
|
29 |
+
Ayurveda: Betont die zyklische Natur des weiblichen Körpers und teilt den Zyklus in vier Jahreszeiten ein.
|
30 |
+
Cortisol: Stresshormon, wichtig für die Stressbewältigung, beeinflusst den Blutzuckerspiegel und die hormonelle Balance.
|
31 |
+
|
32 |
+
Empfehlungen
|
33 |
+
Energie-Management: Fokussiere dich auf die Verwaltung deiner Energie anstatt deiner Zeit.
|
34 |
+
Ernährungstipps: Apfelessig im Salat und ballaststoffreiche Nahrungsmittel.
|
35 |
+
Journaling: Reflektiere über deine Ziele und plane für den nächsten Zyklus.
|
36 |
+
Diese Zusammenfassung gibt einen Überblick über die Sensibilität und die Komplexität des weiblichen Hormonsystems und betont die Bedeutung von Ernährung und Energie-Management im Einklang mit den natürlichen Zyklen des Körpers.
|
37 |
+
"""
|
38 |
+
|
39 |
+
def generate_response(user_input):
|
40 |
+
prompt = f"User: {user_input}\nBot:"
|
41 |
+
response = chatbot(prompt, max_length=500, num_return_sequences=1)
|
42 |
+
return response[0]['generated_text'].split('Bot:')[-1].strip()
|
43 |
+
|
44 |
+
# Gradio interface
|
45 |
+
def chat_interface(user_input, chat_history=[]):
|
46 |
+
chat_history.append(("User", user_input))
|
47 |
+
bot_response = generate_response(user_input)
|
48 |
+
chat_history.append(("Bot", bot_response))
|
49 |
+
return "", chat_history
|
50 |
+
|
51 |
+
with gr.Blocks() as demo:
|
52 |
+
gr.Markdown("# CycleO - Female Zyklus and Hormone Health Assistant")
|
53 |
+
gr.Markdown("Stellen Sie Fragen zu Ihrem Zyklus und Hormonhaushalt und erhalten Sie Antworten basierend auf unserem Wissen über das weibliche Hormonsystem.")
|
54 |
+
chatbot_interface = gr.Chatbot()
|
55 |
+
user_input = gr.Textbox(label="Frage eingeben", placeholder="Schreibe eine Frage...")
|
56 |
+
user_input.submit(chat_interface, inputs=[user_input, chatbot_interface], outputs=[user_input, chatbot_interface])
|
57 |
+
|
58 |
+
demo.launch()
|