Releases: josephrocca/OpenCharacters
Releases · josephrocca/OpenCharacters
'infinite' character memory storage and retrieval
- "Infinite" character memory is here - currently disabled by default. Enable it in advanced character settings. Your character will create and store memories based on the message history and try to recall them when appropriate. The system can handle millions of memories. It's far from perfect (e.g. character may not always recall the right memories at the right moment), will need more tweaking - please test it out and give feedback!
- Character responses are now streamed (rather than having to wait for the full response to generate before seeing the message)
- Added
gpt-4
in the model selector - Added a Custom Code Helper starter character to help you make your own OpenCharacters plugins
- New format for initial messages: https://github.com/josephrocca/OpenCharacters/blob/main/docs/initial-messages.md
- You can now import
.jsonl
thread/conversation files from TavernAI - Wrote a guide to serve it locally: https://github.com/josephrocca/OpenCharacters/blob/main/docs/local-setup.md This is useful if you want to specifically decide when you receive updates, instead of getting updates automatically whenever I push code changes.
/user <instruction>
to get GPT to generate a message for you based on an instruction - e.g. if you're too lazy to write your response and just want to see what happens. E.g. you could write/user take an action, written in first person, and include something about a flower
- Edit the current summary by typing
/sum
- Implemented spend tracking. It records data binned hourly, so we'll eventually be able to have some nice charts, but for now it's just aggregated and displayed as a single per-thread value
- Text-to-speech plugin (rudimentary): https://github.com/josephrocca/OpenCharacters/blob/main/plugins/README.md
- New, advanced instruction & reminder message format for pros: https://github.com/josephrocca/OpenCharacters/blob/main/docs/instruction-and-reminder.md
- Doc for explanation on how to run Python code: https://github.com/josephrocca/OpenCharacters/blob/main/docs/running-python-code.md
- There is now a CORS proxy server, so requests made by e.g. the Fire Alarm Bot, Python Coder, and other bots like that will work for any URL on the internet
- You can now 'favorite' chat threads and they'll stay at the top of the thread list
- You can add your own custom memories with
/mem
- this can be treated kinda like a "lore book". Memories are triggered based on relevant keywords and phrases, so make sure to use good "trigger keyphrases" within your memories. I'll soon add the ability to explicitly define extra triggers that sit "outside" of the actual memory itself. - You can change your name and avatar picture for a specific thread with
/name
and/avatar
- so you can take on different roles as the user in each thread rather than having one "global" name/role that you need to keep switching when you switch conversations - Type your response in the input box like normal, and then at the end, on its own line, you can add
/ai <instruction>
to give the AI an instruction on how it should respond
self-improving characters 😳
- Characters can now edit themselves! So e.g. their personality can change over time. See custom code docs for details: https://github.com/josephrocca/OpenCharacters/blob/main/docs/custom-code.md
- Custom code can access the GPT completion API, so you can use custom code to e.g. intelligently edit messages based on certain rules (e.g. to guide character behavior)
- A character's custom code can display a floating window so you can e.g. display a video avatar that changes depending on the character's mood/emotion (which you can determine using the above-mentioned GPT completion API)
- Can now edit settings other than
temperature
(likestopSequences
,presencePenalty
, etc.) via custom code
reminder messages, auto-summarization, and a bunch of other stuff
- added "reminder message" in character creator - basically completely stops
gpt-3.5-turbo
from breaking character ("as an ai language model...", or forgetting important context) in my initial tests! this could be implemented pretty easily with a custom code snippet, but it definitely seems useful enough to be a built in feature - old messages are now summarized to give the AI a longer memory (slows responses a bit - can be disabled in character advanced options)
/sys <message>
command for creating system messages- custom code can now create system messages
/ai
command for prompting another ai message/ai <message>
command for speaking as the ai- search threads
- added "starter characters" section
- initial system set up for seeing "behind the scenes" (logs/etc.) - click the "summarizing (N)" to see summaries. more/better logs to come later (open an issue if there's some particular data that you want to see)
- fixed this bug
- some minor ergonomics/cosmetic fixes
v0.0.2
- now supports custom JS code in advanced character options for e.g. giving character access to internet, or to voice APIs like ElevenLabs
- fine-grained import and export character/thread data with ability to import without deleting existing data
- edit
temperature
in advanced character options - allow AI to speak first w/ initial messages
- fixed a bunch of bugs
v0.0.1
Update index.html