Skip to content

Pipecat ​

Give a Pipecat voice pipeline long-term memory. Ships in the Python SDK.

Install ​

bash
pip install "suprflo[pipecat]"

What you get ​

  • SuprfloMemoryProcessor — a FrameProcessor that, on each LLMContextFrame, searches Suprflo with the latest user message, prepends the hits to the context as a system message, and stores the conversation. Every other frame passes straight through untouched.

Use it ​

Place the processor immediately before the LLM service, so it sees the context frame on its way in:

python
from suprflo import MemoryClient
from suprflo.integrations.pipecat import SuprfloMemoryProcessor

client = MemoryClient(api_key="YOUR_API_KEY")

pipeline = Pipeline([
    transport.input(),
    stt,
    context_aggregator.user(),
    SuprfloMemoryProcessor(client, user_id="alice", top_k=5),
    llm,
    tts,
    transport.output(),
    context_aggregator.assistant(),
])

Notes and limits ​

  • MemoryClient is synchronous, so lookups are offloaded with asyncio.to_thread: the recall is awaited (the LLM must not run before the context is enriched) but the event loop keeps turning.
  • Frame direction is respected and non-context frames are forwarded unchanged, so dropping the processor into an existing pipeline does not disturb it.
  • Requires pipecat-ai 1.x, which the extra pins: 1.0 replaced LLMMessagesFrame with the LLMContextFrame this processor reads.
  • Frame and context shapes are written from the documented 1.x API and are unverified against a live pipeline; the tests mock Pipecat, so they prove the mapping logic and nothing about Pipecat itself.

If pipecat-ai isn't installed, importing this module raises a clear ImportError telling you to pip install "suprflo[pipecat]".

The memory layer for AI agents.