Select Role: This feature is not very useful and takes up space on the interface.
Switching roles here only changes the background image, while the context remains from the previous role, making it quite redundant.
Some users have a large number of roles (20+), which takes up significant space and scrolling wastes time.
Desired solutions: ① Remove this feature; ② Keep it but present it in a collapsed form to maintain a clean interface.
Select Mask: Multiple masks (20+) take up a lot of space on the interface, making it redundant.
Desired solution: Display in a collapsed form, with the currently selected mask shown by default, and click to expand when switching.
Select API: The issues and needs are the same as with the masks, but if the first two are optimized, this may not be necessary.
2. Turn/Word Count Display
I want to embed a turn/floor number increment in each round of replies within the chat bubble, and it would be even better if there was a word count!
Desired position: At the bottom! Either left or right is fine! But it should be placed below! And every AI reply should include it for convenience in sending the AI a message like [Review the content of round X/round X-Y…]
Detailed description: Let the AI count the user’s reply turns + its own reply turns, which is 2 turns (+2).
For example:
AI reply Round 1…
User reply…
AI reply Round 3…
Please, Teacher Fangtang, I really want this feature!!
Is it possible to use the status bar for the round that Bao wants, like the built-in status bar in Omate? I also want the round, haha, but I just want to display it simply, not send it to the model.
To count more accurately, sometimes using prompts yourself can lead to mistakes, like when it should have been a +2 but turns into a +1. Moreover, this round is used more by old users because they’ve been playing for a long time, while new users have no idea… If there’s no channel for communication, it can be quite frustrating.
If it’s just for you to know the number of conversation entries, you can view the entry count in conversation management after establishing a permanent memory index or starting a new conversation. (Rounds are originally +1, entries are +2)
Scrolling controllers and auto-scrolling features have been added to the character, mask, and API selection areas. The rounds are not easy to calculate (there is pagination), and they may not correspond to the sent context (there are injected prompt words), so they are not built-in.
Additionally, I tried the scrolling feature and it feels a bit laggy. Scrolling within a single area (like characters) is smooth, but moving from characters to masks requires clicking on a specific area block… Also, is it really not possible to remove [Character Select]?
Another issue is [Abort Request], it feels more convenient to have it here, so you can interrupt with just one click.
Regarding turn counting, directly saying “count assistant turn, +1 each time” (according to AI) is a professional term in LLM, which can accurately be understood as counting its turns. So far, there have been no issues with counting errors.
As for counting the number of messages, it seems there isn’t a specific term for total message count, or it requires an additional sentence to emphasize it, so I only used turn counting.
Teacher, the parameter ‘rounds’ is already present in the long-term memory retrieval trigger rounds. Can it be displayed in the dialogue interface? Sometimes the memory retrieval doesn’t trigger when it should, and by the time it’s noticed, many rounds of dialogue have passed, making it difficult to remedy. If the rounds are displayed, it might be more convenient to check and identify issues.
When long-term memory is triggered, you should pay attention to two situations: 1. Memory extraction is triggered, but the summarization model does not output according to the format required by the default memory extraction prompt, in which case the inference log will indicate a format error. 2. Memory extraction is triggered, but the summarization model determines there is no new information and outputs a blank JSON array according to the default memory extraction prompt.
If either of the above situations occurs, you need to modify your memory extraction prompts, focusing on: 1. Ensuring the summarization model outputs only a JSON array and maintains the legality of the JSON array format. (For example, symbols within numbers must be full-width, and newlines must be escaped.) 2. Changing the example content for replies when no new information is found, such as replying with [“No information available”] when no new information is found, to facilitate further adjustment of your memory extraction prompts.
Thank you, teacher. I also don’t know where the problem is because the long-term memory extraction is too imperceptible. The first automatic extraction (rounds 1-10 of the conversation) failed silently (without any related error), but the second automatic extraction (rounds 11-20 of the conversation) succeeded. It was only when I opened the long-term memory that I realized the memory from the first 10 rounds wasn’t extracted Can this be achieved by modifying the memory extraction prompt, teacher? Sorry, my brain is a bit confused
Yes, it is only considered a true failure if, by the time of the round, the reasoning log shows “Automatic memory extraction conditions not met, skipping memory extraction.”
Isn’t it necessary to open the reasoning log to see it? qvq Now I just don’t know when I need to open the reasoning log qvq For example, I set it to extract every 10 rounds of conversation, but as we chat, I forget which round we’re on and whether I should extract the memory, so I don’t know if I should open the reasoning log. Opening the reasoning log every round is too troublesome qvq?
There is a convenient way, which is to check the number of index entries in the permanent memory. After rebuilding the index, this number represents the current number of conversation messages. If this number is divisible by the memory extraction rounds you set, it’s time to trigger memory extraction.
Thank you, teacher, but it might still not achieve the real-time/convenient/readable effect qvq because this method also requires going into memory → permanent memory, and repeating this process every time a reply is made is still too cumbersome qvq. I think it would be better if it could be directly displayed in the conversation interface, even if the memory is automatically cleared and recounted each time . Of course, this is just based on my needs, and it might be that I didn’t express myself clearly. Anyway, thank you for explaining so many methods, teacher! Even as mentioned before, allowing the model to output rounds is also possible. Thank you, teacher .
Rebuilding once is enough, as new conversations will automatically be indexed, so it will always show how many conversations are in progress. This way, at least you can predict when memory extraction will be triggered, making troubleshooting easier.