Kumi
75e637546a
Improved the login logic in the bot's initialization process to require a UserID when a Password is provided for login. This update ensures a more secure and fail-proof login procedure by validating the presence of a UserID before attempting to log in, and by handling LoginError more explicitly with a clear error message. This change addresses the need for better error handling and validation during the bot's login phase to avoid silent failures and improve debuggability. - Added LoginError import to handle login-related exceptions more gracefully. - Refined the login process to create the AsyncClient instance with a UserID when password authentication is used, following best practices for client identification. - Introduced explicit error raising for missing UserID configuration, enhancing configuration validation before attempting a login. - Improved clarity and security by clearing the password from the configuration post-login, preventing inadvertent storage or reuse. This update enhances the bot's robustness and configuration validation, ensuring smoother operations and better error handling during the initialization phase.
3.2 KiB
3.2 KiB
Changelog
0.3.14 (2024-05-21)
- Fixed issue in handling of login credentials, added error handling for login failures
0.3.13 (2024-05-20)
- Breaking Change: The
ForceTools
configuration option behavior has changed. Instead of using a separate model for tools, the bot will now try to use the default chat model for tool requests, even if that model is not known to support tools. - Added
ToolModel
to OpenAI configuration to allow specifying a separate model for tool requests - Automatically resize context images to a default maximum of 2000x768 pixels before sending them to the AI model
0.3.12 (2024-05-17)
- Added
ForceVision
to OpenAI configuration to allow third-party models to be used for image recognition - Added some missing properties to
OpenAI
class
0.3.11 (2024-05-17)
- Refactoring of AI provider handling in preparation for multiple AI providers: Introduced a
BaseAI
class that all AI providers must inherit from - Added support for temperature, top_p, frequency_penalty, and presence_penalty in
AllowedUsers
- Introduced ruff as a development dependency for linting and applied some linting fixes
- Fixed
gptbot
command line tool - Changed default chat model to
gpt-4o
- Changed default image generation model to
dall-e-3
- Removed currently unused sections from
config.dist.ini
- Changed provided Pantalaimon config file to not use a key ring by default
- Prevent bot from crashing when an unneeded dependency is missing
0.3.10 (2024-05-16)
- Add support for specifying room IDs in
AllowedUsers
- Minor fixes
0.3.9 (2024-04-23)
- Add Docker support for running the bot in a container
- Add TrackingMore dependency to pyproject.toml
- Replace deprecated
pkg_resources
withimportlib.metadata
- Allow password-based login on first login
0.3.7 / 0.3.8 (2024-04-15)
- Changes to URLs in pyproject.toml
- Migrated build pipeline to Forgejo Actions
0.3.6 (2024-04-11)
- Fix issue where message type detection would fail for some messages (
cece8cfb24
)
0.3.5
- Only set room avatar if it is not already set (
a9c23ee9c4
)
0.3.4 (2024-02-18)
- Optimize chat model and message handling (
10b74187eb
) - Fix parameter passing in chat response calls (
2d564afd97
) - Refine message filtering in bot event processing (
c47f947f80
)
0.3.3 (2024-01-26)
- Implement recursion check in response generation (
e6bc23e564
) - Implement tool emulation for models without tool support (
0acc1456f9
) - Allow selection of chat model by room (
87173ae284
)
0.3.2 (2023-12-14)
- Removed key upload from room event handler
- Fixed output of
python -m gptbot -v
to display currently installed version - Workaround for bug preventing bot from responding when files are uploaded to an encrypted room
Known Issues
- When using Pantalaimon: Bot is unable to download/use files uploaded to unencrypted rooms
0.3.1 (2023-12-07)
- Fixed issue in newroom task causing it to be called over and over again