AI Chain Implementation
AI chain implementation spans all phases of AI chain development, with feasibility exploration in the exploration phase, further optimization and evaluation in the design phase, and is fully carried out in the construction phase. In particular, an AI chain is built on the AI chain skeleton laid in the design phase.
Worker 1.0/2.0 Implementation
Implementing Software 1.0 and Software 2.0 workers follow traditional software engineering methods. These two types of workers remain crucial, especially when it comes to accessing external data, APIs, or applications. In our IDE's Block view, users can implement worker 1.0 by visual programming blocks or implement worker 1.0/2.0 by coding in a programming language (e.g., Python) .
As the capabilities of LLMs continue to improve, they are increasingly able to generate (almost) correct code based on task prompts. This makes it increasingly possible to develop Software 1.0/2.0 workers using a prompt-based AI chain. That is, we do not need to directly write code to accomplish a specific function. Instead, we write natural language prompts requesting the LLM to generate the corresponding code. This kind of workers are a kind of hybrid workers, and we name them worker 1.5/2.5 and will support them in the next IDE release.
Worker 3.0 Implementation
For Software 3.0 workers, the key is to determine the worker stereotypes and design their prompts that clearly define worker roles and functions. Prompting requires creativity and experiments, but like other forms of programming, can be improved with good practices.
We summarize and document best prompting practices as four categories of prompt design patterns: worker stereotypes, prompting caveats, prompt aspects, and prompting decorators, summarized in the above table. Compared with other attempts to summarize prompt patterns (Mishra et al. 2022, White et al. 2023, Lil’Log Prompt Engineering, OpenAI cookbook, The Art of Asking ChatGPT for High-Quality Answers), our pattern catalog is more structured and clearly identifies the four distinct but correlated perspectives that prompt design needs to consider, allowing for a more structured design of prompts.
It is important to note that these prompt design patterns will not replace creativity and experiments. Furthermore, they are more focused on tactical individual worker level optimization. Often, the task is too complex to be completed through prompt design, and then we need to consider more strategic system level adjustments, such as task decomposition and worker cooperation.