pipecat-flows  by pipecat-ai

Conversation framework for structured AI dialogues and visual editor

Created 10 months ago
444 stars

Top 67.6% on SourcePulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

Pipecat Flows provides a Python framework and visual editor for building structured AI conversations, enabling both static, predefined paths and dynamic, runtime-determined flows. It targets developers building conversational AI applications, offering robust state management and LLM interaction handling for complex dialogue systems.

How It Works

The framework uses a FlowManager to orchestrate conversations defined by flow_config. This configuration specifies nodes, each containing role_messages (for persona) and task_messages (for bot instructions). Functions, defined with FlowsFunctionSchema or dictionaries, can be attached to nodes for execution. Node functions execute and can transition using transition_to (static) or transition_callback (dynamic), while edge functions facilitate transitions between nodes. The system abstracts LLM provider differences (OpenAI, Anthropic, Google Gemini) for a unified developer experience.

Quick Start & Requirements

  • Install: pip install pipecat-ai-flows or pip install "pipecat-ai[provider,...]" for specific LLM integrations.
  • Prerequisites: Python, LLM provider API keys (OpenAI, Anthropic, Google), and potentially Deepgram/Cartesia for ASR/TTS.
  • Documentation: https://docs.pipecat.ai/
  • Visual Editor: https://flows.pipecat.ai/

Highlighted Details

  • Supports static and dynamic conversation flows with flexible state management.
  • Unified API abstracts LLM provider-specific function calling formats.
  • Offers APPEND, RESET, and RESET_WITH_SUMMARY context management strategies.
  • Includes a visual editor for flow creation and export.

Maintenance & Community

  • Active development with examples for multiple LLM providers.
  • Community support via Discord.
  • Contribution guidelines available in CONTRIBUTING.md.

Licensing & Compatibility

  • The license is not explicitly stated in the README. Compatibility for commercial use or closed-source linking requires clarification.

Limitations & Caveats

The license is not specified, which may pose a risk for commercial adoption. The framework relies on external services for ASR/TTS (Deepgram, Cartesia) and LLM providers, requiring API keys and potentially incurring costs.

Health Check
Last Commit

22 hours ago

Responsiveness

1 day

Pull Requests (30d)
27
Issues (30d)
10
Star History
30 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.