Output transformer chain
Defines a wrapper to chain a list of output transformers.
OutputTransformerChain(transformers, event_emitter=None)
A wrapper to chain a list of output transformers.
The OutputTransformerChain class defines the interface for transforming
the output of language models using a chain of output transformers.
Attributes:
| Name | Type | Description |
|---|---|---|
transformers |
list[BaseOutputTransformer]
|
The list of output transformers to use. |
event_emitter |
EventEmitter | None
|
The event emitter to use for streaming events. |
Initializes a new instance of the OutputTransformerChain class.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
transformers
|
list[BaseOutputTransformer]
|
The list of output transformers to use. |
required |
event_emitter
|
EventEmitter | None
|
The event emitter to use for streaming events. Defaults to None. |
None
|
emit(event)
async
Transforms a stream event of a language model and emits it using the event emitter.
This method transforms a stream event of a language model using the chain of output transformers and emits it using the event emitter.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
event
|
Event
|
The stream event to transform and emit. |
required |
Raises:
| Type | Description |
|---|---|
ValueError
|
If the event emitter is not set. |
from_configs(configs, event_emitter=None)
classmethod
Create an output transformer chain from a list of output transformer configs.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
configs
|
list[OutputTransformerConfig]
|
The list of output transformer configs to use. |
required |
event_emitter
|
EventEmitter | None
|
The event emitter to use for streaming events. Defaults to None. |
None
|
Returns:
| Name | Type | Description |
|---|---|---|
OutputTransformerChain |
OutputTransformerChain
|
The output transformer chain. |
transform(output)
Transforms the output of a language model.
This method transforms the output using the chain of output transformers.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
output
|
LMOutput
|
The output to transform. |
required |
Returns:
| Name | Type | Description |
|---|---|---|
LMOutput |
LMOutput
|
The transformed output of a language model. |