vor 11 Stunden11 h Hallo an Alle! ,Ich habe eine kleine Website erstellt, auf der ihr euch Prüfungsfragen generieren lassen könnt, die dann korrigiert werden. Ihr findet sie unter folgender IP: (Entfernt, siehe Antwort von @hellerKopf direkt unter dem Beitrag)Mein Ausbilder hat gesagt, dass KI generierter Inhalt (In die Webseite ist eine DeepSeek API integriert) immer mit Vorsicht zu genießen ist, da diese hallizinuieren kann, und man dann Gefahr läuft bei scheinbarem Lernerfolg, sich eine fachspezifische Fehlhaltung anzutrainieren. Er rät mir dazu, dieses Tool nur unter qualifizierter Fachaufsicht zu nutzen. Dies möchte ich an euch weitergeben.Nichts desto trotz, poste ich hier mal die Hauptteil Snippets, (damit ihr wisst was passiert):Die Aufgabenstellung: with st.sidebar: st.header("Konfiguration") exam_part = st.selectbox("Prüfungsteil", ["AP1 (Kernqualifikation)", "AP2 (Fachqualifikation)"]) skill_level = st.select_slider("Anforderungsniveau", options=["Anfänger", "Fortgeschrittene", "Experten"]) category_options = list(TOPIC_HIERARCHY.keys()) + ["Eigene Eingabe..."] category = st.selectbox("Themenbereich", category_options) if category == "Eigene Eingabe...": final_topic = st.text_input("Spezifisches Thema eingeben:", placeholder="z.B. KI im Unternehmen") else: sub_topic = st.selectbox("Detailthema", TOPIC_HIERARCHY[category]) final_topic = f"{category}: {sub_topic}" if st.button("Aufgabe generieren", use_container_width=True): if not final_topic: st.warning("Bitte geben Sie ein Thema ein.") else: st.session_state.submitted = False with st.spinner("IHK-Szenario wird erstellt..."): gen_prompt = f""" Erstelle eine IHK-Prüfungssituation für {exam_part} zum Thema '{final_topic}'. Niveau: {skill_level}. Anforderungen: 1. 'situation': Fachlich spezifischer Kontext (ca. 150 Wörter). 2. 'tasks': 4 exakte Handlungsschritte. Weise jedem Schritt 'max_points' zu. 3. Achte darauf, dass die 4 Aufgaben kontinuierlich aufeinander aufbauen. WICHTIG: Die Summe aller 'max_points' muss exakt 100 ergeben. JSON: {{ "situation": "...", "tasks": [ {{"label": "1", "question": "...", "solution": "...", "max_points": 25}}, {{"label": "2", "question": "...", "solution": "...", "max_points": 25}}, {{"label": "3", "question": "...", "solution": "...", "max_points": 25}}, {{"label": "4", "question": "...", "solution": "...", "max_points": 25}} ] }} """ data = get_ai_response(gen_prompt) if data: st.session_state.situation = data.get('situation', "") st.session_state.tasks = data.get('tasks', []) st.session_state.current_topic = final_topic st.rerun()Die Korrektur:if st.session_state.situation: st.subheader(f"Thema: {st.session_state.current_topic}") st.info(st.session_state.situation) with st.form("exam_form"): st.write("### Ihre Bearbeitung") for i, t in enumerate(st.session_state.tasks): st.markdown(f"**Handlungsschritt {t['label']} ({t['max_points']} Punkte)**") st.write(t['question']) st.text_area("Antwort:", key=f"ans_{i}", height=184, placeholder="Lösung hier eingeben...") st.divider() submit_btn = st.form_submit_button("Prüfung zur Korrektur einreichen", use_container_width=True) if submit_btn or st.session_state.submitted: st.session_state.submitted = True total_achieved = 0 all_answers_text = "" st.header("Korrekturbogen des Prüfers") for i, t in enumerate(st.session_state.tasks): user_ans = st.session_state.get(f"ans_{i}", "").strip() max_p = t['max_points'] all_answers_text += f"Aufgabe {t['label']}: {user_ans}\n" with st.container(): st.markdown(f"#### Analyse Schritt {t['label']}") if user_ans: with st.spinner(f"Prüfe Schritt {t['label']}..."): eval_prompt = f""" Bewerte die Antwort '{user_ans}' nach IHK-Standard gegen die Lösung '{t['solution']}'. Vergib Punkte von 0 bis maximal {max_p}. JSON: {{ 'punkte': int, 'feedback': 'kurze Begründung mit Tipps' }} """ result = get_ai_response(eval_prompt) if result: p = min(result.get('punkte', 0), max_p) total_achieved += p st.metric(f"Punkte für Schritt {t['label']}", f"{p} / {max_p}") st.success(result.get('feedback', 'Kein Feedback verfügbar.')) else: st.error(f"Schritt {t['label']} nicht bearbeitet (0 / {max_p} Punkte).") with st.expander("Referenz-Musterlösung anzeigen"): st.write(t['solution']) st.divider()Gerne dürft ihr mich auch anschreiben, wenn ihr gute Ideen habt, oder etwas verbessern wollt...
vor 6 Stunden6 h Mit einem Link auf eine Seite unter der IP, die eine chinesische KI nutzen soll und zu China Mobile Communications Corporation gehört, wirst du hier rege zur Diskussion über KI und LLM beitragen können.Einen Aufruf deiner Seite erwarte ich allerdings nicht.Zumindest nicht von den Usern, die ein wenig Sicherheitsempfinden haben. Bearbeitet vor 6 Stunden6 h von hellerKopf
vor 5 Stunden5 h Autor Hallo! Ist der helle Kopf ein Chat-Moderator?Da ich leider noch nicht das Geld dazu hatte eine Domain anzumelden, fehlte mir das SSL/TLS Zertifikat. Man sollte es aber denke ich den Usern selbst überlassen, ob sie dieses Sicherheitsempfinden haben, oder ob sie die IP nicht sehen wollen. Denn wenn hier jeder meine Posts ändern kann, wie ist dann die Integrität der Information gewahrt? Eines der drei Schutzziele der IT-Sicherheit ...
vor 5 Stunden5 h vor 3 Minuten, Jamigeo hat gesagt:Hallo! Ist der helle Kopf ein Chat-Moderator?nein, ich habe lediglich meine Bedenken gegen die IP gemeldet, da der IP Range zu den 'Blacklisted IPs" auf allen meinen Servern gehört.Die Menge der von China Mobile Communications Corporation ausgehenden Angriffe, die ich monitore, gehört zu den Top 5.Für eine einfache Python-Webseite mit Flask oder Django würde ich zuerst PythonAnywhere oder ähnliches nehmen. Der Free-Account erlaubt eine Python-Webapp unter einer PythonAnywhere-Subdomain
vor 4 Stunden4 h Autor vor 1 Minute, hellerKopf hat gesagt:nein, ich habe lediglich meine Bedenken gegen die IP gemeldet, da der IP Range zu den 'Blacklisted IPs" auf allen meinen Servern gehört.Die Menge der von China Mobile Communications Corporation ausgehenden Angriffe, die ich monitore, gehört zu den Top 5.Für eine einfache Python-Webseite mit Flask oder Django würde ich zuerst PythonAnywhere oder ähnliches nehmen. Der Free-Account erlaubt eine Python-Webapp unter einer PythonAnywhere-SubdomainDas Backend läuft über eine AWS EC2 Instanz in einer deutschen Region. Kann denn eine API Einbindung auf eine Website Schaden bei demjenigen verursachen, der auf den Server zugreift, auf dem die Website läuft? Und wie kann, bzw. könnte in einem globalen Zeitalter, es den Architekten des Netzwerkes, nicht möglich sein, eine Firma vom Netz zu nehmen? Ich habe für mich entschieden, dass ich grundsätzlich ersteinmal jedem Grundvertrauen entgegenbringe. Und vor allem auch den Chinesen. Viele Gründe sprechen dafür.
vor 4 Stunden4 h Wie gesagt: '36.128.0.0 - 36.191.255.255' gehört zu den Hauptverdächtigen auf meiner Angriffsliste. IP Location China Xicheng Qu China Mobile Communications CorporationASN AS9808 CHINAMOBILE-CN China Mobile Communications Group Co., Ltd., CN (registered Jan 10, 2000)Und deepseek hat ja einen eigenen Ruf.Wenn du Zugriffauf eine AWS EC2 hast, könntest du auch da deine Webseite betreiben.
vor 4 Stunden4 h Autor vor 2 Minuten, hellerKopf hat gesagt:Wie gesagt: '36.128.0.0 - 36.191.255.255' gehört zu den Hauptverdächtigen auf meiner Angriffsliste. IP Location China Xicheng Qu China Mobile Communications CorporationASN AS9808 CHINAMOBILE-CN China Mobile Communications Group Co., Ltd., CN (registered Jan 10, 2000)Und deepseek hat ja einen eigenen Ruf.Wenn du Zugriffauf eine AWS EC2 hast, könntest du auch da deine Webseite betreiben.Wie gesagt, die Website läuft auf einer AWS EC2 Instanz in Deutschland, und geplant ist auch dort die Domain anzumelden und abzusichern. DeepSeek ist meiner Erfahrung nach gut und verlässlich, und es sind vor Allem die Rufe derer, die um ihre technologische Hoheit fürchten, die zwar Zugang zu anderen Regionen fordern, allerdings keine gewähren wollen.
vor 4 Stunden4 h Ok, leider waren diese Hintergrundinfos im ersten Post nicht zu erkennen.Natürlich wird hier jeder eigenständig entscheiden, ob man etwas aufruft oder nicht.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.