Today we’re excited to release Marvin 1.4.
This release comes with powerful, opinionated, and flexible framework for building (semi-)autonomous workflows - something we’ve thought a lot about at Prefect. Today we’re adding:
Conservational State for managing multi-turn conversations and workflows.
Long-running chaining for autonomous workflows.
Ejectable prompts - separating serialization and logic.
If you’ve built an LLM-based system, you know first-hand that fully autonomous workflows, while powerful, are brittle and hard to trust. LLMs, like a sharp college intern, can go off rails if you don’t have touch points to check in. Once they’ve proven they’re capable of handling a task on their own, you’re able to set and forget.
Conservational State and Autonomous Workflows.
We’ve built a framework for writing semi- and fully-autonomous agents with tools. Here’s what writing an agent feels like in Marvin.
This lets you introspect and debug agents with the simplicity you would for writing pure Python. No black box, and no PhD required.
Alternatively, when you want to turn full control over to an LLM for autonomous execution, you can simply chain to implement this while-loop behavior.
Ejectable prompts.
One of the things developers love about Marvin is our emphasis on the engineering in prompt engineering. Marvin developers write prompts with python functions, dataclasses, enums. We take your code, written in python, and translate it to English - so an LLM can autocomplete to a response which we parse for you.
As developers explore open source models, we saw a greater need to separate serialization (code to english) and execution (english to LLM). We’ve worked to make each component of Marvin (AI Functions, AI Models, AI Classifiers) expose their raw English prompt to use with open source models.
The feedback from Marvin users has been loud and clear: it’s the most ergonomic framework for working with Large Language Models. It’s a framework that feels familiar: if you know Python, you know Marvin.
Upgrade today (pip install marvin -U)
, check out the docs, and give the repo a star!