Skip to content

PySpur-Dev/PySpur

Repository files navigation

PySpur - Graph-Based Editor for LLM Workflows

README in English 简体中文版自述文件 日本語のREADME README in Korean Deutsche Version der README Version française du README Versión en español del README

hero.mp4

✨ Core Benefits

Modular Building Blocks

blocks.mp4

Debug at Node Level:

visualization.mp4

Evaluate Final Performance

evals.mp4

Coming soon: Self-improvement

optimization.mp4

🕸️ Why PySpur?

  • Easy-to-hack, eg., one can add new workflow nodes by simply creating a single Python file.
  • JSON configs of workflow graphs, enabling easy sharing and version control.
  • Lightweight via minimal dependencies, avoiding bloated LLM frameworks.

⚡ Quick start

You can get PySpur up and running in three quick steps.

  1. Clone the repository:

    git clone https://github.com/PySpur-com/PySpur.git
    cd pyspur
  2. Start the docker services:

    sudo docker compose up --build -d

    This will start a local instance of PySpur that will store spurs and their runs in a local SQLite file.

  3. Access the portal:

    Go to http://localhost:6080/ in your browser.

    Enter pyspur/canaryhattan as username/password.

  4. Add your LLM provider keys:

    Go to the settings menu on the top right corner of the portal

    image

    Select API keys tab

    image

    Enter your provider's key and click save (save button will appear after you add/modify a key)

    image

Set up is completed. Click on "New Spur" to create a workflow, or start with one of the stock templates.

🗺️ Roadmap

  • Canvas
  • Async/Batch Execution
  • Evals
  • Spur API
  • New Nodes
    • LLM Nodes
    • If-Else
    • Merge Branches
    • Tools
    • Loops
  • Pipeline optimization via DSPy and related methods
  • Templates
  • Compile Spurs to Code
  • Multimodal support
  • Containerization of Code Verifiers
  • Leaderboard
  • Generate Spurs via AI

Your feedback will be massively appreciated. Please tell us which features on that list you like to see next or request entirely new ones.