File size: 3,098 Bytes
0552b81
df02228
0552b81
df02228
 
0552b81
 
df02228
0552b81
ad6f073
 
04a5a41
 
ad6f073
4235103
df02228
4235103
0552b81
 
 
 
df02228
0552b81
 
 
 
df02228
0552b81
 
b0ce7e8
df02228
b0ce7e8
df02228
 
 
b0ce7e8
 
df02228
0552b81
 
4235103
df02228
0552b81
df02228
ad6f073
 
 
 
 
 
 
 
 
0552b81
df02228
 
 
 
 
 
ad6f073
 
 
df02228
 
 
 
ad6f073
 
 
df02228
 
ad6f073
df02228
 
 
ad6f073
df02228
 
 
 
 
4235103
0552b81
 
 
 
 
df02228
 
 
 
0552b81
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
import streamlit as st
from transformers import pipeline

st.title("🚀 Marketing Text Generator")
st.markdown("*Erstelle kreative Marketing-Texte mit KI-Unterstützung*")

@st.cache_resource
def load_gpt2():
    try:
        # Wir verwenden das deutsche GPT-2 Modell für bessere deutsche Texte
        return pipeline('text-generation', 
                       model='dbmdz/german-gpt2',
                       tokenizer="dbmdz/german-gpt2", 
                       device=-1)
    except Exception as e:
        st.error(f"Modell konnte nicht geladen werden: {str(e)}")
        return None

with st.form("marketing_form"):
    product_name = st.text_input(
        "Produktname",
        help="Wie heißt das Produkt, für das Sie einen Text erstellen möchten?"
    )
    
    key_features = st.text_area(
        "Produktmerkmale",
        help="Was macht Ihr Produkt besonders? (Eigenschaften durch Kommas trennen)"
    )
    
    max_length = st.slider(
        "Textlänge",
        min_value=50,
        max_value=150,
        value=100,
        help="Längere Texte brauchen mehr Zeit zur Generierung"
    )
    
    submit = st.form_submit_button("Text generieren")

if submit and product_name and key_features:
    with st.spinner("Lade KI-Modell..."):
        generator = load_gpt2()
    
    if generator:
        # Verbesserter deutscher Prompt
        prompt = f"""Werbetext für ein innovatives Produkt:
        {product_name}

        Besondere Eigenschaften:
        {key_features}

        Überzeugender Werbetext:
        Entdecken Sie {product_name} - """
        
        try:
            with st.spinner("Erstelle Marketing-Text..."):
                result = generator(
                    prompt,
                    max_length=max_length,
                    num_return_sequences=1,
                    temperature=0.8,  # Etwas mehr Kreativität
                    top_p=0.9,       # Mehr Variabilität
                    do_sample=True    # Kreativeres Sampling
                )
                
                generated_text = result[0]['generated_text']
                
                # Text nachbearbeiten um nur den generierten Teil zu zeigen
                final_text = generated_text.split("Überzeugender Werbetext:")[-1].strip()
                
                st.success("Text wurde generiert!")
                st.markdown("### Ihr Marketing-Text:")
                st.markdown(final_text)
                
                st.download_button(
                    "Text speichern",
                    final_text,
                    file_name="marketing_text.txt"
                )
                
        except Exception as e:
            st.error(f"Fehler bei der Textgenerierung: {str(e)}")

elif submit:
    st.warning("Bitte füllen Sie alle Felder aus.")

st.markdown("---")
st.markdown("""
**Hinweise zur Benutzung:**
- Die erste Generierung dauert etwas länger, da das Modell geladen werden muss
- Versuchen Sie verschiedene Beschreibungen für optimale Ergebnisse
- Prüfen und bearbeiten Sie die generierten Texte vor der Verwendung
""")