Prompt2Model
is a system that takes a natural language task description (like the prompts used for LLMs such as ChatGPT) to train a small special-purpose model that is conducive for deployment.
You can run our demo of Prompt2Model
through a notebook:
You can also run through the command line.
pip install prompt2model
Prompt2Model
supports various platforms such as OpenAI, Anthropic, Huggingface, etc. using LiteLLM.
If you are using OpenAI models (such as the default gpt-3.5-turbo
), please obtain an OpenAI API key on their website then set the environment variable OPENAI_API_KEY
to your API key by running the following command in your terminal:
export OPENAI_API_KEY=<your key>
List of all supported providers
You can then run
python prompt2model_demo.py
to create a small model from a prompt, as shown in the demo video below. This script must be run on a device with an internet connection to access the OpenAI API. For best results, run this script on a device with a GPU for training your model.
https://github.com/neulab/prompt2model/assets/2577384/8d73394b-3028-4a0b-bdc3-c127082868f2
You can see the tips and examples to write a good prompt in prompt_examples.
The prompt2model
package is composed of several components, each designed to fulfill a specific purpose. To gain a comprehensive understanding of how to utilize each component effectively, please consult the readme.md
file situated in the directory of the respective component. These files can be found at ./prompt2model/<component>/readme.md
. They provide detailed information and instructions on customizing and maximizing the functionality of each component within the package.
If you're interested in contributing to the prompt2model
project, please
We have written a paper describing Prompt2Model in detail.
If you use Prompt2Model in your research, please cite our paper:
@misc{prompt2model,
title={Prompt2Model: Generating Deployable Models from Natural Language Instructions},
author={Vijay Viswanathan and Chenyang Zhao and Amanda Bertsch and Tongshuang Wu and Graham Neubig},
year={2023},
eprint={2308.12261},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
Author: Neulab
Source Code: https://github.com/neulab/prompt2model
License: Apache-2.0 license