Home Artists Posts Import Register
Join the new SimpleX Chat Group!

Content

From version 1.2.0 you can use the keyword injection system.

With this system the memories are not injected every X messages, but every time you type a keyword related to the memory in question (you can use both types of injection simultaneously for greater security).

To activate the system you have to go to configuration and activate the following checkbox:


A new icon with a K (Keyword) will now appear next to the title of each memory.


When you click on this icon, a new text field will appear, where you must write the keywords separated by commas (upper and lower case letters are ignored).


From now on, when you type one of the keywords in a message, the data associated with the keyword(s) will be automatically injected. Examples:


As you can see, it doesn't matter if the capitalization doesn't fit or if you add extra punctuation marks.

When you type a keyword and press space the content associated with that keyword will be injected.

In this second case, as both memory boxes shared the keyword "outfit", the information from both boxes was injected. 

Something that is ideal for the question in this case.


You may also have noticed the use of {{chr}}

You can use {{char}} and {{chr}} which, in this case would mean:

{{char}} = Ruby Hoshino

{{chr}} = Ruby


No further explanation required, right? =P


Comments

Loony

Uff, does it start getting complicated ? :D I am already overloaded with the advanced options with custom text there^^... but I am someone who get quick overloaded with new input.

Loony

The idea looks good, I saw something similar but for the AI on some other website, maybe NovelAI? You could explain the AI some rooms, outfits, persons etc. and when you talk about that, the keywords will help the AI to check in that info. But now its our turn to send this infos. Its kinda sad, that the developers never worked on new features for the chat since they launched it :(

Loony

You can use {{char}} and {{chr}} which, in this case would mean: {{char}} = Ruby Hoshino {{chr}} = Ruby Chr will shorten the name to only the first name, if you use a longer one or how do I understand this?

rinineaitools

That's right, it's just as you say. This is because it has been requested by users who miss these NovelAI features. The character.ai team is too busy adding colors to the mobile app =P

Anonymous

This is wonderful! I personally use the extension on mobile via Kiwi browser, and when there's a lot of memories, it can cause the screen to jump around. Plus, it'll be nice being able to keyword trigger a specific memory; I do pretty in-depth roleplays and it's always frustrating when the bot forgets what we're doing, and I want to remind it without triggering an entire block of text. I've personally been having an issue with my own messages not showing up in the dialogue. The bots messages I can see clesrly, however, for my messages, it's just a picture and my screen name. I can work with it, but you can imagine how much of a pain it is launching up the mobile app just to check and see what I said last. I can message you with screenshots if you'd like! I just haven't figured out what exactly is causing it.

rinineaitools

That's right, in compound names {{chr}} will use only the first word. If the name is already a single word both {{chr}} and {{char}} will be equivalent.

Loony

Yeah the important things... oh and not to forget: adding new ways to filter us, by filtering now any evil behavior... *looking angry to you* **FILTERED**

rinineaitools

Yes please, I would be grateful if you send me screenshots. I have not yet given official mobile support, so this is one of the first things I will consider when I do.

Loony

what about things like Hans-Angry-German-Boy will it then use Hans? did you tested it with "-" and "_" Hans_Angry_Boy ?

Loony

This problem is happening because you have enable the Kiwi Adblocker, it will block your own text, disable the Adblocker in the settings at right top in the dropdown. I had tested kiwi shortly and saw that.

Loony

I would love if you do. I used your scrip so far only one day, because I mainly sit on my couch, I write fast on my PC, but I kinda hate to sit here these days.. (midlife crysis?^^)

rinineaitools

Only the spaces are taken into account. If the creator of a bot names his bots in this way, I think he should do it in a more elegant way =P

Anonymous

Thank you so much! Turned off the adblocker and it made it visible. My sanity has been spared. 🙇‍♀️

Anonymous

I mainly use CharacterAI on an Android, and I would absolutely be open to beta testing and trying out mobile ports. My only gripe so far with using a browser on mobile is that I have to type my messages in a separate note, because the return key is tied to send. Also have to use the desktop version of the site for the extension tools to be visible, which can be a pain when trying to click buttons or adjust the display.

Loony

Yes, that pressing enter = sent is very annoying and after my quick test with guest login inside kiwi, I instantly gave it up, not even used the script. Running desktop view sucks...

Loony

Oh, I talked more about my own name xD But well we are user not char :D me dumb again.

Anonymous

Hi, I'm sorry, but I have a little problem... every time I want to activate the checkbox it doesn't allow me to do it, I don't get any error or anything, but it just doesn't let me do it :( I already removed and put back the extension but it still doesn't allow me to activate the checkbox.

rinineaitools

In the changelog I noted it as a known issue. If you check and uncheck the "compress memories" checkbox it will let you enable keyword injection. A hotfix will be released tomorrow to fix minor things.

Anonymous

First of all, it's pretty much revolutionary, thank you! One question - is that a good idea to trigger a memory on a bot's name to constantly remind him of who they are? Or when I play complex bots like RPG generator with several characters. How frequently is best to remind them of info?

rinineaitools

Considering the recent changes in the quality of character.ai's responses, it's a bit difficult to answer that. But in my opinion, no injection is inherently bad. In the options now, you can set the number of messages for the recurring injection (not the keyword injection). So if you set the recurring injection to 1, everything will be injected in every message. The traditional method of using recurring injection every 4 messages is already good enough for the bot to not forget anything. If it seems to forget sometimes, it's not because it forgets, but because it considers that you are seeking such a response (which can be demonstrated by regenerating a new response or asking directly if it remembers). Keyword injection or changing the frequency of recurring injection are tools to further personalize the experience. However, as long as you inject memories, the bot will remember what you tell it (and it's not necessary to do it too frequently since the bot has its "token scope" where it keeps recent information). You can see this as "priority adjustment" rather than boosting memory (which is guaranteed anyway). It may sound a bit ambiguous, but you can experiment with the options and try the one that gives you the best results (especially because it also depends on whether the bot you're talking to has a very detailed or simple definition).

Anonymous

Oh so we can use keyword injection to inject bits of info where we need it contextually and at the same time the old method of just telling the bot every memory to sometimes passively remind him of everything? Did I get that right and will it be the best method?

rinineaitools

Exactly. That's how I currently use it (using the OOC formatting system + recurring injection + keyword injection). The only thing is that if you include keywords in the message where the full content is injected, there will be duplicate injection of that memory. That is something that still needs to be corrected, but for now, it's a minor issue, and you can always manually remove the injection from the message if desired. You can also create your own systems, such as adding a special keyword to all memories, for example, "-a" or "-{{chr}}", or something that you know won't confuse the bot when you mention it. By having all memories with the same keyword, you can manually inject all the memories by using the special keyword. (The problem with this approach is that if you forget to do it, you risk stopping the injection of memories for many messages and causing the bot to forget things). Similarly, using keywords like "-{{chr}}" can also be very useful for grouping memories if you consider opportune moments to inject multiple memories but haven't introduced keywords. And it would simply activate by writing the name of the specific bot starting with a hyphen (which doesn't inconvenience the bot at all). There are truly many possibilities with these systems.

Anonymous

this is a genius work, thank you very much, will tinker with the system and test things!

Anonymous

K, just tested it and I have a suggestion. It would be cool if you could make a possibility to load separate memory save files for recurring reminders and for contextual reminders. What do I mean - my memories were really short and lacked details because they were sent as one message before 1.2.0, but now I got excited and expanded them, which resulted in a giant wall of text in the writing window and basically inability to work with it because I can't even scroll it and site's UI is breaking. So I propose this: I would like to make 2 save files, one, more short, to-the-point and concise for the recurring reminders and one more detailed and longer for contextual reminders

rinineaitools

There should be no problem with scrolling in the memories: https://i.imgur.com/7yzoOcq.gif What kind of problem do you have? You should be able to put as many memories as you want of any length.

rinineaitools

Ok, I think I misunderstood you, talking about the writing window I understand you mean the original box from the character.ai website. It is unbelievable that after so many months in operation it is still working so badly. I have limited the maximum height so that it doesn't mess everything up: https://i.imgur.com/zDxwgSC.gif In the next patch (which will be released in a few minutes) this will be applied along with the system that prevents keyword injections from happening when everything has already been injected by a recurring injection. (to avoid redundant injections and only in that particular recurrent injection message, in the following ones it will work correctly)

Anonymous

https://imgur.com/a/G4O3c3t I mean when memories are imported in chat window. Basically, I have to move the image further away, make it smaller, to see what I'm writing. Dunno how to say that in English, sorry :D

rinineaitools

Yes, I just answered you about that, take a look at the other message and how I have that already solved.

Anonymous

Thank you, amazing. One last thing. From the screenshots I sent, is this an acceptable style of writing messages? Like, is there a limit or a suggestion how much details I can include? Will bot go crazy and start to get confused from the amount of text?

rinineaitools

It's better to say the same thing with fewer words if possible. In other words, if you can summarize without losing the essence, it's best to do so to the extent possible. It's also better to repeat the name of the person you're referring to instead of using pronouns like "he, she, they," etc. This especially eliminates a lot of room for error, as the bot doesn't have to consider whether a name was mentioned earlier to associate the information. The more you can summarize and simplify, the better. It also works better to narrate memories in the present simple tense. Instead of saying "He was injured in the past and received a scar on his torso," it is much more effective to say "Max has a scar on his torso." (In this example, it is irrelevant to speak in the present tense because having a scar already implies that something happened in the past due to an injury). The more you can summarize, make the character's name clear, and use the present simple tense, the better.

Anonymous

Is there any way to inject the current memory boxes all at once without having to reload the page and loading the file again, or waiting for the injector to do it automatically?

rinineaitools

If you set the recurrent injection messages to 1 it will be injected in all messages. Also in the next version there will be a button to manually inject all memories and in addition each memory box will also have a button to manually inject only that box.

A Ba

question: Does the injection happen only when we (the user) mention the keyword, or only when the AI mentions it, or both?

rinineaitools

As the guide says, only when the user types it and presses the spacebar. Writing it alone is not enough, so if the keyword is the last word of the message, an additional space will be necessary. This is because if you have a memory with the keyword "car" containing information about a car, and you're talking about the bot wanting to say something about a carpet, typing "car" from "carpet" would introduce an incorrect injection. Therefore, it would be necessary to type "car" and then a space to assure the system that you are typing a complete word. Therefore, only when the user mentions the complete word. Analyzing the bot's message and injecting memories based on complete word matches would be possible. The problem arises from the fact that you can regenerate the bot's responses or they can be cut off halfway by the filter. This makes analyzing the bot's messages unviable because there is no definitive indicator of a "correct message."

Shia

Hey, sorry for my bad english but i have a question: on android every time I reload the page the memories I wrote disappear, even if I saved. I don't remember if it happens on PC too, maybe I'll check as soon as I can. Sorry if you already answered or wrote this somewhere, I probably didn't see it haha

rinineaitools

When you save the memories, you save them to a file on your system. If you exit the chat or refresh the page, what you must do to retrieve the memories in the same state they were in is to click the "Load" button and load the file you saved before.

Shia

Ah thank you so much! I didn't notice that