{"id":1157824,"date":"2025-12-10T09:00:00","date_gmt":"2025-12-10T17:00:00","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/?p=1157824"},"modified":"2026-02-24T07:34:05","modified_gmt":"2026-02-24T15:34:05","slug":"promptions-helps-make-ai-prompting-more-precise-with-dynamic-ui-controls","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/research\/blog\/promptions-helps-make-ai-prompting-more-precise-with-dynamic-ui-controls\/","title":{"rendered":"Promptions helps make AI prompting more precise with dynamic UI controls"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1400\" height=\"788\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1.jpg\" alt=\"Three white line icons on a blue-to-green gradient background: a hub-and-spoke network symbol on the left, a laptop with a user icon in the center, and a connected group of three user icons on the right.\" class=\"wp-image-1157946\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1.jpg 1400w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-300x169.jpg 300w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-1024x576.jpg 1024w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-768x432.jpg 768w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-1066x600.jpg 1066w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-655x368.jpg 655w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-240x135.jpg 240w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-640x360.jpg 640w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-960x540.jpg 960w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-1280x720.jpg 1280w\" sizes=\"auto, (max-width: 1400px) 100vw, 1400px\" \/><\/figure>\n\n\n\n<p>Anyone who uses AI systems knows the frustration: a prompt is given, the response misses the mark, and the cycle repeats. This trial-and-error loop can feel unpredictable and discouraging. To address this, we are excited to introduce <strong>Promptions<\/strong> (<em>prompt + options<\/em>), a UI framework that helps developers build AI interfaces with more precise user control.<\/p>\n\n\n\n<p>Its simple design makes it easy to integrate into any setting&nbsp;that relies on added context, including customer support, education, and medicine. Promptions is available under the MIT license on <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"https:\/\/labs.ai.azure.com\/projects\/promptions\/\" target=\"_blank\" rel=\"noopener noreferrer\">Microsoft Foundry Labs<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and GitHub.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Promptions\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube-nocookie.com\/embed\/vr3fZpkKy8Q?feature=oembed&rel=0\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"background\">Background<\/h2>\n\n\n\n<p>Promptions&nbsp;builds on&nbsp;our research,&nbsp;\u201c<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/publication\/dynamic-prompt-middleware-contextual-prompt-refinement-controls-for-comprehension-tasks\/\" target=\"_blank\" rel=\"noreferrer noopener\">Dynamic Prompt Middleware: Contextual Prompt Refinement Controls for Comprehension Tasks<\/a>.\u201d&nbsp;This&nbsp;project&nbsp;examined&nbsp;how&nbsp;knowledge&nbsp;workers&nbsp;use&nbsp;generative AI when their goal is&nbsp;to <em>understand<\/em> rather than&nbsp;<em>create<\/em>. While much public&nbsp;discussion centers on&nbsp;AI producing text&nbsp;or&nbsp;images, understanding involves asking AI to explain, clarify, or teach\u2014a&nbsp;task&nbsp;that can&nbsp;quickly become&nbsp;complex. Consider a spreadsheet formula: one&nbsp;user may want a&nbsp;simple syntax&nbsp;breakdown,&nbsp;another a&nbsp;debugging&nbsp;guide, and&nbsp;another an explanation suitable for&nbsp;teaching&nbsp;colleagues.&nbsp;The same formula can require&nbsp;entirely&nbsp;different explanations depending on the user\u2019s role, expertise, and goals.&nbsp;<\/p>\n\n\n\n<p>A great deal of complexity sits beneath these&nbsp;seemingly simple&nbsp;requests.&nbsp;Users&nbsp;often&nbsp;find&nbsp;that the way&nbsp;they phrase a question&nbsp;doesn\u2019t&nbsp;match&nbsp;the&nbsp;<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/publication\/what-is-it-like-to-program-with-artificial-intelligence\/\" target=\"_blank\" rel=\"noreferrer noopener\">level of detail the AI&nbsp;needs<\/a>.&nbsp;Clarifying what they really want can require long, carefully worded&nbsp;prompts that are tiring to produce.&nbsp;And because the connection&nbsp;between natural language and system behavior&nbsp;isn\u2019t always transparent, it can be difficult to predict&nbsp;how the AI will interpret a&nbsp;given&nbsp;request.&nbsp;In the end, users spend more time&nbsp;<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/publication\/the-metacognitive-demands-and-opportunities-of-generative-ai\/\" target=\"_blank\" rel=\"noreferrer noopener\">managing the interaction itself<\/a>&nbsp;than understanding the material they&nbsp;hoped&nbsp;to learn.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"identifying-how-users-want-to-guide-ai-outputs\">Identifying&nbsp;how users want to guide AI outputs&nbsp;<\/h2>\n\n\n\n<p>To explore why these\u00a0challenges\u00a0persist and how people can better steer AI toward customized results, we conducted two studies with knowledge workers across technical and nontechnical roles. Their experiences highlighted important gaps that guided Promptions&#8217; design.<\/p>\n\n\n\n<p>Our&nbsp;first study&nbsp;involved&nbsp;38 professionals&nbsp;across&nbsp;engineering, research, marketing, and program management. Participants reviewed&nbsp;design mock-ups that&nbsp;provided&nbsp;static&nbsp;prompt-refinement&nbsp;options\u2014such as&nbsp;<em>length<\/em>, <em>tone<\/em>, or <em>start with<\/em>\u2014for shaping&nbsp;AI&nbsp;responses.&nbsp;<\/p>\n\n\n\n<p>Although these&nbsp;static&nbsp;options were helpful, they&nbsp;couldn\u2019t&nbsp;adapt to the&nbsp;specific formula, code snippets, or text&nbsp;the participant&nbsp;was trying to understand.&nbsp;Participants&nbsp;also wanted direct ways to&nbsp;customize&nbsp;the&nbsp;tone,&nbsp;detail, or&nbsp;format of the response&nbsp;without&nbsp;having to&nbsp;type instructions.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"why-dynamic-refinement-matters\">Why dynamic refinement matters<\/h3>\n\n\n\n<p>The&nbsp;second study&nbsp;tested&nbsp;prototypes&nbsp;in a&nbsp;controlled experiment.&nbsp;We compared the static&nbsp;design&nbsp;from the first study, called&nbsp;the&nbsp;\u201cStatic Prompt Refinement Control\u201d&nbsp;(Static PRC),&nbsp;against a&nbsp;\u201cDynamic Prompt Refinement Control\u201d (Dynamic PRC)&nbsp;with features that&nbsp;responded&nbsp;to&nbsp;participants\u2019 feedback.&nbsp;Sixteen&nbsp;technical&nbsp;professionals familiar with generative AI&nbsp;completed six tasks,&nbsp;spanning&nbsp;code explanation,&nbsp;understanding a&nbsp;complex topic, and&nbsp;learning a new&nbsp;skill.&nbsp;Each participant tested both systems, with task assignments balanced to ensure fair comparison.&nbsp;&nbsp;<\/p>\n\n\n\n<p>Comparing Dynamic PRC\u00a0to\u00a0Static PRC\u00a0revealed key insights into how\u00a0dynamic\u00a0prompt-refinement\u00a0options change users\u2019\u00a0sense of\u00a0control and exploration and\u00a0how those options\u00a0help them\u00a0reflect\u00a0on their understanding.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"static-prompt-refinement\">Static&nbsp;prompt&nbsp;refinement<\/h3>\n\n\n\n<p>Static PRC&nbsp;offered a set of pre\u2011selected controls&nbsp;(Figure 1)&nbsp;identified&nbsp;in the&nbsp;initial&nbsp;study.&nbsp;We expected these options to be useful&nbsp;across many&nbsp;types of&nbsp;explanation-seeking&nbsp;prompts.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1379\" height=\"852\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig02-staticprc-1.png\" alt=\"Alt text: The Static PRC interface in the user study. It includes dropdowns and radio buttons for selecting expertise level (Beginner to Advanced), explanation length (Short to Long), role of AI (Coach, Teach, Explain), explanation type (End result, Modular, Step-by-step), starting point (High-level or Detailed), and tone (Formal, Informal, Encouraging, Neutral).\" class=\"wp-image-1157834\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig02-staticprc-1.png 1379w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig02-staticprc-1-300x185.png 300w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig02-staticprc-1-1024x633.png 1024w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig02-staticprc-1-768x475.png 768w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig02-staticprc-1-240x148.png 240w\" sizes=\"auto, (max-width: 1379px) 100vw, 1379px\" \/><figcaption class=\"wp-element-caption\">Figure&nbsp;1: The static PRC&nbsp;interface&nbsp;<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"dynamic-prompt-refinement\">Dynamic prompt refinement<\/h3>\n\n\n\n<p>We built the Dynamic PRC system to automatically produce prompt options and refinements based on the user\u2019s input, presenting them in real time so that users could adjust these controls and guide the AI\u2019s responses more precisely (Figure 2).<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1379\" height=\"915\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig03-dynamicprc-1.png\" alt=\"Alt text: How users interacted with the Dynamic PRC system. (1) shows a user input prompt of \u201cExplain the formula\u201d [with a long Excel formula] (2) Three rows of options relating to this prompt, Explanation Detail Level, Focus Areas, and Learning Objectives, with several options for each, preselected (3) User has modified the preselected options by clicking Troubleshooting under Learning Objectives (4) AI response of an explanation for the formula based on the selected options (5) Session chat control panel with text box that the user adds \"I want to control the structure or format of the response\". (6) Generates 3 option sets based on this input. (7) A new response is generated with the new session options added.\" class=\"wp-image-1157876\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig03-dynamicprc-1.png 1379w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig03-dynamicprc-1-300x199.png 300w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig03-dynamicprc-1-1024x679.png 1024w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig03-dynamicprc-1-768x510.png 768w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig03-dynamicprc-1-240x159.png 240w\" sizes=\"auto, (max-width: 1379px) 100vw, 1379px\" \/><figcaption class=\"wp-element-caption\">Figure&nbsp;2.&nbsp;Interaction flow in&nbsp;the Dynamic PRC system. (1)&nbsp;The&nbsp;user&nbsp;asks&nbsp;the system to explain&nbsp;a long Excel formula.&nbsp;(2)&nbsp;Dynamic PRC generates refinement&nbsp;options:&nbsp;Explanation Detail Level, Focus Areas, and Learning Objectives.&nbsp;(3)&nbsp;The user&nbsp;modifies&nbsp;these&nbsp;options.&nbsp;(4)&nbsp;The&nbsp;AI returns&nbsp;an explanation based on the selected options.&nbsp;(5)&nbsp;In the session chat panel,&nbsp;the user adds&nbsp;a request&nbsp;to control the structure or format of the response.&nbsp;(6)&nbsp;Dynamic PRC generates&nbsp;new&nbsp;option&nbsp;sets based on this input.&nbsp;(7)&nbsp;The&nbsp;AI produces an updated explanation reflecting the&nbsp;newly applied&nbsp;options.&nbsp;<\/figcaption><\/figure>\n\n\n\n\t<div class=\"border-bottom border-top border-gray-300 mt-5 mb-5 msr-promo text-center text-md-left alignwide\" data-bi-aN=\"promo\" data-bi-id=\"1160910\">\n\t\t\n\n\t\t<p class=\"msr-promo__label text-gray-800 text-center text-uppercase\">\n\t\t<span class=\"px-4 bg-white display-inline-block font-weight-semibold small\">video series<\/span>\n\t<\/p>\n\t\n\t<div class=\"row pt-3 pb-4 align-items-center\">\n\t\t\t\t\t\t<div class=\"msr-promo__media col-12 col-md-5\">\n\t\t\t\t<a class=\"bg-gray-300 display-block\" href=\"https:\/\/www.microsoft.com\/en-us\/research\/story\/on-second-thought\/\" aria-label=\"On Second Thought\" data-bi-cN=\"On Second Thought\" target=\"_blank\">\n\t\t\t\t\t<img decoding=\"async\" class=\"w-100 display-block\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2026\/01\/MFST_feature_SecondThought_1400x788.jpg\" alt=\"On Second Thought with Sinead Bovell\" \/>\n\t\t\t\t<\/a>\n\t\t\t<\/div>\n\t\t\t\n\t\t\t<div class=\"msr-promo__content p-3 px-5 col-12 col-md\">\n\n\t\t\t\t\t\t\t\t\t<h2 class=\"h4\">On Second Thought<\/h2>\n\t\t\t\t\n\t\t\t\t\t\t\t\t<p id=\"on-second-thought\" class=\"large\">A video series with Sinead Bovell built around the questions everyone\u2019s asking about AI. With expert voices from across Microsoft, we break down the tension and promise of this rapidly changing technology, exploring what\u2019s evolving and what\u2019s possible.<\/p>\n\t\t\t\t\n\t\t\t\t\t\t\t\t<div class=\"wp-block-buttons justify-content-center justify-content-md-start\">\n\t\t\t\t\t<div class=\"wp-block-button\">\n\t\t\t\t\t\t<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/story\/on-second-thought\/\" aria-describedby=\"on-second-thought\" class=\"btn btn-brand glyph-append glyph-append-chevron-right\" data-bi-cN=\"On Second Thought\" target=\"_blank\">\n\t\t\t\t\t\t\tExplore the series\t\t\t\t\t\t<\/a>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div><!--\/.msr-promo__content-->\n\t<\/div><!--\/.msr-promo__inner-wrap-->\n\t<\/div><!--\/.msr-promo-->\n\t\n\n\n<h2 class=\"wp-block-heading\" id=\"findings\">Findings<\/h2>\n\n\n\n<p>Participants consistently reported that dynamic controls made it easier to express the nuances of their tasks without repeatedly rephrasing their prompts. This reduced the effort of prompt engineering and allowed users to focus more on understanding content than managing the mechanics of phrasing.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"627\" height=\"313\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig04-plotpreferences-1.png\" alt=\"Alt text: Box plot chart titled \u201cDynamic vs Static PRC: Which tool\u2026\u201d, comparing user responses to six questions about preference, mental demand, feeling rushed, success, effort, and annoyance. Y-axis ranges from 1 (Dynamic) to 7 (Static), with 4 marked as Equal. Each question is represented by a box plot showing response distribution, median, and variability, illustrating perceived differences between dynamic and static PRC tools.\" class=\"wp-image-1157879\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig04-plotpreferences-1.png 627w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig04-plotpreferences-1-300x150.png 300w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig04-plotpreferences-1-240x120.png 240w\" sizes=\"auto, (max-width: 627px) 100vw, 627px\" \/><figcaption class=\"wp-element-caption\">Figure&nbsp;3.&nbsp;Comparison of&nbsp;user&nbsp;preferences for Static&nbsp;PRC&nbsp;versus&nbsp;Dynamic PRC&nbsp;across key evaluation criteria.&nbsp;<\/figcaption><\/figure>\n\n\n\n<p>Contextual options prompted users to try refinements they might not have considered on their own. This behavior suggests that Dynamic PRC can broaden how users engage with AI explanations, helping them uncover new ways to approach tasks beyond their initial intent. Beyond exploration, the dynamic controls prompted participants to think more deliberately about their goals. Options like &#8220;Learning Objective&#8221; and &#8220;Response Format&#8221; helped them clarify what they needed, whether guidance on applying a concept or step-by-step troubleshooting help.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"627\" height=\"358\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig05-ploteffectiveness-1.png\" alt=\"Alt text: Box plot chart titled \u201cDynamic vs Static PRC: Control Effectiveness,\u201d comparing user agreement with four statements about AI control tools. Each statement has two box plots\u2014blue for Dynamic and orange for Static\u2014showing response distributions on a 1 (Strongly Disagree) to 7 (Strongly Agree) Likert scale. Statements assess perceived control over AI output, usefulness for understanding, desire for more control, and clarity of control functions.\" class=\"wp-image-1157883\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig05-ploteffectiveness-1.png 627w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig05-ploteffectiveness-1-300x171.png 300w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig05-ploteffectiveness-1-240x137.png 240w\" sizes=\"auto, (max-width: 627px) 100vw, 627px\" \/><figcaption class=\"wp-element-caption\">Figure 4.&nbsp;Participant ratings comparing the&nbsp;effectiveness of Static PRC and&nbsp;Dynamic PRC&nbsp;<\/figcaption><\/figure>\n\n\n\n<p>While participants valued Dynamic PRC\u2019s adaptability, they also found it more difficult to interpret. Some struggled to anticipate how a selected option would influence the response, noting that the controls seemed opaque because the effect became clear only after the output appeared.<\/p>\n\n\n\n<p>However,&nbsp;the&nbsp;overall&nbsp;positive response&nbsp;to&nbsp;Dynamic PRC&nbsp;showed us that Promptions&nbsp;could&nbsp;be&nbsp;broadly useful,&nbsp;leading&nbsp;us to share it&nbsp;with the developer\u202fcommunity.\u202f\u202f\u202f&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"technical-design\">Technical design<\/h3>\n\n\n\n<p>Promptions works as a lightweight middleware layer that sits between the user and the underlying language model (Figure 5). It has two main components:<\/p>\n\n\n\n<p><strong>Option Module<\/strong>. This module reviews the user\u2019s prompt and conversation history, then generates a set of refinement options. These are presented as interactive UI elements (radio buttons, checkboxes, text fields) that directly shape how the AI interprets the prompt.<\/p>\n\n\n\n<p><strong>Chat&nbsp;Module.<\/strong>&nbsp;This module&nbsp;produces the&nbsp;AI\u2019s response based&nbsp;on the refined prompt.&nbsp;When&nbsp;a user changes an option,&nbsp;the&nbsp;response&nbsp;immediately&nbsp;updates,&nbsp;making the interaction feel more like an&nbsp;evolving&nbsp;conversation&nbsp;than&nbsp;a cycle of&nbsp;repeated prompts.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"524\" height=\"547\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig07-systemflow-1.png\" alt=\"Alt text: The Promptions system model. (1) The Option Module ingests the user\u2019s prompt input along with the conversation history. (2) It then outputs a set of prompt options, each initialized based on the content of the prompt. (3) These options are rendered inline via a dedicated rendering engine. (4) The Chat Module incorporates the refined options as grounding, alongside the original prompt and conversation history, to generate a chat response. (5) The user can modify the GUI controls, which updates the refinements and triggers the Chat Module to regenerate the current response accordingly.\" class=\"wp-image-1157886\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig07-systemflow-1.png 524w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig07-systemflow-1-287x300.png 287w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/blog-fig07-systemflow-1-172x180.png 172w\" sizes=\"auto, (max-width: 524px) 100vw, 524px\" \/><figcaption class=\"wp-element-caption\">Figure&nbsp;5.&nbsp;Promptions&nbsp;middleware workflow. (1) The Option Module&nbsp;reads&nbsp;the user\u2019s prompt&nbsp;and&nbsp;conversation history&nbsp;and&nbsp;(2)&nbsp;generates&nbsp;prompt options. (3) These options are&nbsp;rendered&nbsp;inline&nbsp;by&nbsp;a dedicated&nbsp;component. (4) The Chat Module incorporates these&nbsp;refined options alongside the original prompt and history to&nbsp;produce&nbsp;a response.&nbsp;(5)&nbsp;When the user&nbsp;adjusts&nbsp;the&nbsp;controls,&nbsp;the&nbsp;refinements&nbsp;update&nbsp;and the Chat Module regenerates&nbsp;the response accordingly.<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"adding-promptions-to-an-application\">Adding Promptions to an application<\/h3>\n\n\n\n<p>Promptions\u00a0easily\u00a0integrates\u00a0into\u00a0any conversational chat interface.\u00a0Developers only need to add a\u00a0component\u00a0to display the\u00a0options and connect it to the\u00a0AI system.\u00a0There&#8217;s\u00a0no need to store\u00a0date\u00a0between sessions, which keeps implementation simple.\u00a0The\u00a0<a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" href=\"https:\/\/labs.ai.azure.com\/projects\/promptions\/\" target=\"_blank\" rel=\"noopener noreferrer\">Microsoft Foundry Labs<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>\u00a0repository\u00a0includes\u00a0two sample applications,\u00a0a generic chatbot and an image generator,\u00a0that\u00a0demonstrate\u00a0this design in practice.\u00a0\u00a0<\/p>\n\n\n\n<p>Promptions is well-suited for interfaces where users need to provide context but don\u2019t want to write it all out. Instead of typing lengthy explanations, they can adjust the controls that guide the AI\u2019s response to match their preferences.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"questions-for-further-exploration\">Questions for further exploration<\/h2>\n\n\n\n<p>Promptions raises important questions for future research. Key usability challenges include clarifying how dynamic options affect AI output and managing the complexity of multiple controls. Other questions involve balancing immediate adjustments with persistent settings and enabling users to share options collaboratively.<\/p>\n\n\n\n<p>On the technical side, questions focus on generating more effective options, validating and customizing dynamic interfaces, gathering relevant context automatically, and supporting the ability to save and share option sets across sessions.<\/p>\n\n\n\n<p>\u00a0These\u00a0questions, along with\u00a0broader\u00a0considerations\u00a0of\u00a0collaboration, ethics, security, and scalability,\u00a0are\u00a0guiding our ongoing work on\u00a0Promptions\u00a0and related systems.<\/p>\n\n\n\n<div class=\"annotations \" data-bi-aN=\"margin-callout\">\n\t<article class=\"annotations__list card depth-16 bg-body p-4 annotations__list--right\">\n\t\t<div class=\"annotations__list-item\">\n\t\t\t\t\t\t<span class=\"annotations__type d-block text-uppercase font-weight-semibold text-neutral-300 small\">Tool<\/span>\n\t\t\t<a href=\"https:\/\/labs.ai.azure.com\/projects\/promptions\/\" data-bi-cN=\"Explore Promptions on Microsoft Foundry Labs\" target=\"_blank\" rel=\"noopener noreferrer\" data-external-link=\"true\" data-bi-aN=\"margin-callout\" data-bi-type=\"annotated-link\" class=\"annotations__link font-weight-semibold text-decoration-none\"><span>Explore Promptions on Microsoft Foundry Labs<\/span>&nbsp;<span class=\"glyph-in-link glyph-append glyph-append-open-in-new-tab\" aria-hidden=\"true\"><\/span><\/a>\t\t\t\t\t<\/div>\n\t<\/article>\n<\/div>\n\n\n\n<p>By making Promptions open source, we hope to help developers create smarter, more responsive AI experiences.<\/p>\n\n\n\n<p><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"https:\/\/labs.ai.azure.com\/projects\/promptions\/\">Explore Promptions on Microsoft Foundry Labs<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Promptions helps developers add dynamic, context-aware controls to chat interfaces so users can guide generative AI responses. It lets users shape outputs quickly without writing long instructions.<\/p>\n","protected":false},"author":43868,"featured_media":1157946,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"msr-url-field":"","msr-podcast-episode":"","msrModifiedDate":"","msrModifiedDateEnabled":false,"ep_exclude_from_search":false,"_classifai_error":"","msr-author-ordering":null,"msr_hide_image_in_river":null,"footnotes":""},"categories":[1],"tags":[],"research-area":[13556,13554,13559],"msr-region":[],"msr-event-type":[],"msr-locale":[268875],"msr-post-option":[269148,243984,269142,269145],"msr-impact-theme":[],"msr-promo-type":[],"msr-podcast-series":[],"class_list":["post-1157824","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-research-blog","msr-research-area-artificial-intelligence","msr-research-area-human-computer-interaction","msr-research-area-social-sciences","msr-locale-en_us","msr-post-option-approved-for-river","msr-post-option-blog-homepage-featured","msr-post-option-include-in-river","msr-post-option-pinned-for-river"],"msr_event_details":{"start":"","end":"","location":""},"podcast_url":"","podcast_episode":"","msr_research_lab":[199561],"msr_impact_theme":[],"related-publications":[],"related-downloads":[],"related-videos":[],"related-academic-programs":[],"related-groups":[1142579],"related-projects":[1151473,1053711,717493],"related-events":[],"related-researchers":[{"type":"user_nicename","value":"Sean Rintel","user_id":33579,"display_name":"Sean Rintel","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/serintel\/\" aria-label=\"Visit the profile page for Sean Rintel\">Sean Rintel<\/a>","is_active":false,"last_first":"Rintel, Sean","people_section":0,"alias":"serintel"},{"type":"user_nicename","value":"Advait Sarkar","user_id":37146,"display_name":"Advait Sarkar","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/advait\/\" aria-label=\"Visit the profile page for Advait Sarkar\">Advait Sarkar<\/a>","is_active":false,"last_first":"Sarkar, Advait","people_section":0,"alias":"advait"},{"type":"user_nicename","value":"Jack Williams","user_id":40156,"display_name":"Jack Williams","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/johnwilliams\/\" aria-label=\"Visit the profile page for Jack Williams\">Jack Williams<\/a>","is_active":false,"last_first":"Williams, Jack","people_section":0,"alias":"johnwilliams"},{"type":"user_nicename","value":"Nicholas Wilson","user_id":38586,"display_name":"Nicholas Wilson","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/niwilson\/\" aria-label=\"Visit the profile page for Nicholas Wilson\">Nicholas Wilson<\/a>","is_active":false,"last_first":"Wilson, Nicholas","people_section":0,"alias":"niwilson"},{"type":"user_nicename","value":"Richard Banks","user_id":33361,"display_name":"Richard Banks","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/rbanks\/\" aria-label=\"Visit the profile page for Richard Banks\">Richard Banks<\/a>","is_active":false,"last_first":"Banks, Richard","people_section":0,"alias":"rbanks"},{"type":"user_nicename","value":"Neeltje Berger","user_id":36801,"display_name":"Neeltje Berger","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/neberger\/\" aria-label=\"Visit the profile page for Neeltje Berger\">Neeltje Berger<\/a>","is_active":false,"last_first":"Berger, Neeltje","people_section":0,"alias":"neberger"},{"type":"guest","value":"philipp-steinacher","user_id":"1158032","display_name":"Philipp Steinacher","author_link":"<a href=\"https:\/\/www.linkedin.com\/in\/psteinacher\/\" aria-label=\"Visit the profile page for Philipp Steinacher\">Philipp Steinacher<\/a>","is_active":true,"last_first":"Steinacher, Philipp","people_section":0,"alias":"philipp-steinacher"},{"type":"user_nicename","value":"Payod Panda","user_id":44104,"display_name":"Payod Panda","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/payodpanda\/\" aria-label=\"Visit the profile page for Payod Panda\">Payod Panda<\/a>","is_active":false,"last_first":"Panda, Payod","people_section":0,"alias":"payodpanda"},{"type":"guest","value":"ian-drosos","user_id":"1150918","display_name":"Ian Drosos","author_link":"<a href=\"https:\/\/www.iandrosos.me\/\" aria-label=\"Visit the profile page for Ian Drosos\">Ian Drosos<\/a>","is_active":true,"last_first":"Drosos, Ian","people_section":0,"alias":"ian-drosos"}],"msr_type":"Post","featured_image_thumbnail":"<img width=\"960\" height=\"540\" src=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-960x540.jpg\" class=\"img-object-cover\" alt=\"Three white line icons on a blue-to-green gradient background: a hub-and-spoke network symbol on the left, a laptop with a user icon in the center, and a connected group of three user icons on the right.\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-960x540.jpg 960w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-300x169.jpg 300w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-1024x576.jpg 1024w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-768x432.jpg 768w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-1066x600.jpg 1066w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-655x368.jpg 655w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-240x135.jpg 240w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-640x360.jpg 640w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1-1280x720.jpg 1280w, https:\/\/www.microsoft.com\/en-us\/research\/wp-content\/uploads\/2025\/12\/Promptions-BlogHeroFeature-1400x788-1.jpg 1400w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/>","byline":"","formattedDate":"December 10, 2025","formattedExcerpt":"Promptions helps developers add dynamic, context-aware controls to chat interfaces so users can guide generative AI responses. It lets users shape outputs quickly without writing long instructions.","locale":{"slug":"en_us","name":"English","native":"","english":"English"},"_links":{"self":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/1157824","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/users\/43868"}],"replies":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/comments?post=1157824"}],"version-history":[{"count":53,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/1157824\/revisions"}],"predecessor-version":[{"id":1162794,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/posts\/1157824\/revisions\/1162794"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media\/1157946"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media?parent=1157824"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/categories?post=1157824"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/tags?post=1157824"},{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=1157824"},{"taxonomy":"msr-region","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-region?post=1157824"},{"taxonomy":"msr-event-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-event-type?post=1157824"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=1157824"},{"taxonomy":"msr-post-option","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-post-option?post=1157824"},{"taxonomy":"msr-impact-theme","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-impact-theme?post=1157824"},{"taxonomy":"msr-promo-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-promo-type?post=1157824"},{"taxonomy":"msr-podcast-series","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-podcast-series?post=1157824"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}