Back to compare picker

Regenerate / retry vs Retry vs Chat interface vs Streaming response vs Prompt box vs Editable AI output

Use regenerate / retry for response-level AI reruns, new answer versions, same-prompt retry, partial-output continuation, source retry, and tool retry with prompt, context, source, model, and version preservation; retry for non-AI failed operations; chat interface for the whole transcript; streaming response for live partial output; prompt box for request editing before generation; and editable AI output for manually revising generated drafts after creation.

Learn the decision

Match the interaction to the person's task

Use regenerate / retry for response-level AI reruns, new answer versions, same-prompt retry, partial-output continuation, source retry, and tool retry with prompt, context, source, model, and version preservation; retry for non-AI failed operations; chat interface for the whole transcript; streaming response for live partial output; prompt box for request editing before generation; and editable AI output for manually revising generated drafts after creation.

Regenerate / retry

Use it when: A user needs another AI-generated answer for the same request or a visible recovery path after response failure.

Make this state clear: Initial answer state with prompt snapshot, response version, source scope, model or mode, and available regenerate or retry controls.

Observe the result: A user sees answer v1 has stale citations, chooses Regenerate with refreshed sources, compares v1 and v2, then restores v1 because v2 lost a required caveat.

Study the full pattern →

Retry

Use it when: A load, save, submit, upload, export, sync, payment, or background request failed for a transient or uncertain reason.

Make this state clear: Retryable failed state with affected operation, object, and preserved request context.

Observe the result: A second failure increases the wait before the next attempt and then offers cached export, background notification, or support reference after attempts are exhausted.

Study the full pattern →

Chat interface

Use it when: The user needs a back-and-forth assistant conversation with follow-up questions and answer refinement.

Make this state clear: Empty new chat with conversation title, mode, history or retention status, and a labelled composer.

Observe the result: A user asks for a policy summary, follows up with Compare that to the renewal clause, sees that the second answer used the first answer and selected file, then exports the two-turn transcript.

Study the full pattern →

Streaming response

Use it when: Generated text or structured content can be read or monitored before completion.

Make this state clear: Queued or receiving state before first output arrives.

Observe the result: A user sees the first-token state quickly, reads early outline bullets while the answer continues, stops generation after enough detail, and sees the result labelled Partial with Continue and Regenerate options.

Study the full pattern →

Prompt box

Use it when: Users must write or revise an AI request before generation, analysis, transformation, or automation begins.

Make this state clear: Typing state with expandable multi-line draft, send affordance, newline behavior, and character or token boundary feedback.

Observe the result: A user selects a policy paragraph, writes Summarize risks for a non-lawyer, sees Selected text and Output: bullets chips, submits, then edits and resends the exact prompt after the first answer is too broad.

Study the full pattern →

Editable AI output

Use it when: Generated content is expected to be revised before it is copied, saved, sent, published, or applied.

Make this state clear: Generated draft state with original generated content, creation time, model or run reference, and source coverage visible.

Observe the result: A reviewer changes one sentence, sees it marked as user edited, accepts the tracked change, reviews a stale source warning, and applies the output only after unsupported text is resolved.

Study the full pattern →

Practice the judgment: Imagine this situation: A single Try again button hides whether the product repeats the same prompt, edits the prompt, continues partial output, retries tools, refreshes sources, or creates an alternate answer. Write the person's goal, choose one of these patterns, and show the state that helps the person continue. Use the decision rules and source trail below to explain your choice.

Review the underlying principle →

Decision dimensions

Dimension Regenerate / retryRetryChat interfaceStreaming responsePrompt boxEditable AI output
UI or UX UI + UX - AI response regeneration and same-turn retry control with version and context preservationUI + UX - Scoped failed-operation retry controlUI + UX - Multi-turn conversation surface with transcript, composer, assistant responses, and conversation historyUI + UX - Incremental generated-output surface that renders response chunks before final completionUI + UX - Primary editable input surface for composing and submitting an AI requestUI + UX - Editable generated draft with provenance, review, and apply controls
UI guidance Render regenerate / retry as a response-level control that names whether it will rerun the same prompt, continue after failure, regenerate a new answer version, or retry failed tool and source work.Place Retry next to the failed operation, object, or request summary, and name the exact action being retried such as Retry export or Retry payment authorization.Render chat as an ordered transcript with visible user and assistant roles, turn boundaries, timestamps or relative position, current draft composer, submitted prompt, response status, source or tool indicators, and conversation-level controls.Render streamed output with a visible generation state, partial-answer label, stop control, final-complete state, and clear distinction between text that is still arriving and content that has passed final citation, safety, tool, or format checks.Render the prompt box as a labelled, editable composer with visible draft area, send control, context chips, attachment controls, model or mode indicator when relevant, character or token boundary feedback, and clear disabled or blocked-send reasons.Render editable AI output as a generated draft with a clear boundary between original generated text, user-edited text, tracked changes, source mapping, citation preservation, and final applied output.
UX guidance Use regenerate / retry when users need another AI attempt for the same submitted request, or need recovery from a failed, stopped, low-quality, stale, blocked, or partially generated response.Help the person reach a clear task outcome.Use a chat interface when users need a multi-turn assistant conversation where later prompts can depend on earlier turns, responses can be inspected or continued, and conversation history can be saved, resumed, deleted, or limited by policy.Use a streaming response when showing partial generated output helps users start reading or monitoring work before the model finishes, and when the product can explain that early chunks may still change, be filtered, or lack final sources.Use a prompt box when users need to author a natural-language request for AI generation, transformation, analysis, or automation and must remain in control of the exact request being submitted.Use editable AI output when users need to revise generated content after creation while retaining provenance, citations, source coverage, and a deliberate apply or save contract.
Good UI A chat answer shows Regenerate answer, Retry failed sources, and Compare versions with the original prompt, source scope, model, and tool changes visible.A report export card says Export CSV failed, keeps the saved filters visible, shows Attempt 1 of 3, and offers Retry export with request EXP-2048.A research assistant chat shows user and assistant bubbles, turn numbers, source chips, streaming status, Stop, Copy answer, Regenerate, New chat, and a conversations list with the active chat title.A policy assistant shows Answer generating, streams paragraphs into a stable answer region, marks citations pending, exposes Stop generation, then changes to Complete when citations and safety checks finish.A prompt box expands for a multi-line request, shows Shift+Enter for newline, Enter to send only when configured, and keeps the draft after a failed model request.A policy assistant shows a generated draft answer with citation chips, user-edited spans, tracked change controls, source mapping indicators, and Apply output disabled until unsupported edits are reviewed.
Bad UI A Try again button silently changes the prompt, model, sources, and tools, then overwrites the previous answer and citations.Retry creates duplicate records, payments, invitations, exports, or queued jobs.A conversation auto-scrolls to a new answer while the user is reading an older cited turn, then hides the old prompt after regenerate.A streaming JSON answer is displayed as valid data before the closing braces and schema check have completed.A blank AI field shows only Ask me anything and sends vague requests with hidden page context.Citations vanish or remain attached to unsupported edited claims.
Good UX A user sees answer v1 has stale citations, chooses Regenerate with refreshed sources, compares v1 and v2, then restores v1 because v2 lost a required caveat.A second failure increases the wait before the next attempt and then offers cached export, background notification, or support reference after attempts are exhausted.A user asks for a policy summary, follows up with Compare that to the renewal clause, sees that the second answer used the first answer and selected file, then exports the two-turn transcript.A user sees the first-token state quickly, reads early outline bullets while the answer continues, stops generation after enough detail, and sees the result labelled Partial with Continue and Regenerate options.A user selects a policy paragraph, writes Summarize risks for a non-lawyer, sees Selected text and Output: bullets chips, submits, then edits and resends the exact prompt after the first answer is too broad.A reviewer changes one sentence, sees it marked as user edited, accepts the tracked change, reviews a stale source warning, and applies the output only after unsupported text is resolved.
Bad UX Changed source scope, model, tools, or context are hidden between versions.The app retries aggressively every second during an outage and makes the service harder to recover.Latest answer is disconnected from the prompt and context that produced it.A user copies an early legal recommendation before the final paragraph reverses the conclusion after a tool result arrives.A user presses Enter expecting a new line and accidentally sends an unfinished prompt to an external model.Citations vanish or remain attached to unsupported edited claims.
Best fit A user needs another AI-generated answer for the same request or a visible recovery path after response failure.A load, save, submit, upload, export, sync, payment, or background request failed for a transient or uncertain reason.The user needs a back-and-forth assistant conversation with follow-up questions and answer refinement.Generated text or structured content can be read or monitored before completion.Users must write or revise an AI request before generation, analysis, transformation, or automation begins.Generated content is expected to be revised before it is copied, saved, sent, published, or applied.
Avoid when The task is a simple non-AI operation retry already covered by the Retry pattern.The error is caused by invalid user input and correction is required.The task can be completed with a single structured prompt box, form, or command.Intermediate chunks may expose unsafe, private, or misleading content.The task is better expressed as a fixed form, button, or command with known parameters.Users only need to write or revise the request before generation.
Required state Initial answer state with prompt snapshot, response version, source scope, model or mode, and available regenerate or retry controls.Retryable failed state with affected operation, object, and preserved request context.Empty new chat with conversation title, mode, history or retention status, and a labelled composer.Queued or receiving state before first output arrives.Typing state with expandable multi-line draft, send affordance, newline behavior, and character or token boundary feedback.Generated draft state with original generated content, creation time, model or run reference, and source coverage visible.
Accessibility burden Expose same prompt, changed context, regenerating, retrying, version created, compare available, cooldown, exhausted, blocked, and restored states as text.Expose pending, failed again, cooldown, succeeded, exhausted, and non-retryable outcomes through status text or live regions.Expose the transcript as an ordered region and use a sequential update strategy such as role=log for appended messages where appropriate.Expose stream milestones such as started, still generating, stopped, failed, citation ready, and complete as status messages.Provide a programmatic label for the prompt editor and named controls for send, attach, remove context, clear, retry, and cancel.Expose generated draft, user edited, tracked change, unsupported edit, unsafe edit, stale source, review required, accepted, rejected, saved, copied, regenerated, and applied states as text.
Common misuse Using one Try again button for same-prompt retry, prompt edit, tool retry, source refresh, and alternate answer generation.Offering Retry for every error regardless of whether the user or system state can change.Auto-scrolling during streaming while the user is reading an older message.Letting partial output look finished before the final event arrives.Showing Ask anything as the only instruction while hiding what sources and tools the model can use.Dropping all citations when one paragraph is edited.

Regenerate / retry

UI or UX
UI + UX - AI response regeneration and same-turn retry control with version and context preservation
UI guidance
Render regenerate / retry as a response-level control that names whether it will rerun the same prompt, continue after failure, regenerate a new answer version, or retry failed tool and source work.
UX guidance
Use regenerate / retry when users need another AI attempt for the same submitted request, or need recovery from a failed, stopped, low-quality, stale, blocked, or partially generated response.
Good UI
A chat answer shows Regenerate answer, Retry failed sources, and Compare versions with the original prompt, source scope, model, and tool changes visible.
Bad UI
A Try again button silently changes the prompt, model, sources, and tools, then overwrites the previous answer and citations.
Good UX
A user sees answer v1 has stale citations, chooses Regenerate with refreshed sources, compares v1 and v2, then restores v1 because v2 lost a required caveat.
Bad UX
Changed source scope, model, tools, or context are hidden between versions.
Best fit
A user needs another AI-generated answer for the same request or a visible recovery path after response failure.
Avoid when
The task is a simple non-AI operation retry already covered by the Retry pattern.
Required state
Initial answer state with prompt snapshot, response version, source scope, model or mode, and available regenerate or retry controls.
Accessibility burden
Expose same prompt, changed context, regenerating, retrying, version created, compare available, cooldown, exhausted, blocked, and restored states as text.
Common misuse
Using one Try again button for same-prompt retry, prompt edit, tool retry, source refresh, and alternate answer generation.

Retry

UI or UX
UI + UX - Scoped failed-operation retry control
UI guidance
Place Retry next to the failed operation, object, or request summary, and name the exact action being retried such as Retry export or Retry payment authorization.
UX guidance
Help the person reach a clear task outcome.
Good UI
A report export card says Export CSV failed, keeps the saved filters visible, shows Attempt 1 of 3, and offers Retry export with request EXP-2048.
Bad UI
Retry creates duplicate records, payments, invitations, exports, or queued jobs.
Good UX
A second failure increases the wait before the next attempt and then offers cached export, background notification, or support reference after attempts are exhausted.
Bad UX
The app retries aggressively every second during an outage and makes the service harder to recover.
Best fit
A load, save, submit, upload, export, sync, payment, or background request failed for a transient or uncertain reason.
Avoid when
The error is caused by invalid user input and correction is required.
Required state
Retryable failed state with affected operation, object, and preserved request context.
Accessibility burden
Expose pending, failed again, cooldown, succeeded, exhausted, and non-retryable outcomes through status text or live regions.
Common misuse
Offering Retry for every error regardless of whether the user or system state can change.

Chat interface

UI or UX
UI + UX - Multi-turn conversation surface with transcript, composer, assistant responses, and conversation history
UI guidance
Render chat as an ordered transcript with visible user and assistant roles, turn boundaries, timestamps or relative position, current draft composer, submitted prompt, response status, source or tool indicators, and conversation-level controls.
UX guidance
Use a chat interface when users need a multi-turn assistant conversation where later prompts can depend on earlier turns, responses can be inspected or continued, and conversation history can be saved, resumed, deleted, or limited by policy.
Good UI
A research assistant chat shows user and assistant bubbles, turn numbers, source chips, streaming status, Stop, Copy answer, Regenerate, New chat, and a conversations list with the active chat title.
Bad UI
A conversation auto-scrolls to a new answer while the user is reading an older cited turn, then hides the old prompt after regenerate.
Good UX
A user asks for a policy summary, follows up with Compare that to the renewal clause, sees that the second answer used the first answer and selected file, then exports the two-turn transcript.
Bad UX
Latest answer is disconnected from the prompt and context that produced it.
Best fit
The user needs a back-and-forth assistant conversation with follow-up questions and answer refinement.
Avoid when
The task can be completed with a single structured prompt box, form, or command.
Required state
Empty new chat with conversation title, mode, history or retention status, and a labelled composer.
Accessibility burden
Expose the transcript as an ordered region and use a sequential update strategy such as role=log for appended messages where appropriate.
Common misuse
Auto-scrolling during streaming while the user is reading an older message.

Streaming response

UI or UX
UI + UX - Incremental generated-output surface that renders response chunks before final completion
UI guidance
Render streamed output with a visible generation state, partial-answer label, stop control, final-complete state, and clear distinction between text that is still arriving and content that has passed final citation, safety, tool, or format checks.
UX guidance
Use a streaming response when showing partial generated output helps users start reading or monitoring work before the model finishes, and when the product can explain that early chunks may still change, be filtered, or lack final sources.
Good UI
A policy assistant shows Answer generating, streams paragraphs into a stable answer region, marks citations pending, exposes Stop generation, then changes to Complete when citations and safety checks finish.
Bad UI
A streaming JSON answer is displayed as valid data before the closing braces and schema check have completed.
Good UX
A user sees the first-token state quickly, reads early outline bullets while the answer continues, stops generation after enough detail, and sees the result labelled Partial with Continue and Regenerate options.
Bad UX
A user copies an early legal recommendation before the final paragraph reverses the conclusion after a tool result arrives.
Best fit
Generated text or structured content can be read or monitored before completion.
Avoid when
Intermediate chunks may expose unsafe, private, or misleading content.
Required state
Queued or receiving state before first output arrives.
Accessibility burden
Expose stream milestones such as started, still generating, stopped, failed, citation ready, and complete as status messages.
Common misuse
Letting partial output look finished before the final event arrives.

Prompt box

UI or UX
UI + UX - Primary editable input surface for composing and submitting an AI request
UI guidance
Render the prompt box as a labelled, editable composer with visible draft area, send control, context chips, attachment controls, model or mode indicator when relevant, character or token boundary feedback, and clear disabled or blocked-send reasons.
UX guidance
Use a prompt box when users need to author a natural-language request for AI generation, transformation, analysis, or automation and must remain in control of the exact request being submitted.
Good UI
A prompt box expands for a multi-line request, shows Shift+Enter for newline, Enter to send only when configured, and keeps the draft after a failed model request.
Bad UI
A blank AI field shows only Ask me anything and sends vague requests with hidden page context.
Good UX
A user selects a policy paragraph, writes Summarize risks for a non-lawyer, sees Selected text and Output: bullets chips, submits, then edits and resends the exact prompt after the first answer is too broad.
Bad UX
A user presses Enter expecting a new line and accidentally sends an unfinished prompt to an external model.
Best fit
Users must write or revise an AI request before generation, analysis, transformation, or automation begins.
Avoid when
The task is better expressed as a fixed form, button, or command with known parameters.
Required state
Typing state with expandable multi-line draft, send affordance, newline behavior, and character or token boundary feedback.
Accessibility burden
Provide a programmatic label for the prompt editor and named controls for send, attach, remove context, clear, retry, and cancel.
Common misuse
Showing Ask anything as the only instruction while hiding what sources and tools the model can use.

Editable AI output

UI or UX
UI + UX - Editable generated draft with provenance, review, and apply controls
UI guidance
Render editable AI output as a generated draft with a clear boundary between original generated text, user-edited text, tracked changes, source mapping, citation preservation, and final applied output.
UX guidance
Use editable AI output when users need to revise generated content after creation while retaining provenance, citations, source coverage, and a deliberate apply or save contract.
Good UI
A policy assistant shows a generated draft answer with citation chips, user-edited spans, tracked change controls, source mapping indicators, and Apply output disabled until unsupported edits are reviewed.
Bad UI
Citations vanish or remain attached to unsupported edited claims.
Good UX
A reviewer changes one sentence, sees it marked as user edited, accepts the tracked change, reviews a stale source warning, and applies the output only after unsupported text is resolved.
Bad UX
Citations vanish or remain attached to unsupported edited claims.
Best fit
Generated content is expected to be revised before it is copied, saved, sent, published, or applied.
Avoid when
Users only need to write or revise the request before generation.
Required state
Generated draft state with original generated content, creation time, model or run reference, and source coverage visible.
Accessibility burden
Expose generated draft, user edited, tracked change, unsupported edit, unsafe edit, stale source, review required, accepted, rejected, saved, copied, regenerated, and applied states as text.
Common misuse
Dropping all citations when one paragraph is edited.
Decision rules
  • Choose regenerate / retry when users need response-level AI reruns: retry same prompt, regenerate answer, new answer versions, continue partial output, partial-output continuation, retry failed sources, source retry, retry failed tools, tool retry, compare versions, restore previous answer, or keep both generated versions.
  • Choose retry when the object is a non-AI failed operation or non-ai failed operations such as export, upload, payment, save, sync, submit, or connection check and the same request scope can be repeated safely.
  • Choose chat interface when the problem is the whole transcript, full multi-turn transcript, conversation history, conversation identity, composer, turn order, retention, and conversation-level controls.
  • Choose streaming response when users need live partial output or partial generated output while events arrive before a response has failed, stopped, or completed.
  • Choose prompt box when users need request editing before generation, attaching context, changing instructions, or resending a revised prompt instead of rerunning the submitted prompt.
  • Choose editable AI output when users are manually revising generated drafts or generated content after creation and must preserve user edits, source mapping, citation preservation, tracked changes, and apply controls.
  • Regenerate / retry must show prompt snapshot, response version, previous answer, new answer, attempt count, cooldown, source scope, tool scope, model settings, changed context, same context, and version comparison when those values affect the result.
  • Use no-tool rerun, retry failed tool, retry failed source, refreshed source, same sources, changed model, and changed prompt labels instead of hiding these differences in final answer text.
  • Block or replace regenerate / retry when rate limit, quota exhausted, permission denied, safety blocked, non-retryable failure, manual edits present, or side-effecting tool risk makes repetition dishonest or unsafe.
  • Do not replace regenerate / retry with a vague Try again button, silent overwrite, hidden prompt edit, automatic retry loop, latest-only chat answer, or ordinary operation retry.
Inspect live examples
Failure modes
  • A single Try again button hides whether the product repeats the same prompt, edits the prompt, continues partial output, retries tools, refreshes sources, or creates an alternate answer.
  • Regeneration overwrites the previous answer, citations, partial output, copied state, review comments, or manual edits without compare or restore.
  • Changed model, changed source scope, changed context, or changed tools are invisible between answer versions.
  • The UI retries a rate-limited, safety-blocked, permission-denied, quota-exhausted, or non-retryable AI response in a loop.
  • A side-effecting tool runs twice because answer regeneration and tool retry are not separated.
  • Prompt box, streaming response, chat interface, or editable AI output is used as a substitute for explicit answer version and retry controls.

Saved items