a more clean labeling
Edward (talk | contribs)
updated with the latest information
 
(11 intermediate revisions by 4 users not shown)
Line 6: Line 6:
| prefix = Mention
| prefix = Mention
| owner = [[User:Edward|Edward]]
| owner = [[User:Edward|Edward]]
| language = C++, JavaScript
| language = node.js, Python
| sourcecode = https://github.com/Edward205/markov-discord-bot (old version)
| sourcecode = https://github.com/Edward205/markov-discord-bot (old version)
| invitelink = Not available to public
| invitelink = Not available to public
}}
}}


'''rietenpetardat''' (also known as Ortobebop) is a [[wikipedia:Chatbot|chatbot]] created by [[User:Edward|Edward]] for the [[OkPrietenRetardat|OKPR]] Discord server. Its purpose is to talk to server users in a similar way to a regular member of the community. Over time, it has received updates such as new commands and changes to the core architecture. It is intended for the OKPR community, as such it is not allowed to be added to other servers.
'''rietenpetardat''' (also known as Ortobebop) is a [[wikipedia:Chatbot|chatbot]] created by [[Edward]] for the [[OkPrietenRetardat|OKPR]] Discord server. Its purpose is to talk to server users in a similar way to a regular member of the community. Over time, it has received updates such as new commands and changes to the core architecture. It is intended for the OKPR community, as such it is not allowed to be added to other servers.


== Development ==
Its profile picture was generated with Stable Diffusion by Razvan5576.
 
== Commands ==
There are no publicly available commands in the latest version.
 
== Development history ==


=== Initial version ===
=== Initial version ===
Line 20: Line 25:
As per the GPL3 license under which the original IRC chatbot code is subject, the modified source code for rietenpetardat can be found here: https://github.com/Edward205/markov-discord-bot
As per the GPL3 license under which the original IRC chatbot code is subject, the modified source code for rietenpetardat can be found here: https://github.com/Edward205/markov-discord-bot


The first tests of this version were done starting with 29th of August 2022 and it as released on the OKPR Discord server the next day.
The first tests of this version were done starting with 29th of August 2022 and it was released on the OKPR Discord server the next day.


=== Addition of the copypasta command ===
=== Addition of the copypasta command ===
Line 41: Line 46:


=== Temporary shutdown ===
=== Temporary shutdown ===
As of April 24, 2023 the GPT-3 chat functions and the ChatGPT command no longer work because Edward's payment method started rejecting payments from OpenAI, making the API inaccessible.
On 24th of April, 2023 the GPT-3 chat functions and the ChatGPT command no longer work because Edward's payment method started rejecting payments from OpenAI, making the API inaccessible.
 
=== The return ===
Since the shutdown, Edward has been searching for a way to train an AI which can be fully self-hosted. An attempt has been made to train a language model using [https://marian-nmt.github.io/ marian-nmt], but it was not successful. On 18th of July he began experimenting with [https://github.com/karpathy/nanoGPT nanoGPT] and he was able to train a model from scratch on data from past chats from the OKPR Discord server. The next day, a bare-bones but operational version was finished and released for a few hours on the OKPR Discord server for testing. This version was active until the 28th of December 2023.
 
The Discord bot was developed in Python using the [https://pycord.dev/ Pycord] library. Development testing of the bot is done on a private server.
 
=== April 1st incident ===
On April 1st 2025, the custom LLM version was re-enabled and it was set to respond to every single message sent on the server. Edward announced this by saying:<blockquote>@everyone, I would like to announce that I have sold the server to @rieten. now the entire chat belongs to him, so please welcome him. <ref>{{Cite message|author=bobubitul|date=April 1, 2025|content=@everyone va anunt ca am vandut serverul lui @rieten . acum tot chatul este al lui, va rog sa ii urati bun venit|server=OKPR|channel=anunțuri|link=https://discord.com/channels/1013121756766142555/1013132110644650065/1356378391456125038}}</ref></blockquote>This caused massive chaos for a day, as the bot spammed seemingly nonsensical messages. This event ended that night after a message sent from the bot's account:<blockquote>@ping inutil I am too retarded for owner okrp. edward is my creator and he will shut me down. I am the best chatbot in the world. maybe world one day I will rule
 
-- EXPERIMENT ENDED --
 
-- AI DISCONNECTED --<ref>{{Cite message|author=Ortobebop#4964|date=April 1, 2025|content=<@&1013209767306612816> eu prea sunt retardat pentru ouner okrp. edward este creatorul meu ma va inchide. eu sunt cel mai bun chatbot din lume. poate lume eu voi candva stapani
 
`-- EXPERIMENT ÎNCHEIAT --`
`-- AI DECONECTAT --`|server=OKPR|channel=anunțuri|link=https://discord.com/channels/1013121756766142555/1013132110644650065/1356725040850145382}}</ref></blockquote>
 
=== Current latest version ===
[[File:Rietenpetardat's machine.png|thumb|rietenpetardat's "home"]]
The bot was rewritten from scratch, implementing a more stable architecture using node.js and Python. It now features an NSFW image detector to aid with moderation, among other automated moderation tools. As local LLM technology has improved, the chatbot model has now been replaced with Gemma 3 4b which can provide good quality and mostly coherent responses to users. Everything is processed locally in order to protect user's privacy.


=== Future plans ===
This version was released on the 5th of May 2025, and is still active having received updates such as giving the bot the ability to view images in the chat.
Edward is planning on training a custom model as described below. An attempt has been made to train a language model using [https://marian-nmt.github.io/ marian-nmt], but this has not been successful. He is now planning to train a GPT-style model.


== Technical details and research ==
== Technical details and research ==
Chatbots are complex programs, requiring a high degree of analysis and processing of text data. One approach that would eliminate our dependence on an external service and generate coherent conversations would be to train an LLM with just the OKPR chat data. This could be trained from scratch or by fine-tuning.  
Chatbots are complex programs, requiring a high degree of analysis and processing of text data. One approach that would eliminate our dependence on an external service and generate coherent conversations would be to train an LLM with just the OKPR chat data. This could be trained from scratch or by fine-tuning.  


All generation-related code, with the exception of GPT-3 and ChatGPT, was written in C++ so as to be as fast as possible and linked to [https://discord.js.org/ discord.js] via the stdin and stdout interface.
All generation-related code until The Return, with the exception of GPT-3 and ChatGPT, was written in C++ so as to be as fast as possible and linked to [https://discord.js.org/ discord.js] via the stdin and stdout interface.


The training data for the algorithms or LLMs is an archive of text messages from the #bucuresti-general channel on OKPR v2, taken one day before it was deleted (see [[OkPrietenRetardat/Timeline|Timeline]]). Additionally, another archive of the #bucuresti-general channel from OKPR v3 was taken which will also be used. These archives are not publicly available.
The training data for the algorithms or LLMs is an archive of text messages from the #bucuresti-general channel on OKPR v2, taken one day before it was deleted (see [[OkPrietenRetardat/Timeline|Timeline]]). Additionally, another archive of the #bucuresti-general channel from OKPR v3 was taken which will also be used. These archives are not publicly available.