Releases: kyegomez/swarms
Releases · kyegomez/swarms
1.2.2
1.2.1
1.2.0
1.1.9
1.1.8
1.1.7
1.1.6
1.1.5
1.1.41
Changelog
[Unreleased]
Added
- Added
CodeInterpreterToolclass to adhere to the providedToolabstract base class. This new tool has flexible and reliable error handling and supports both synchronous and asynchronous operations. - Enhanced
GooglePalmclass by making optional parameters for user inputs. This improves customization and flexibility. - Comprehensive unit tests for the
OmniWorkerAgentclass have been added. - Pytest fixtures and parameterization in unit tests to improve code reuse and readability.
- Improved code readability in the
MultiModalVisualAgentToolclass and added comprehensive unit tests. - Enhanced the
WorkerUltraNodeandWorkerUltraNodeInitializerclasses' test coverage by adding more test cases and edge cases. - A GitHub Actions workflow file has been added to automatically run pytest tests upon each
pushevent. This CI pipeline ensures the reliability of the codebase by preventing merging of breaking changes into the main branch.
Fixed
- Improved error handling for the
GooglePalmclass by incorporating exponential backoff retry logic to handle network and API-related issues. - Fixed missing prompt arguments by transforming message objects to the dictionary format in
GooglePalm. - Unexpected Argument Error in
WorkerNodehas been fixed. TheWorkerNodeclass was not expecting aworker_nameargument which was passed to it during the initialization of theHierarchicalSwarmclass. This bug was fixed by either removing theworker_nameargument from theWorkerNodeinitialization in theHierarchicalSwarmclass or by modifying the__init__method of theWorkerNodeclass to accept theworker_nameargument. - Fixed incorrect parameter type checking in
OmniWorkerAgentclass, methods now correctly validate types for required arguments. The methodchatalso now properly checks forapi_key,api_endpoint, andapi_type. - Updated
MultiModalVisualAgentToolclass tests, the_runmethod was not being properly tested, as it was not being invoked with correct arguments. - Fixed
WorkerUltraNodeclass to handle invalid initialization arguments properly. Added appropriate type checking and error handling for better robustness. - Improved error handling in
WorkerUltraNodeInitializerclass. Now, all methods have try-catch blocks to handle unexpected errors gracefully and provide useful error messages.
[1.1.2] - 2023-07-30
Added
- Initial creation of the
GooglePalmclass, a wrapper around the Google's PaLM Chat API. Toolabstract base class for creating tool-like objects with a consistent interface.CodeInterpreterSessionexample usage in both synchronous and asynchronous manners.
Improvements
- Better error messages and exception handling have been added to inform the user about issues more precisely. For example, included checks and corresponding error messages for invalid inputs for API keys, invalid objectives, failed vectorstore initialization, and so on.
- The documentation and descriptions for classes and methods have been improved, providing a clearer understanding of what each class and method does, and what arguments they accept.
- Improved the initialization of resources like
llm_classandtoolsin theWorkerNodeclass, making the code more robust and easy to understand.
1.1.4
Changelog
[Unreleased]
Added
- Added
CodeInterpreterToolclass to adhere to the providedToolabstract base class. This new tool has flexible and reliable error handling and supports both synchronous and asynchronous operations. - Enhanced
GooglePalmclass by making optional parameters for user inputs. This improves customization and flexibility. - Comprehensive unit tests for the
OmniWorkerAgentclass have been added. - Pytest fixtures and parameterization in unit tests to improve code reuse and readability.
- Improved code readability in the
MultiModalVisualAgentToolclass and added comprehensive unit tests. - Enhanced the
WorkerUltraNodeandWorkerUltraNodeInitializerclasses' test coverage by adding more test cases and edge cases. - A GitHub Actions workflow file has been added to automatically run pytest tests upon each
pushevent. This CI pipeline ensures the reliability of the codebase by preventing merging of breaking changes into the main branch.
Fixed
- Improved error handling for the
GooglePalmclass by incorporating exponential backoff retry logic to handle network and API-related issues. - Fixed missing prompt arguments by transforming message objects to the dictionary format in
GooglePalm. - Unexpected Argument Error in
WorkerNodehas been fixed. TheWorkerNodeclass was not expecting aworker_nameargument which was passed to it during the initialization of theHierarchicalSwarmclass. This bug was fixed by either removing theworker_nameargument from theWorkerNodeinitialization in theHierarchicalSwarmclass or by modifying the__init__method of theWorkerNodeclass to accept theworker_nameargument. - Fixed incorrect parameter type checking in
OmniWorkerAgentclass, methods now correctly validate types for required arguments. The methodchatalso now properly checks forapi_key,api_endpoint, andapi_type. - Updated
MultiModalVisualAgentToolclass tests, the_runmethod was not being properly tested, as it was not being invoked with correct arguments. - Fixed
WorkerUltraNodeclass to handle invalid initialization arguments properly. Added appropriate type checking and error handling for better robustness. - Improved error handling in
WorkerUltraNodeInitializerclass. Now, all methods have try-catch blocks to handle unexpected errors gracefully and provide useful error messages.
[1.1.2] - 2023-07-30
Added
- Initial creation of the
GooglePalmclass, a wrapper around the Google's PaLM Chat API. Toolabstract base class for creating tool-like objects with a consistent interface.CodeInterpreterSessionexample usage in both synchronous and asynchronous manners.
Improvements
- Better error messages and exception handling have been added to inform the user about issues more precisely. For example, included checks and corresponding error messages for invalid inputs for API keys, invalid objectives, failed vectorstore initialization, and so on.
- The documentation and descriptions for classes and methods have been improved, providing a clearer understanding of what each class and method does, and what arguments they accept.
- Improved the initialization of resources like
llm_classandtoolsin theWorkerNodeclass, making the code more robust and easy to understand.