Skip to main content

PromptMage-Logo

PromptMage

simplifies the process of creating and managing LLM workflows as a self-hosted solution.

License Monthly downloads PyPI version GitHub issues GitHub stars

[!WARNING] This application is currently in alpha state and under active development. Please be aware that the API and features may change at any time.

About the Project

PromptMage is a python framework to simplify the development of complex, multi-step applications based on LLMs. It is designed to offer an intuitive interface that simplifies the process of creating and managing LLM workflows as a self-hosted solution. PromptMage facilitates prompt testing and comparison, and incorporates version control features to help users track the development of their prompts. Suitable for both small teams and large enterprises, PromptMage seeks to improve productivity and foster the practical use of LLM technology.

The approach with PromptMage is to provide a pragmatic solution that bridges the current gap in LLM workflow management. We aim to empower developers, researchers, and organizations by making LLM technology more accessible and manageable, thereby supporting the next wave of AI innovations.

PromptMage

Take the walkthrough to see what you can do with PromptMage.

Philosophy

  • Integrate the prompt playground into your workflow for fast iteration
  • Prompts as first-class citizens with version control and collaboration features
  • Manual and automatic testing and validation of prompts
  • Easy sharing of results with domain experts and stakeholders
  • build-in, automatically created API with fastAPI for easy integration and deployment
  • Type-hint everything for automatic inference and validation magic

Projects using PromptMage

  • product-review-research: An AI webapp build with PromptMage to provide in-depth analysis for products by researching trustworthy online reviews.

Getting Started

Installation

To install promptmage, run the following command:

pip install promptmage 

Usage

To use promptmage, run the following command:

promptmage run <path-to-flow>

This will start the local promptmage server and run the flow at the given path. You can now access the promptmage interface at http://localhost:8000/gui/.

To run the remote backend server, run the following command:

promptmage serve --port 8021

To make it work with your promptmage script, you should add the following lines to your script:

from promptmage import PromptMage

mage = PromptMage(remote="http://localhost:8021")  # or the URL of your remote server

Have a look at the examples in the examples folder to see how to use promptmage in your application or workflow.

Use with Docker

You can find an usage example with docker here: Docker example.

Development

To develop PromptMage, check out the DEVELOPMENT.md file.

Contributing

We welcome contributions from the community!

If you're interested in improving PromptMage, you can contribute in the following ways:

  • Reporting Bugs: Submit an issue in our repository, providing a detailed description of the problem and steps to reproduce it.
  • Improve documentation: If you find any errors or have suggestions for improving the documentation, please submit an issue or a pull request.
  • Fixing Bugs: Check out our list of open issues and submit a pull request to fix any bugs you find.
  • Feature Requests: Have ideas on how to make PromptMage better? We'd love to hear from you! Please submit an issue, detailing your suggestions.
  • Pull Requests: Contributions via pull requests are highly appreciated. Please ensure your code adheres to the coding standards of the project, and submit a pull request with a clear description of your changes.

To ensure a smooth contribution process, please follow these guidelines:

  • create an issue before submitting a pull request to discuss the changes you'd like to make. This helps us ensure that your contribution aligns with the project's goals and prevents duplicate work.
  • follow the coding standards of the project. Check the DEVELOPMENT.md file for more information.

Make sure to check if your issue or PR has already been fixed or implemented before opening a new one!

License

This project is licensed under the MIT License - see the LICENSE.md file for details. Original development by Tobias Sterbak. Copyright (C) 2024.

Contact

For any inquiries or further information, feel free to reach out at promptmage@tobiassterbak.com.

❤️ Acknowledgements

This project was supported by

Metadata

Release files for promptmage 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for promptmage 0.1.4
File Size Uploaded
promptmage-0.1.4.tar.gz 420.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for promptmage 0.1.4
File Interpreter ABI Platform
promptmage-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 850.7 kB

Release files / promptmage-0.1.4.tar.gz

Download URL promptmage-0.1.4.tar.gz
Size 420.9 kB
Tags Source
SHA-256 checksum
How to use checksums
b7d6b14fb5885586f97000877489ca592bcabcdc1f790085557803f3e98a7ebc
BLAKE2b-256 checksum
How to use checksums
265afe5e032d0e81bad0f860d60a627be34fb78d05479c7007b259bd4a3a10ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.8.10 Linux/5.15.0-122-generic

Release files / promptmage-0.1.4-py3-none-any.whl

Download URL promptmage-0.1.4-py3-none-any.whl
Size 429.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
00015eefd09a59d4247f42bf6d92ed1891fcb958c45c1ef87c46e70fe5de5f72
BLAKE2b-256 checksum
How to use checksums
22c1f191c632cb454675cf6fa0aea8a7d80014a568c041d2d5b3f3a0a7ddf000
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.3 CPython/3.8.10 Linux/5.15.0-122-generic

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page