- (all) Multiple breaking changes - proceed with caution
- (instructor) the
Instructorclass is being replaced withStructuredOutputclass; the old class will be kept for some time to allow for a smooth transition. - (all) Common conventions for working with StructuredOutput, Inference, and Embeddings classes
- (examples) All examples have been updated to use the new
StructuredOutputclass and recommended create(), generate() methods - (docs) Updated documentation to reflect the new
StructuredOutputclass and its usage - (instructor) Extracted structured output config into a separate file config/structured.php (and removed from config/llm.php)
- (instructor) Added structured output config object
- (instructor) Cleaned up ChatTemplate class
- (instructor) Response and response streams are now cached after the first call, so multiple calls to
StructuredOutputResponse::response()orStructuredOutputResponse::stream()do not cause re-processing (deserialization, validation, transformation) of the response value - (instructor) StructuredOutput class offers fluent API for creating structured output requests
- (instructor) StructuredOutputResponse now offers getXxx() methods for getting the response value as a specific type (e.g. getString(), getInt(), getFloat(), getBool(), getArray(), getObject())
- (instructor) Removed
inputargument from StructuredOutput methods and StructuredOutputRequest class - usemessagesinstead - (examples) Added StructuredOutput fluent API example - (polyglot) Added fluent API calls to Inference class
- (polyglot) Added fluent API calls to Embeddings class
- (polyglot) Corrections in inference drivers, fixed defects in JSON/JSON Schema modes
- (polyglot) Fixed error in selection of embeddings driver
- (polyglot) Added
withDebug()support to Embeddings class - (polyglot) Added experimental support for HuggingFace inference API
- (all) Multiple changes, improvements and refactorings in the codebase
- (all) Updated docs and examples to reflect the latest changes