This commit changes the `tool_names` variable from a list to a set in several
places in the codebase. This is done to improve performance and readability
since the `tool_names` variable is used as a set in the code. The affected
files are `custom.py`, `prebuilt.py`, and `loading.py`.
This release brings a series of new features and improvements,
including:
- 💬 Chat and Cache Improvements:
- Refactored cache-related functions and moved them to a new base.py
module
- Simplified the Chat component and added chat history support
- Implemented the ability to send file responses in chat
- Real-time Node validation for improved user experience
- CacheManager was added to share data between tools and display them in
the chat.
- 🌐 Websocket Integration:
- Implemented websocket connection for the chat (WIP)
- 🌙 Dark Mode Enhancements:
- Fixed dark mode for dropdown components
- Improved dark mode styling for the chat interface
- Updated thought icon for dark mode
- 🚀 Other Improvements:
- Migrated chat logic to chat modal
- Implemented unique IDs for flow management
- Sorted sidebar items for better organization
- Removed unused imports and optimized codebase
This release enhances the overall user experience and streamlines chat
and cache functionalities, ensuring a smoother and more efficient
workflow. 🎉
This new feature will ensure that any changes made to a template will be
automatically reflected in all nodes related to that template. This will
save time and effort, as users will no longer need to manually update
each node individually. Additionally, this feature will help to reduce
the risk of errors and inconsistencies across nodes and flows.
To implement this feature, I have created a new function that checks the
last template related to each node and compares it with the current
template version. If there is a difference, the node will be
automatically updated with the latest version of the template.