About This Book¶
The art of building sustainable software is changing faster than ever before. To build applications that can scale out to meet the demands of large organizations, we need to understand the architectural trade-offs of different approaches quickly. These discussions need to be efficient. The best way to increase the bandwidth of these discussions is to create a shared understanding of common architectural approaches.
Referencing named patterns is one of the most essential tools to create shared understanding. Using named patterns started in 1977 with the publication of Christopher Alexander's groundbreaking book A Pattern Language: Towns, Buildings, Construction. Software architects adopted design patterns in the Gang-of-Four Design Pattern book in 1984. In 2003, the Enterprise Integration Patterns book also applied design patterns to computer integration.
Now, we are facing the most significant shift in application development for the last 20 years: the rise of generative AI. To stay productive, we need a pattern language for generative AI to allow our architects to discuss the relative merits of different approaches. This book attempts to codify many of the best practices in this rapidly changing field and give the reusable solution names that help increase the bandwidth of these discussions.
Creating a new pattern language is a challenging task. Generative AI applications are being built today with experts from different fields with distinct backgrounds. Our goal is to take a holistic systems-thinking approach to GenAI Patterns and include input from various groups, including:
- Application Architects
- Data Scientists
- Natural Language Processing Experts
- Rule Engine Architects
- Security Architects
- Ethics Review Boards
By sharing terminology, the architectural review processes will go smoother, resulting in better designs.
Before we introduce you to the GenAI Patterns, we need to make sure everyone has a strong understanding of the key concepts that underpin Gen AI solutions.