Pathos14489 / Pantella

GNU General Public License v3.0
4 stars 1 forks source link

High Priority Bugfix: "Wrong Speaker" will happily spend infinite dollars. #12

Open jonathonbarton opened 7 months ago

jonathonbarton commented 7 months ago

base_llm.py -> base_llm -> clean_sentence -> parse_asterisks_brackets

I slightly modified parse_asterisks_brackets to pass asterisks - because I had the same issue with asterisks, because the LLM was charging me for generations that base_llm.py was throwing in the bin, resulting in conversation loops of

Me: Actual conversation attempt. LLM; *responds with perfectly valid RP Action* Pantella: (Thrown in the bin by Line 162.) Waiting for player response.... Me: ... LLM; *responds with the same perfectly valid RP Action* Pantella: (Thrown in the bin by Line 162.) Waiting for player response.... Me: *waits while you continue to think.* LLM; *responds with a slight variation on a perfectly valid RP Action* Pantella: (Thrown in the bin by Line 162.) Waiting for player response....

Once I tweaked parse_astrersks_brackets to NOT return sentence = '' by commenting that out The llm would sometimes use . then some text then . again.

So I modified parse_asterisk_brackets to catch and sub for .

That resulted in:

2024-04-04 19:57:32 INFO| next_author detected as: . Laura 2024-04-04 19:57:32 INFO| Next author is not a real character: . Laura 2024-04-04 19:57:32 INFO| Retrying... 2024-04-04 19:57:32 ERROR| LLM API Error: Invalid author 2024-04-04 19:57:32 INFO| Retrying without saying error voice line

Over and over and over

Line 347 appears like it increments retries by one BUT Then the IF/ELIF/ELSE comes RIGHT BACK HERE and increments retries by 1 again. It doesn't appear to ever reach any instance of an error

The IDEAL situation is that if you get into a position where there is no valid author like this Catch the 5th retry and Send the conversation for summarization

I lost about 30 minutes of really excellent, amazing conversation for summarization because of an invalid speaker.

And the LLM went through eighteen retries before I shut it off manually with the Launcher...but if I'd stepped away, it could have easily drained my account, $0.00251 cents at a time. 😹