loss_component¶
Base class for Autograd Components that can be called and backpropagated through.
Classes
|
A base class to define a loss component. |
- class LossComponent(*args, **kwargs)[source]¶
Bases:
Component
A base class to define a loss component.
Loss component is to compute the textual gradients/feedback for each of its predecessors using another LLM as the backward engine.
Each precessor should have basic information that is passed to its next component to inform its type such as retriever or generator and its role description.
Compared with Component, GradComponent defines three important interfaces: - forward: the forward pass of the function, returns a Parameter object that can be traced and backpropagated. - backward: the backward pass of the function, updates the gradients/prediction score backpropagated from a “loss” parameter. - set_backward_engine: set the backward engine(a form of generator) to the component, which is used to backpropagate the gradients.
The __call__ method will check if the component is in training mode, and call the forward method to return a Parameter object if it is in training mode, otherwise, it will call the call method to return the output such as “GeneratorOutput”, “RetrieverOutput”, etc.
- backward_engine: BackwardEngine¶
- id = None¶
- set_backward_engine(backward_engine: BackwardEngine, *args, **kwargs)[source]¶