OpenAI Realtime needs the assistant context aggregator to have expect_stripped_words=False
This commit is contained in:
@@ -14,7 +14,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
```python
|
```python
|
||||||
context = LLMContext(messages, tools)
|
context = LLMContext(messages, tools)
|
||||||
context_aggregator = LLMContextAggregatorPair(context)
|
context_aggregator = LLMContextAggregatorPair(
|
||||||
|
context,
|
||||||
|
# This part is `OpenAIRealtimeLLMService`-specific.
|
||||||
|
# `expect_stripped_words=False` needed when OpenAI Realtime used with
|
||||||
|
# "audio" modality (the default).
|
||||||
|
assistant_params=LLMAssistantAggregatorParams(expect_stripped_words=False),
|
||||||
|
)
|
||||||
```
|
```
|
||||||
|
|
||||||
(Note that even though `OpenAIRealtimeLLMService` now supports the universal
|
(Note that even though `OpenAIRealtimeLLMService` now supports the universal
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ from pipecat.pipeline.pipeline import Pipeline
|
|||||||
from pipecat.pipeline.runner import PipelineRunner
|
from pipecat.pipeline.runner import PipelineRunner
|
||||||
from pipecat.pipeline.task import PipelineParams, PipelineTask
|
from pipecat.pipeline.task import PipelineParams, PipelineTask
|
||||||
from pipecat.processors.aggregators.llm_context import LLMContext
|
from pipecat.processors.aggregators.llm_context import LLMContext
|
||||||
|
from pipecat.processors.aggregators.llm_response import LLMAssistantAggregatorParams
|
||||||
from pipecat.processors.aggregators.llm_response_universal import LLMContextAggregatorPair
|
from pipecat.processors.aggregators.llm_response_universal import LLMContextAggregatorPair
|
||||||
from pipecat.processors.transcript_processor import TranscriptProcessor
|
from pipecat.processors.transcript_processor import TranscriptProcessor
|
||||||
from pipecat.runner.types import RunnerArguments
|
from pipecat.runner.types import RunnerArguments
|
||||||
@@ -186,7 +187,12 @@ Remember, your responses should be short. Just one or two sentences, usually. Re
|
|||||||
tools,
|
tools,
|
||||||
)
|
)
|
||||||
|
|
||||||
context_aggregator = LLMContextAggregatorPair(context)
|
context_aggregator = LLMContextAggregatorPair(
|
||||||
|
context,
|
||||||
|
# `expect_stripped_words=False` needed when OpenAI Realtime used with
|
||||||
|
# "audio" modality (the default)
|
||||||
|
assistant_params=LLMAssistantAggregatorParams(expect_stripped_words=False),
|
||||||
|
)
|
||||||
|
|
||||||
pipeline = Pipeline(
|
pipeline = Pipeline(
|
||||||
[
|
[
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ from pipecat.pipeline.pipeline import Pipeline
|
|||||||
from pipecat.pipeline.runner import PipelineRunner
|
from pipecat.pipeline.runner import PipelineRunner
|
||||||
from pipecat.pipeline.task import PipelineParams, PipelineTask
|
from pipecat.pipeline.task import PipelineParams, PipelineTask
|
||||||
from pipecat.processors.aggregators.llm_context import LLMContext
|
from pipecat.processors.aggregators.llm_context import LLMContext
|
||||||
|
from pipecat.processors.aggregators.llm_response import LLMAssistantAggregatorParams
|
||||||
from pipecat.processors.aggregators.llm_response_universal import LLMContextAggregatorPair
|
from pipecat.processors.aggregators.llm_response_universal import LLMContextAggregatorPair
|
||||||
from pipecat.runner.types import RunnerArguments
|
from pipecat.runner.types import RunnerArguments
|
||||||
from pipecat.runner.utils import create_transport
|
from pipecat.runner.utils import create_transport
|
||||||
@@ -174,7 +175,12 @@ Remember, your responses should be short. Just one or two sentences, usually. Re
|
|||||||
tools,
|
tools,
|
||||||
)
|
)
|
||||||
|
|
||||||
context_aggregator = LLMContextAggregatorPair(context)
|
context_aggregator = LLMContextAggregatorPair(
|
||||||
|
context,
|
||||||
|
# `expect_stripped_words=False` needed when OpenAI Realtime used with
|
||||||
|
# "audio" modality (the default)
|
||||||
|
assistant_params=LLMAssistantAggregatorParams(expect_stripped_words=False),
|
||||||
|
)
|
||||||
|
|
||||||
pipeline = Pipeline(
|
pipeline = Pipeline(
|
||||||
[
|
[
|
||||||
|
|||||||
@@ -895,6 +895,7 @@ class OpenAIRealtimeLLMService(LLMService):
|
|||||||
)
|
)
|
||||||
|
|
||||||
context = LLMContext.from_openai_context(context)
|
context = LLMContext.from_openai_context(context)
|
||||||
|
assistant_params.expect_stripped_words = False
|
||||||
return LLMContextAggregatorPair(
|
return LLMContextAggregatorPair(
|
||||||
context, user_params=user_params, assistant_params=assistant_params
|
context, user_params=user_params, assistant_params=assistant_params
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user