Prompt2Model - 从指令生成可部署模型
Prompt2Model
是一个系统,它接受自然语言任务描述(类似于用于 ChatGPT 等大型语言模型的提示),以训练一个适合部署的小型专用模型。
快速入门
笔记本
您可以通过笔记本运行我们的 Prompt2Model
演示:
命令行
您也可以通过命令行运行。
pip install prompt2model
Prompt2Model
使用 LiteLLM 支持各种平台,如 OpenAI、Anthropic、Huggingface 等。
如果您使用 OpenAI 模型(如默认的 gpt-3.5-turbo
),请在他们的网站上获取 OpenAI API 密钥,然后在终端中运行以下命令将环境变量 OPENAI_API_KEY
设置为您的 API 密钥:
export OPENAI_API_KEY=<您的密钥>
然后您可以运行
python prompt2model_demo.py
从提示创建一个小型模型,如下面的演示视频所示。此脚本必须在能够访问 OpenAI API 的设备上运行。为获得最佳结果,请在具有 GPU 的设备上运行此脚本以训练您的模型。
演示
https://github.com/neulab/prompt2model/assets/2577384/8d73394b-3028-4a0b-bdc3-c127082868f2
编写好提示的技巧和示例
您可以在 prompt_examples 中查看编写好提示的技巧和示例。
组件
prompt2model
包由几个组件组成,每个组件都设计用于满足特定目的。要全面了解如何有效使用每个组件,请参阅位于相应组件目录中的 readme.md
文件。这些文件可以在 ./prompt2model/<component>/readme.md
找到。它们提供了有关自定义和最大化包内每个组件功能的详细信息和说明。
贡献
如果您有兴趣为 prompt2model
项目做出贡献,请
- 参考 CONTRIBUTING.md
- 提出 issue 或提交 PR
- 加入我们的 discord
- 或在 Twitter 上联系 @vijaytarian 和 @Chenan3_Zhao
引用
我们已经撰写了一篇详细描述 Prompt2Model 的论文。
如果您在研究中使用 Prompt2Model,请引用我们!
如果您讨论或使用整体 prompt2model 框架,请引用
@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}
}
如果您讨论或使用我们的数据集检索和转换工具,请引用
@misc{prompt2modeldatatune,
title={Better Synthetic Data by Retrieving and Transforming Existing Datasets},
author={Saumya Gandhi and Ritu Gala and Vijay Viswanathan and Tongshuang Wu and Graham Neubig},
year={2024},
eprint={2404.14361},
archivePrefix={arXiv},
primaryClass={cs.CL}
}