v0.2.1rc1
Pre-release
Pre-release
Feature: Model Override and Core Improvements
- Model Override Capability: Introduced model override functionality for
GenerateTemplateandToolingTemplate. This allows for specifying a different model for individual templates, enabling cost and performance optimization. - Enhanced Jinja2 Error Handling: Improved Jinja2 template error handling by adding a
disable_jinjaoption. This is useful when template content includes Jinja syntax that should not be rendered. - Subroutine Environment Isolation: Implemented complete environment isolation for
SubroutineTemplate, ensuring subroutines run in a clean context without affecting the parent session. - Runner Model Handling: Refactored runner model handling for better consistency and clarity across the framework.
- Design Documentation: Added comprehensive design documentation for template model override, detailing its benefits, usage, and implementation.
- Examples Update: Updated examples to showcase new features and improve overall code structure, providing clearer usage patterns.
Refactor: End Conversation Flow
- Removed
JumpTemplate: RemovedJumpTemplateto simplify conversation flow control. Navigation logic should be handled by control flow templates and session state. - Enhanced
EndTemplate: ImprovedEndTemplateto support optional farewell messages, providing a more graceful way to end conversations. - Simplified Runner: Runner implementation is simplified by removing
start_template_id, streamlining the execution process. EndConversationTool: AddedEndConversationToolto allow LLMs to explicitly end conversations, with support for farewell messages.- Design Documentation: Added design documentation for
EndConversationTool, outlining its purpose, usage, and integration within the framework.
Feature: Event Handling and Core Refactoring
- Event Handling System: Implemented a new event handling system, introducing
UserInteractionEventfor managing user inputs and interactions within templates. - Core Component Refactoring: Refactored core components to enhance maintainability and scalability, improving the internal structure of the framework.
- Session Transformer Renaming: Renamed session transformers for improved clarity and consistency in naming conventions.
- Design Proposal: Added a design proposal document for the event handling system, detailing its architecture, benefits, and future extensions.
Feature: API Runner with FastAPI Integration
APIRunner: Introduced a newAPIRunnerclass, providing seamless integration with FastAPI to expose agents as RESTful APIs.- FastAPI Integration: Implemented REST endpoints for session creation, status retrieval, input posting, and session starting, facilitating web-based agent interaction.
- Session Management: Added robust session management capabilities within
APIRunnerto handle multiple concurrent conversations. - Async Support: Ens