Bot – die besten Beiträge

Python Chatbot-Fehler: Wo liegt hier das Problem?

Ich programmiere jetzt seit mehreren Stunden diesen Chatbot und finde den Fehler nicht, warum er es nicht schafft, auf die Frage: gut die richtige Antwort zu geben.

Hier ist mein Code und wenn ihr den Fehler findet, wäre ich euch sehr dankbar.

main.py:

class NeuroSama:
    def __init__(self):
        self.known_topics = self.load_topics("knowledge_base.txt")
        self.conversation_history = []
        self.load_conversation_log("conversation_log.txt")

    def respond(self, message):
        response = ""

        # Hier wird die Eingabe in Kleinbuchstaben umgewandelt, bevor sie verarbeitet wird
        message = message.lower()

        if self.is_new_topic(message):
            response = "Nein, was ist " + message + "?"
        else:
            response = self.get_response_from_file(message, "generate_response.py")

        self.conversation_history.append({"input": message, "output": response})
        return response

    def is_new_topic(self, topic):
        return topic.lower() not in self.known_topics

    def get_response_from_file(self, topic, filename):
        try:
            response_module = __import__(filename.split('.')[0])
            return response_module.generate_response(topic, self.conversation_history)
        except FileNotFoundError:
            return "Die Datei wurde nicht gefunden."
        except AttributeError:
            return "Die Funktion wurde nicht gefunden."

    def save_conversation(self, filename):
        with open(filename, 'w') as file:
            for convo in self.conversation_history:
                file.write(f"Eingabe: {convo['input']}\n")
                file.write(f"Antwort: {convo['output']}\n")
                file.write("\n")

    def load_topics(self, filename):
        known_topics = set()
        try:
            with open(filename, 'r') as file:
                for line in file:
                    known_topics.add(line.strip().lower())
        except FileNotFoundError:
            print("Datei nicht gefunden. Neue Datei wird erstellt.")
            open(filename, 'w').close()
        return known_topics

    def load_conversation_log(self, filename):
        try:
            with open(filename, 'r') as file:
                for line in file:
                    if line.startswith("Eingabe:"):
                        input_text = line[len("Eingabe:"):].strip()
                        output_text = file.readline()[len("Antwort:"):].strip()
                        self.conversation_history.append({"input": input_text, "output": output_text})
        except FileNotFoundError:
            print("Konversationsprotokoll nicht gefunden.")

# Beispielnutzung
neuro_sama = NeuroSama()

while True:
    user_input = input("Du: ")

    if user_input.lower() == 'exit':
        neuro_sama.save_conversation("conversation_log.txt")
        break

    response = neuro_sama.respond(user_input)
    print("Neuro-Sama:", response)

generate_response.py:

def generate_response(topic, conversation_history):
    if len(conversation_history) > 0:
        last_input = conversation_history[-1]['input'].lower()
        if 'hallo' in last_input:
            return "Hallo zurück!"
        elif any(variant in last_input for variant in ['gut', 'gutes', 'gutem', 'guter']):
            return "Es ist großartig zu hören, dass es dir gut geht!"
        else:
            return "Das ist interessant!"
    else:
        return "Ich bin mir nicht sicher, wie ich darauf reagieren soll."

Hier sind die Antworten, die ich derzeit bekommen habe:

= RESTART: C:\Users\####\Desktop\####\main.py
Du: hallo
Neuro-Sama: Hallo zurück!
Du: Hallo
Neuro-Sama: Hallo zurück!
Du: gut
Neuro-Sama: Nein, was ist gut?
Du: 
= RESTART: C:\Users\####\Desktop\####\main.py
Du: gut
Neuro-Sama: Nein, was ist gut?
Du: Gut
Neuro-Sama: Nein, was ist gut?
Du: 
Bot, Programmiersprache, ChatGPT

Virus auf dem Rechner im Studentenwohnheim?

Guten Tag,

Ich wohne in einer WG in einem Studentenwohnheim und wurde gerade angerufen, dass bei mir ein Virus bzw. ein Bot auf dem Rechner am 19.11 gefunden wurde der anscheinend irgendwie versucht auf die Server meiner Universität zuzugreifen, da diese mit dem Internet aus unserem Wohnheim gekoppelt sind. Sie haben mir gedroht, wenn ich das Problem nicht löse wird mir das Internet abgestellt, da diese Angriffe von meiner IP-Adresse kommen.

Ich habe eigentlich seit dem 20.11 nur Arbeitsrelevante Daten (die von meiner Uni kommen) gedownloadet, allerdings habe ich festgestellt, dass seit 23:00 Uhr am 20.11 eine weiße Datei, die mit zufälligen Buchstaben und Zahlen benannt ist, in meinem Ordner ist, welche ich nicht zuordnen konnte. Diese habe ich umgehend natürlich gelöscht.

Ich habe außerdem Windows Defender durchlaufen, der jedoch nichts gefunden hat und mir wurde in einer Email das Programm Malwarebytes empfohlen, welches ich gerade durchlaufen lassen habe und mir tatsächlich auch 4 oder 5 Dateien gelöscht hat.

Ich weiß jetzt nicht, ob das die Dateien waren oder nicht. Kann mir jemand noch Tipps geben, der Ahnung von der Materie hat, was ich noch tun kann?

In den Emails steht folgendes:

IP-Adresse      Ereignistyp                 Anzahl Zuletzt gesehen

----------------------------------------------------------------------------------

xxx.x.xxx.xxx   Bot                         3      2023-11-19 22:01:39+00:00

 

Beschreibung: Auf dem System scheint eine Bot-Software betrieben zu

             werden, die versucht, einen Command-and-Control (C2)-Server

             zu erreichen. Zu den unterschiedlichen Malwaretypen finden

             Sie im folgenden Dokument mehr Informationen (aktuell nur

             als PDF verfügbar):

und heute:

Hallo,

 

wir haben schon wieder eine Warnung:

 

IP-Adresse      Ereignistyp                 Anzahl Zuletzt gesehen

----------------------------------------------------------------------------------

xxx.x.xxx.xxx   Bot                         4      2023-11-21 21:05:30+00:00

         

Computer, Virus, Netzwerk, IT, Bot, cmd, Hacker, Informatik, IP-Adresse, Malware, Universität, Wohnheim, Cyberangriff

Meistgelesene Beiträge zum Thema Bot