ägg-fu är en simulerad artificiell intelligens IRC manus för användning med eggdrop med många alternativ och funktioner och hög konfigurering, stöd för flera språk, grammatikkontroll, och nu med temat stöd! Databas stöd är upp kommande.
Introduktion till ägg-fu
Först av allt, vad är ägget-fu? ägg-fu är en eggdrop skript kodad i Tcl utformad för att simulera artificiell intelligens, och engagera en IRC användare i konversationen. Programmet är faktiskt inte artificiellt intelligent, eftersom den inte gör det är egna beslut eller att bilda det egna åsikter, imiterar det helt enkelt sådant beteende genom att lyssna på vad folk säger i en kanal och minnas viktiga punkter och "lära sig" nya saker att säga i detta sätt. När ett ämne som ägg-fu erkänner tas upp eller ett sökord sägs, kommer ägg-fu slumpmässigt välja en Tid-bit av information har det lärt sig om det och reagera på lämpligt sätt, enligt dina egna konfigurationer.
Detta är den viktigaste funktionen av ägg-fu. Om du vill veta och svara. Däremot kan ägg-fu konfigureras som ett medium för att lagra och bara hämta information när du blir ombedd.
ägg-fu baserades på infoegg bot (som bygger på infobot). Info ägg designades så att den skulle lära sig genom att lyssna och bara svara på frågor. Det lär matriser var mycket enkel. Det var dessa som ägg-fu var modellerad efter, och kraftigt förbättras. ägg-fu samtal och reagerar mycket mer flytande och intuitivt än info ägg och kräver ingen maning att svara, inte konfigurerad på det sättet. Att kunna svara på alla textrad som skickas till en kanal (förutsatt att det är ett ämne som ägg-fu vet) gör det tal visas mer verklighetstrogen. Utöver sin egen inlärningsförmåga, alla undervisningsmetoder (funktioner) kodade i ger dig möjlighet att justera ägg-fu svar att ge det en ännu mer realistisk personlighet.
Vad fick mig att skapa ägg-fu var när jag var passivt tweaking koden i infoegg och rätta fel. När jag insåg hur mycket arbete jag var att sätta in det, bestämde jag mig för att göra min egen. Koden var först löst baserad på infoegg kod, men har sedan kodats ut. Men jag fortfarande kreditera infoegg författare till födelsen av ägg-fu.
Jag hoppas att du tycker om att använda ägg-fu lika mycket som jag tycker om kodning det. Jag är alltid öppen för förslag, kritik, och buggrapporter. Ha så kul!
Grundläggande användning
Om du hämtade ägg-fu tänker det var ett fristående program, du har fel; ägg-fu är ett skript för eggdrops IRC-bot. Du måste ha en installerad kopia av eggdrop att kunna köra ägg-fu.
Så här lär
ägg-fu kommer att lyssna på alla kanaler i sin config tills den hör en förklaring som "det här är det." Detta är vad som utlöser ägg-fu att minnas något. Om sökord eller ämne redan existerar, eller är tillräckligt lika för att ett annat ämne, är resten av uttalandet lagras under det ämnet som ett alternativt svar. Så när ägg-fu hör "pizza är bra" och senare hör "pizza är här!" Det vet att pizza är "bra" och "här" Därför, när någon passivt nämner pizza ("mmm Jag gillar pizza") ägg-fu kommer att svara med något liknande "Har du inte säga pizza är här?" Varje gång ägg-fu hör något nytt, eller ny information om ett gammalt ämne, kommer det att lagra den tre gånger dagligen-bitars i sin hjärna för framtida referens. Det finns många funktioner kodade i ägg-fu som gör att du kan lära ut det särskilda metoder och typer av svar, kommer dessa att förklaras i den avancerade sektionen.
Vad ägg-fu INTE lära sig: uttalanden som inte definierar något som faktiskt eller åsikt. Ett exempel är ett uttalande som "det här suger!" eftersom ägg-fu inte vet vad det här "är. ägg-fu kommer inte associera något uttalande med det föregående kontoutdraget därför ägg-fu inte kommer att göra Assosiation när du säger "jag hatar min dator" följt av "Det är för gammal." Men att säga "Min dator är för gammal" kommer att utlösa ägg-fu att lära sig.
Så här svarar
Varje rad som skickas till en kanal ägg-fu är övervakning bearbetas och det kommer att försöka avgöra om ämnet är något man har lärt sig om. Jag gillar att tänka på detta eftersom det är "intresse" i ett ämne. Om det är "intresserad" i ämnet den sista uttalande kommer det att bilda ett svar baserat på vad fakta och åsikter det ackumulerade hittills. Om motivet är alltför vag matcha mer än ett annat ämne i det minne, kommer ägg-fu sedan försöka plocka mer exakt ämne.
Det finns två faktorer som randomisera bildandet av svaret. (1) är antalet tid-bitar som är kända om ämnet i fråga. Om det finns fler än en Tid-bitars känt om "pizza" till exempel, kommer ägg-fu slumpmässigt välja en av dem. (2) är meningsbyggnad. Meningsbyggnad svar är fullt konfigurerbar, vilket kommer att förklaras senare, och är slumpmässigt utvalda från din personliga lista över möjliga strukturer. Ett exempel på en möjlig reaktion på ämnet "Camaro" baserad på standardstrukturer är "Tja, sade någon 68 Camaro är riktigt nice" eller "Tror du att 68 Camaro är riktigt nice?" Som ni kan se, ämnes ägg-fu valde som "68 Camaro" även om det kan också ha hört talas om 71 camaro, och Tid-bitars var "riktigt nice"
En viktig punkt, om du lär det "din hemsida är trevligt" det kommer att svara på "din webbplats", "bla bla din webbplats", "bla din webbplats blah", och bara "hemsida", men INTE "bla webbplats" . Vettigt?
Även i denna version boten kommer generalisera idéer i ett sökord, till exempel om du lär det "meningen med livet är att ifrågasätta meningen med livet" kommer filen "liv är tråkigt" under "meningen med livet". Det är fortfarande under utveckling ... vilket innebär att det inte alltid kommer att vara så vaga, är orsaken till detta eftersom jag har för avsikt att expandera vägen ägg-fu tänker på ett ämne, och även sätta något slags ämne det gäller systemet, så när det lär "en ros är röd" och "en eld-truck är röd" kommer (i teorin) kunna också göra förening som både en ros och en brand-lastbil är röda. Denna metod för att "tänka" är mycket svårt att efterlikna i AI.
Med alla medel skicka några frågor eller kommentarer som du kan ha om ägg-fu s lärande eller svarsmetoder mig, jag är alltid öppen för nya åsikter och idéer.
Du hittar mer information om hur du konfigurerar den på How-to.txt fil i arkivet
Vad är nytt i den här versionen.
- Fast & quot; eggfu (chans) & quot; och & quot; eggfu (ignorelist) & quot; fel.
Kommentarer hittades inte