Releases: SerialKicked/Lethe-AI-Sharp
Releases · SerialKicked/Lethe-AI-Sharp
0.7.5 Release
This releases extends the library's abilities while consolidating how it's meant to be used. It improves group mode functionalities, and add many optional filters to clean up the bot's output.
General Improvements
- Added option to remove starting slop like "Oh, X..." and "short narration" at the start of output
- Instruct Format: Added
BotStartOverrideandBotEndOverrideto make instruct format compatible with GPT-OSS - Instruct Format: Added added
NoInstructInStopStringflag to not put Bot and User Start/End tags in the stop strings - Refactored
TextPromptBuilderto useSingleMessageobjects for structured message handling. - Added
ContainsPersonamethod toChatSessionfor persona checks. - More configurable handling of away message function (can be forced despite timing through parameter).
- Improved "roleplay" output filtering to remove slop content.
- Added option in brain to freeze mood in a given state (allows to still have mood inserts, but they won't change over time)
- Added
ImageEmbedSizesetting (defaults to 768). This is used for token usage tracking for VLM. - Added
SessionDetailedSummarysetting to toggle between concise and detailed session summaries. - Added
ParenthesizeToItalicoption to StringFix, converting (text) to text in output. - Updated documentation
Group Chat Mode
- Better support for group chat personas and role alternation.
- Added
GroupChatPastSessionModesetting to control secondary personas' access to main persona's chat history - Introduced
GroupInstructFormatAdaptersetting to enforce user/bot role alternation for group conversations independently of who sent the message. - Group persona now import
ExampleDialogsfields from current bot, and Scenario from primary bot. - Secondary character have only access to messages from sessions they were a part of. This should help with continuity.
- New method to allow CoT models to work with group chat and "Add name to prompt" setting in general. Who is supposed to talk is inserted as a prefill in the CoT instead.
- Added
CommitGroupSessionToSecondaryPersonaHistorysetting to allow group chat sessions to be saved to secondary personas' histories.
Fixes
- Fixed issue with CoT prefill in chat completion mode.
- Fixed issue in forced alternate role mode for group chat.
- Fixed
Brainmemory retrieval to not include memories withMemoryInsertionset to None.
Full Changelog: 0.7.4...0.7.5
0.7.4 Release
Main Changes
- Prompt builder for chat completion handles image insert at any level of the chatlog.
- Prompt builder can handle SingleMessages directly
- Better handling of manual cancel operation in OpenAI client.
- Enhanced system message handling in Brain to avoid redundant entries.
- Framework allowing group chat functionalities (one user and multiple AI characters)
- New "group chat" aware macros
- Upgraded to .NET 10
- Updated OpenAI-DotNet dependency to version 8.8.7, fixing several issues
- Updated HNSW.NET to latest version
- Fixed: Keyword triggers in Brain's memory list would not activate
- Fixed: Rerolling messages when the last one contains an image would break logic
- Fixed: Stickied brain memories not inserted in prompt.
- Fixed: Added and DisableRAG properties not taken into account for keyword check.
Full Changelog: 0.7.2...0.7.4
0.7.2
Main Changes
- Much better contextual memory retrieval
- Better, more consistent, and more configurable formatting of memory inserts
- More code documentation
- The
Addedproperty of a MemoryUnit, if set in the future, will prevent that memory from being triggered until the date is reached - Added new memory insertion strategy: insertion after a AFK period from the user
- Added setting to disable all memory/time/mood inserts when interacting with past chat sessions
- Added
Protectedfield to MemoryUnit to prevent pruning or internal editing - Added functions to the prompt builder to deal with SingleMessage class directly
- Added multiple ways to search and sort memory units
- Added new macro {{memory:title}} that will insert a memoryunit's content directly
- Fixed: Chatlog wouldn't adapt correctly when the user change persona mid chat
- Fixed: GetTokenCount needed the client to be initialized, now it'll fall back to internal token counter
- Fixed: Memory in the brain layer wouldn't be triggered by keywords
- Fixed: Multiple issues with how dates and timespan are translated to strings
Full Changelog: 0.7...0.7.2
0.7 Release
Main Changes
- Added LlamaSharp internal backend, turning this middleware library into a full-stack library.
- Added GbnfConverter tools, used to convert classes into proper GBNF grammar
Full Changelog: 0.6...0.7
0.6 Release
Main Improvements:
- Feature parity between OpenAI-API and KoboldAPI backends (VLM and Structured output support for both)
- Memory system and RAG unified under the
Brainclass, deprecating RAGEngine static class
Full Changelog: 0.5.2...0.6
0.5.2 Release
Main Changes
- OpenAI API backend supports structured output now, making it compatible with most of the advanced features.
- Standardized how to get structured output. Users should use the backend-agnostic IPromptBuilder.SetStructuredOutput() function.
- Added setting to make Task/Brain MemoryUnit insertions much less likely to produce hallucinations in the long run
- Updated some documentation
Full Changelog: 0.5.1...0.5.2
0.5.1 Release
Improved web search functionalities, better filtered page extraction, updated tasks and actions accordingly.
Full Changelog: 0.5...0.5.1
0.5 Release
First full public release.