Linting/Formatting of parsers #103
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request refactors and improves the parser framework for handling model responses, focusing on code clarity, type safety, and robustness. It introduces comprehensive docstrings, modernizes type annotations, improves error handling, and reorganizes imports and registry definitions for maintainability. The changes affect the base parser classes, the parser factory, and the module initialization.
Parser base class improvements:
BaseThinkingParser,BaseToolParser, andBaseMessageConverterfor better readability and maintainability.Nonefor invalid chunks. [1] [2]Parser registry and factory refactor:
factory.pyto use modern type annotations,TypedDict, and explicit parser constructor types, improving code clarity and extensibility.__init__.pyandfactory.pyfor consistency and to ensure all relevant parser classes and converters are properly exposed and registered. [1] [2]Module initialization and exports:
__init__.pyto clean up imports and the__all__list, ensuring all relevant parser classes and converters are correctly exported and available for use.These changes collectively make the parser framework more robust, maintainable, and easier to extend for future model integrations.