v0.9.1
Release Notes for Version 0.9.1
New Features
- Dynamic Engine Switching: Introduced
DynamicEngine
context manager which allows dynamically switching neurosymbolic engine models. This improves flexibility in using different models within the same context. - Engine Mapping for Neurosymbolic Engines: Added a new
ENGINE_MAPPING
that maps supported model names to their respective engine classes for easier integration and management. - Split Model Support: The models for
Anthropic
,DeepSeek
, andOpenAI
have been delineated into specific categories (Chat, Reasoning, Completion, and Embedding models) for better clarity and management.
Improvements
- Config Management Enhancement: Replaced multiple instances of
self.config = SYMAI_CONFIG
withself.config = deepcopy(SYMAI_CONFIG)
to ensure configurations are isolated for each engine instance. - Enhanced Logging and Error Handling: Improved logging details including stack traces for better debugging and error tracking within the
_process_query
and_process_query_single
functions. - Functionality Testing and Validation: Added several new test cases, especially focusing on testing dynamic engine switching and fallback query executions to ensure robustness.
Bug Fixes
- Token Computation Correction: Fixed the incorrect computation of
artifacts
in theGPTXChatEngine
andGPTXReasoningEngine
classes. - Payload Adjustments: Adjustments on payload preparation for the
GPTXChatEngine
especially forchatgpt-4o-latest
, ensuring certain fields are correctly omitted. - Argument Preparation Bug Fixes: Fixed issues in
_prepare_argument
to properly handle raw input and enhance preprocessing capabilities. - Self Prompt Improvements: Improved self-prompting logic in
Symbol
to ensure correct responses and validation. - Signature and Type Annotations: Updates on the usage of
inspect.Signature
methods for resolving return annotations, ensuring compatibility with Python's typing system.
Others
- Refactoring & Cleanup: Conducted significant code refactoring and cleanup, including reorganizing the test suite and renaming test files for better maintainability and clarity.
- Warning & Constraint Handling: Adjusted warnings and constraint handling to improve message clarity for developers working with the library.
Full Changelog: v0.9.0...v0.9.1