[3/3] A Prompt Pattern Sequence Approach to Apply Generative AI in Assisting Software Architecture Decision-making (Рубрика Architecture)
Продолжим рассмотрение (1 и 2) whitepaper на тему использования Gen AI в архитектуре, начатый в первом посте, рассмотрением паттернов промтинга.
4) Technical Premises Pattern Использование генеративного ИИ может привести к проблемам галлюцинаций, которые иногда могут решить LLM. Но при проектировании обеспечение точности и надежности данных, используемых в архитектурных решениях, имеет важное значение для успеха любого проекта. Этот паттерн помогает проверить технические предпосылки, приведенные LLM, чтобы гарантировать точность и надежность информации, используемой при принятии необходимых архитектурных решений? В итоге, болванка паттерна представлена ниже, где list of technical premises предоставляется LLM и относится к -ilities проекта
[Context] and [List of Technical Premises]. From now on, make sure that when generating a response, the AI language model creates a set of specific facts for each technical premise and justification for each architectural decision-making. These facts should be verified and listed at the end of the output. А пример конкретного промпта и ответа выглядит так
5) Uncertain Requirement Statement Pattern Неопределенности в требованиях к проекту могут существенно повлиять на архитектуру программного обеспечения и привести к рискам в дальнейшем.Чтобы смягчить эти последствия, архитекторам стоит делать прогнозы относительно реализации требований, которые изначально не были запланированы или являются неопределенными. Этот паттерн помогает учесть эти неявные требования В итоге, болванка паттерна представлена ниже
Statement Template: In [Project Context], and [Uncertain Aspect].Examine the potential repercussions of not adequately addressing these uncertainties in the system architecture. This assessment will inform our strategic planning and decision-making in software architecture for mitigation, emphasizing creating a system that is not only technologically advanced but also flexible and responsive to regulatory and technological changes. 6) Prompt Pattern Sequence Последний паттерн из этой статьи рассказывает о том, как собрать цепочку из вызовов предыдущих паттернов для анализа архитектуры. Ребята предлагают использовать их в таком порядке
- Define the Role and Objective of the Architect
- Applying the Software Architect Persona
- Evaluate Technical Premises
- Unclear Requirements with Uncertain Requirement Statement
- Refining Quality Attributes with Quality Attribute Question
- Budget and Resources Defined with Architectural Project Context
- Evaluate Results
В статье авторы привели примеры всех цепочек промптов для трех use cases, описанных в самом начале
- Prompt Pattern Sequence for Brazilian Financial Bank
- Prompt Pattern Sequence for Brazilian Pharmacies Nationwide
- Prompt Pattern Sequence for CRM Application Cloud-Based for a Startup
В заключении авторы говорят о том, что
Pattern-based Prompt Sequence advocated a strategic approach to leveraging generative AI to assist software architects in navigating decision-making processes. Как по мне, это движение в правильном направлении для создания co-architect, который помогает опытным инженерам размышлять над архитектурой в их проекте/продукте, но пока получившиеся цепочки промптов выглядят очень общими - как будто пообщался с консультантами из мира разработки:) Интересно, а что будет если дотюнить модельку и обучить ее внутри-компанейской специфики через RAG или fine tune ... Пока не ясно, но хотелось бы попробовать что-то у себя внутри компании.
#Architecture #GenAI #AI #ML #Software #Engineering #SystemDesign #DistributedSystems #Project