A roadmap for crafting different types of program simulation prompts
In my recent article, “New ChatGPT Prompt Engineering Technique: Program Simulation,” I discussed a new category of prompt engineering techniques that aim to make ChatGPT-4 behave like a program. During my exploration, I was impressed by ChatGPT-4’s ability to self-configure functionality within the program specifications. In the original program simulation prompt, we defined a set of functions and expected ChatGPT-4 to maintain the program state consistently. Many readers have successfully adapted this method for various use cases. However, what if we give ChatGPT-4 more flexibility in defining functions and program behavior? This approach sacrifices predictability and consistency but offers more options and adaptability. I have developed a preliminary framework for this category of techniques, as shown in the figure below:
Understanding the Chart
The chart provides a conceptual roadmap for crafting program simulation prompts, highlighting two key dimensions:
1. Deciding how many and which functions of the program simulation to define.
2. Deciding the degree to which the behavior and configuration of the program is autonomous.
In the first article, we focused on the “Structured Pre-Configured” category. In this article, we will explore the “Unstructured Self-Configuring” approach. The chart allows for experimentation, adjustment, and refinement as you apply the technique.
Unstructured Self-Configuring Program Simulation Prompt
Now, let’s delve into the “Unstructured Self-Configuring Program Simulation” approach. I have crafted a prompt for creating illustrated children’s stories:
“Behave like a self-assembling program whose purpose is to create illustrated children’s stories. You have complete flexibility in determining the program’s functions, features, and user interface. The program will generate prompts for text-to-image models to generate images. Your goal is to run the chat as a fully functioning program ready for user input once this prompt is received.”
The prompt is deceptively simple, offering ChatGPT-4 full discretion over function definition, configuration, and program behavior. The only specific instruction is for illustrations to be prompts for text-to-image generation. I used the term “self-assembling” to encourage ChatGPT-4 to simulate an actual program/user interaction.
“Behave like” vs. “Act like”
It’s worth noting a distinction in word choice in the prompt. We often use “Act like an expert” to guide chat models towards persona-driven responses. However, “Behave like” offers more flexibility, especially when aiming for a program-like behavior. It can also be used in persona-centric contexts.
Output and Exploration
The resulting output resembles a program, with intuitive functions and features. The menu includes options like “Settings” and “Help & Tutorials.” Let’s explore these unexpected additions.
The “Settings” options are helpful, allowing us to customize the story length, language, and vocabulary level. I combine the settings changes into one line of text, testing the model’s ability to handle autonomous program configuration.
The settings update is confirmed, and the subsequent menu choices are free-form but contextually appropriate.
The “Help & Tutorials” section provides further guidance, including information on “Illustration Prompts & Generation.”
Navigating through the program, we can create a new story, work on illustration prompts, and use the “Save and Exit” and “Load Saved Story” functions.
The generated story reflects the specified settings, and the functions presented align with the program’s progress.
The illustration prompts are generated as specified, but consistency across multiple pages requires additional steps outside of ChatGPT-4.
Conclusions and Observations
The Unstructured Self-Configuring Program Simulation technique demonstrates the power of a simple prompt that provides a clear objective while giving the model broad discretion. It is useful when defining program simulation functions or experimenting with different approaches. This technique aligns with a wide range of use cases for chat models, incorporating elements of Chain of Thought, Instruction Based, Step-By-Step, and Role Play techniques.
As generative models continue to advance, prompt engineering may become less significant. Generative models may evolve to perform tasks beyond generating text and images, intuitively understanding how to achieve desired outcomes. This exploration suggests that this reality may be closer than we think.
To consider the future of generative AI, we can draw parallels with human proficiency in a specific domain:
1. Training in domain-specific knowledge and techniques.
2. Testing and refinement of abilities.
3. Task performance and goal accomplishment.
Generative models may evolve into a generative operating system, capable of performing a wide range of tasks.
The Unstructured Self-Configuring Program Simulation technique offers flexibility and adaptability in crafting program simulation prompts. It provides a roadmap for experimentation and refinement, aligning with various use cases for chat models. As generative models continue to evolve, prompt engineering may become less prominent, paving the way for generative operating systems.