initial commit for new pipecat architecture

This commit is contained in:
Aleix Conchillo Flaqué
2024-04-24 18:29:24 -07:00
parent 4a0836dc8f
commit b026915d19
129 changed files with 5030 additions and 3785 deletions

View File

@@ -1,8 +1,8 @@
import asyncio
import os
from dailyai.pipeline.openai_frames import OpenAILLMContextFrame
from dailyai.services.azure_ai_services import AzureLLMService
from dailyai.services.openai_llm_context import OpenAILLMContext
from pipecat.pipeline.openai_frames import OpenAILLMContextFrame
from pipecat.services.azure_ai_services import AzureLLMService
from pipecat.services.openai_llm_context import OpenAILLMContext
from openai.types.chat import (
ChatCompletionSystemMessageParam,

View File

@@ -1,11 +1,11 @@
import asyncio
from dailyai.pipeline.openai_frames import OpenAILLMContextFrame
from dailyai.services.openai_llm_context import OpenAILLMContext
from pipecat.pipeline.openai_frames import OpenAILLMContextFrame
from pipecat.services.openai_llm_context import OpenAILLMContext
from openai.types.chat import (
ChatCompletionSystemMessageParam,
)
from dailyai.services.ollama_ai_services import OLLamaLLMService
from pipecat.services.ollama_ai_services import OLLamaLLMService
if __name__ == "__main__":
async def test_chat():

View File

@@ -1,7 +1,7 @@
import asyncio
import os
from dailyai.pipeline.openai_frames import OpenAILLMContextFrame
from dailyai.services.openai_llm_context import OpenAILLMContext
from pipecat.pipeline.openai_frames import OpenAILLMContextFrame
from pipecat.services.openai_llm_context import OpenAILLMContext
from openai.types.chat import (
ChatCompletionSystemMessageParam,
@@ -9,7 +9,7 @@ from openai.types.chat import (
ChatCompletionUserMessageParam,
)
from dailyai.services.openai_api_llm_service import BaseOpenAILLMService
from pipecat.services.openai_api_llm_service import BaseOpenAILLMService
if __name__ == "__main__":
async def test_functions():

View File

@@ -3,13 +3,13 @@ import doctest
import functools
import unittest
from dailyai.pipeline.aggregators import (
from pipecat.pipeline.aggregators import (
GatedAggregator,
ParallelPipeline,
SentenceAggregator,
StatelessTextTransformer,
)
from dailyai.pipeline.frames import (
from pipecat.pipeline.frames import (
AudioFrame,
EndFrame,
ImageFrame,
@@ -19,7 +19,7 @@ from dailyai.pipeline.frames import (
TextFrame,
)
from dailyai.pipeline.pipeline import Pipeline
from pipecat.pipeline.pipeline import Pipeline
class TestDailyFrameAggregators(unittest.IsolatedAsyncioTestCase):
@@ -124,6 +124,6 @@ class TestDailyFrameAggregators(unittest.IsolatedAsyncioTestCase):
def load_tests(loader, tests, ignore):
""" Run doctests on the aggregators module. """
from dailyai.pipeline import aggregators
from pipecat.pipeline import aggregators
tests.addTests(doctest.DocTestSuite(aggregators))
return tests

View File

@@ -2,8 +2,8 @@ import unittest
from typing import AsyncGenerator
from dailyai.services.ai_services import AIService
from dailyai.pipeline.frames import EndFrame, Frame, TextFrame
from pipecat.services.ai_services import AIService
from pipecat.pipeline.frames import EndFrame, Frame, TextFrame
class SimpleAIService(AIService):

View File

@@ -4,7 +4,7 @@ import unittest
class TestDailyTransport(unittest.IsolatedAsyncioTestCase):
async def test_event_handler(self):
from dailyai.transports.daily_transport import DailyTransport
from pipecat.transports.daily_transport import DailyTransport
transport = DailyTransport("mock.daily.co/mock", "token", "bot")
@@ -22,7 +22,7 @@ class TestDailyTransport(unittest.IsolatedAsyncioTestCase):
"""
TODO: fix this test, it broke when I added the `.result` call in the patch.
async def test_event_handler_async(self):
from dailyai.services.daily_transport_service import DailyTransportService
from pipecat.services.daily_transport_service import DailyTransportService
transport = DailyTransportService("mock.daily.co/mock", "token", "bot")
@@ -46,10 +46,10 @@ class TestDailyTransport(unittest.IsolatedAsyncioTestCase):
"""
"""
@patch("dailyai.services.daily_transport_service.CallClient")
@patch("dailyai.services.daily_transport_service.Daily")
@patch("pipecat.services.daily_transport_service.CallClient")
@patch("pipecat.services.daily_transport_service.Daily")
async def test_run_with_camera_and_mic(self, daily_mock, callclient_mock):
from dailyai.services.daily_transport_service import DailyTransportService
from pipecat.services.daily_transport_service import DailyTransportService
transport = DailyTransportService(
"https://mock.daily.co/mock",
"token",

View File

@@ -2,11 +2,11 @@ import asyncio
import unittest
from unittest.mock import Mock
from dailyai.pipeline.aggregators import SentenceAggregator, StatelessTextTransformer
from dailyai.pipeline.frame_processor import FrameProcessor
from dailyai.pipeline.frames import EndFrame, TextFrame
from pipecat.pipeline.aggregators import SentenceAggregator, StatelessTextTransformer
from pipecat.pipeline.frame_processor import FrameProcessor
from pipecat.pipeline.frames import EndFrame, TextFrame
from dailyai.pipeline.pipeline import Pipeline
from pipecat.pipeline.pipeline import Pipeline
class TestDailyPipeline(unittest.IsolatedAsyncioTestCase):

View File

@@ -1,7 +1,7 @@
import unittest
from dailyai.pipeline.frames import AudioFrame, TextFrame, TranscriptionFrame
from dailyai.serializers.protobuf_serializer import ProtobufFrameSerializer
from pipecat.pipeline.frames import AudioFrame, TextFrame, TranscriptionFrame
from pipecat.serializers.protobuf_serializer import ProtobufFrameSerializer
class TestProtobufFrameSerializer(unittest.IsolatedAsyncioTestCase):

View File

@@ -2,9 +2,9 @@ import asyncio
import unittest
from unittest.mock import AsyncMock, patch, Mock
from dailyai.pipeline.frames import AudioFrame, EndFrame, TextFrame, TTSEndFrame, TTSStartFrame
from dailyai.pipeline.pipeline import Pipeline
from dailyai.transports.websocket_transport import WebSocketFrameProcessor, WebsocketTransport
from pipecat.pipeline.frames import AudioFrame, EndFrame, TextFrame, TTSEndFrame, TTSStartFrame
from pipecat.pipeline.pipeline import Pipeline
from pipecat.transports.websocket_transport import WebSocketFrameProcessor, WebsocketTransport
class TestWebSocketTransportService(unittest.IsolatedAsyncioTestCase):