Kommt, wir schreiben einen ChatBot.

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Fetze

Betreff: Kommt, wir schreiben einen ChatBot.

BeitragSa, Apr 15, 2006 18:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Hiho

Mir kam letztens mal wieder die Idee, man könne ja mal versuchen, einen Chatbot zu programmieren, der möglichst intelligent wirkt. Und hey, warum das ganze nicht mal in Form eines Communityprojekts anpacken?

Eine dürftige aber funktionierende Grundlage, d.h. einen Client, dem bisher die KI fehlt, habe ich bereits fertig, das heisst, man muss sich nicht mit IRC-protokollen auskennen, um teilnehmen zu können.

Hier:
www.fetzenet.de/chatbotgrundlage.zip
Nachdem die Verbindung aufgebaut ist, muss man nurnoch "JOIN #channel" angeben und fertig.

Jemand interessiert?
 

E. Urbach

ehemals "Basicprogger"

BeitragSo, Apr 16, 2006 9:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Hätte Interesse als kleines Projekt nebenbei.
Ich schau mir gleich mal den Code an...
The box said, "Requires Windows XP or better", so I installed Ubuntu | Linux is NOT Windows
Flua :: Profiler für BB und BMax :: Partikel-Engine für BMax :: Lyphia-Projekt Quellcode (BMax) :: Automatische Parallelisierung :: Meine Musik
  • Zuletzt bearbeitet von E. Urbach am So, Apr 16, 2006 10:21, insgesamt 2-mal bearbeitet
 

flohrian

BeitragSo, Apr 16, 2006 9:57
Antworten mit Zitat
Benutzer-Profile anzeigen
EDIT: Oh, es ist BlitzMax
Ich scheide somit wieder aus :/

Mfg
Flo
  • Zuletzt bearbeitet von flohrian am Di, Jul 04, 2006 10:33, insgesamt einmal bearbeitet

Fetze

BeitragSo, Apr 16, 2006 11:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Gut. Ich denke, wir sollten ersteinmal klären, wie wir die Problemstellung des intelligent wirkenden Chatbots angehen. Ich habe da schonmal folgenden Ansatz:

Der Chatbot loggt alles, was er hört und versucht zu erkennen, in welcher Situation das gehörte passend ist. Wenn er etwas schreibt, ist das einer der Sätze, die er irgendwann einmal gelernt hat, nämlich der, der am besten passt. Mein Ansatz wäre hier, einen Satz in seine Worte zu zerlegen und diese Worte dem Satz zuzuordnen. Zur Erfassung der Situation am besten noch die 10 vorherigen Sätze ebenfalls zerlegen und die Wörter mit fallender Priorität ebenfalls zuordnen.
Bei der Abwägung eines eigenen Satzes wird das, worauf der Bot antworten soll ebenfalls zerlegt und die Wörter mit den Wörtern jedes Satzes in der Datenbank abgeglichen. Dabei wird ein übereinstimmendes Wort positiv bewertet und höher gewichtet, je seltener es insgesamt ist.

Vorteile, die ich sehe:
+ Grammatik und Co sind egal. Der Bot muss keine eigenen Sätze bilden
+ Es ist vergleichsweise einfach

Es hat aber auch einige Nachteile:
- Der Bot wird von mehreren Diskussionen, die parallel zueinander laufen verwirrt.
- Allgemeine Äußerungen wie "jup" hätten milliarden von Wortassoziationen, da sie ja immer mit dem 10 vorherigen Sätzen assoziiert werden. Bei eienr größeren Datenbank sprengt das den Suchalgorithmus.
- Da er nur wiederholt, kommt es schnell zu "Nein! Doch!"-Diskussionen, wenn die Sätze einen Bezug zu einer Person haben.
- SOllte sich ein Satz auf den Bot beziehen, redet er von sich selbst in der dritten Person. Aktionen (/me) führt er ebenfalls auf sich selbst aus.


...das ganze hat allerdings mehr Nachteile als Vorteile. Und wahrscheinlich wirkt es auch nicht unbedingt sehr intelligent.
Alternativen?
 

m a j o r

BeitragMi, Apr 19, 2006 15:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab schon mal vor langer Zeit so ein Teil geschrieben.
Es hat Fragen geloggt und die Antworten anderer.
Wenn die Frage nun ungefähr gepasst die einer sagt, hat der Bot die Antwort gegeben, per zufall ausgewählt und mit zufälliger verzögerung.
das ganze wurde abgespeichert.
er reagiert daher noch ziemlihc intelligent, man kann noch einen filter auf kurze worte("jop") und so einbauen.
Außerdem hatte er die Funktion,dass er, sobald jemand ein Smiley (-> ^^,Smile, etc) macht, er mit einem zufälligem smiley antwortet, oder auch nicht...

Die diskussionen waren teilweise recht lustig, die leute wussten nicht, dass sie mit einem bot reden...

blubb

Fetze

BeitragMi, Apr 19, 2006 19:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Könntest du den Code für Lernzwecke mit uns teilen? Vielleicht könnte man den auf BlitzMax und IRC portieren - falls er das nicht schon ist - und gegebenenfalls verbessern.

Antwortet er nur auf Fragen? Oder auch auf sonstige Aussprüche?
 

biegl

BeitragDo, Apr 27, 2006 22:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Projekt klingt interessant. Würde euch gerne helfen da ich mit IRC gut Erfahrung habe, aber im Moment ist weng schwierig da ich grad selber das ein oder ander große Projekt mit IRC am laufen habe (siehe BBot und Britannica).
ich werd aber versuchen am laufenden zu beliben mit eurem Projekt Wink!

mfg biegl

Fetze

BeitragSa, Mai 06, 2006 22:51
Antworten mit Zitat
Benutzer-Profile anzeigen
So, habe die Grundlage nochmal neu gecodet. Ist jetzt etwas objektoriantierter und viel sauberer. Zudem imho besser strukturiert. Same link as before:

www.fetzenet.de/chatbotgrundlage.zip

Loggt automatisch alles mit und speichert den log beim Beenden. Joint jetzt auch automatisch, sobald er mit dem Server verbunden ist.

Wild-Storm

BeitragDi, Jul 04, 2006 10:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Compile Error: Identifier 'TTCPStream' not found

ich konnte ihn auch net finden xD


edit: ah braucht bnetex...funtzt jetzt ^^
Visit http://www.next-dimension.org
-------------------------------------------------
Freeware Modelle, Texturen & Sounds:
http://www.blitzforum.de/forum...hp?t=12875

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group