v0.6.0
Pre-release
Pre-release
What’s Changed
- Add support for stopping criteria:
MaxLength,MaxTime, andInterruptablefor more flexible generation control. - Add PSR-3 logging support
- Extend
PretrainedConfigto reduce code repetition across model files and improve maintainability. - Restructure
AutoModelresolution to prioritize generic model selection when no task-specific class is found. - Add support for new model families:
Gemma,Gemma2,Gemma3,Qwen3, andPhi3, with their respective causal language models. - Add support for
eosandlast_tokenpooling strategies in theFeatureExtractionPipeline. - Add support for new merge format in
BPEModelwith better compatibility via JSON-encoded token pair mapping. - Introduce
PretrainedModel::$sessionsarray to streamline model session handling across subclasses. - Simplify streamer implementation to improve clarity and flexibility.
- Enhance image processing methods and VIPS integration.
- Convert to a platform package with native shared library support for Linux, macOS, and Windows (x86_64 and ARM64).
- Introduce dynamic shared library loading with platform-specific path resolution logic.
- Update example configurations, docs, and usage instructions to reflect new architecture.
- Add tests for image utilities and inference session logic.
Bug Fixes
- Fix
Tensor::slice()error during generation. - Fix logic in
RepetitionPenaltyLogitsProcessorto properly apply penalties based on generated tokens. - Fix compatibility issues with PHP 8.1 and adjust dependency versions accordingly.
- Fix bug in
HubTestfor Windows paths by usingDIRECTORY_SEPARATOR. - Fix edge case in
BPEModelwhen null value encountered in merge map. - Fix various doc inconsistencies and default constructor bugs in model subclasses.
Improvements
- Refactor library architecture for improved platform compatibility and modularity.
- Refactor
Samplerate,Sndfile, and other FFI wrappers to use instance-based invocation. - Improve generation configuration merging logic and model resolution flow.
- Unify code style across components and improve clarity of core components.
- Update shared native dependencies:
- onnxruntime → 1.21.0
- rindowmatlib → 1.1.1
- Clean up feature extractors and consolidate model session logic.
- Improve error handling in FFI calls and utility classes.
- Rename internal config and model mapping classes for better clarity (
PretrainedMixin→AutoModelBase, etc.)
New Contributors
- @panariga made their first contribution in #73
- @Deltachaos made their first contribution in #77
Full Changelog: 0.5.3...0.6.0