Я хочу создать чат-бота, но когда он должен печатать только один случайный ответ, он печатает 4-6 случайных ответов.
Я использую модуль json
.
Вот мой код:
import json
import random
no = ["Good bye", "ciao", "Cya", "cya", "bye", "Bye"]
rnd = ["ah", "Hmm", "...", "Interestant"]
with open("intents.json") as file:
data = json.load(file)
Input = print("Hello")
while Input not in no:
Input = Input.lower()
if Input.endswith("." or "!" or "?"):
Input.replace(".", "")
Input.replace("!", "")
Input.replace("?", "")
for key, value in data.items():
eingabe = value["patterns"]
if Input in eingabe:
antwort_json = value["responses"]
print(antwort_json)
if Input not in eingabe:
try:
for key, value in data.items():
eingabe = value["responses"]
if Input in eingabe:
antwort_json = value["patterns"]
print(antwort_json)
else:
print(random.choice(rnd))
except:
print(random.choice(zufall))
print(random.choice(nein))
print("---------")
Вот образец intents.json
:
{"intents": [
{"tag": "greeting",
"patterns": ["Hi", "How are you", "Is there someone?", "Hello", "Good Day", "What goes on?"],
"responses": ["Hello!", "Nice to see you!", "Hello, how can I help?"],
"context_set": ""
},
{"tag": "goodbye",
"patterns": ["cya", "See you", "Goodbye"],
"responses": ["Goddbye :(", "We talk", "Bye!"],
"context_set": ""
},
{"tag": "age",
"patterns": ["how old", "how old are you", "old"],
"responses": ["I am 11!", "11 years old!"],
"context_set": ""
}
]}
Я обновил намерения. json и чат-бота, но я не работаю! :( Как это сделать правильно?