为 AI 应用设计用户体验信任、透明与协作反馈的实战方法 —— generative-ai-for-beginners 第 12 课【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners本篇技术指南聚焦 generative-ai-for-beginners 课程中的第 12 课《Designing UX for AI Applications》原文见 12-designing-ux-for-ai-applications/README.md讲解如何从用户可用性、可靠性、可访问性、愉悦感四个维度设计生成式 AI 应用的用户体验并通过可解释性 控制建立信任、通过反馈循环 错误处理支撑人机协作。读完本文你能掌握一套可落地的 AI 应用 UX 设计检查清单并能结合本仓库中真实存在的输入校验、安全请求等共享代码把友好报错、用户可控、反馈闭环这些设计原则落实到工程实现中。1. 什么是 UX为什么 AI 应用要专门设计它用户经验User Experience, UX指用户与某个产品、服务——无论它是系统、工具还是设计——交互并使用它的方式。在开发 AI 应用时开发者不仅要保证用户体验是有效的effective还要保证它是合乎伦理的ethical。本课的核心目标是构建真正满足用户需求的 AI 应用。课程覆盖三大板块UX 介绍与理解用户需求Understanding User Needs面向信任与透明的 AI 应用设计Trust and Transparency面向协作与反馈的 AI 应用设计Collaboration and Feedback。学完本节你应当能够理解如何构建满足用户需求的 AI 应用设计出能促进信任与协作的 AI 应用。前置知识方面课程建议先花一点时间了解 UX 与设计思维design thinking的基础概念再进入本课内容。2. 理解用户需求从教育初创公司案例出发的四类质量属性课程用一个虚构的教育初创公司fictitious education startup作为贯穿案例。它有两类主要用户教师teachers与学生students两类用户各有独特需求。以用户为中心的设计user-centered design把用户放在优先位置确保产品对相关人群是相关的、有益的。课程的结论是一个提供良好的用户体验的应用应当同时做到有用useful、可靠reliable、可访问accessible、愉悦pleasant。下面逐一拆解。2.1 有用性Usability有用意味着应用具备与其既定目的相匹配的功能。在教育场景下典型例子包括自动化评分流程应用应能依据预定义标准准确、高效地给学生作业打分生成复习卡片flashcards应用应能基于其数据生成相关且多样化的题目。也就是说功能必须对齐目标用途而不是堆砌与目标无关的 AI 能力。2.2 可靠性Reliability可靠意味着应用能持续、无错误地完成其任务。但 AI 和人一样并不完美可能出错。应用会遇到错误和意外情况这些情况可能需要人工介入或修正。课程在此抛出一个关键问题——你如何处理错误——并在课程最后一部分给出答案将 AI 系统按为协作与反馈而设计的思路来构建。本仓库的共享工具模块为可靠性提供了工程层面的佐证。从源码结构看shared/python/api_utils.py 中的make_safe_request封装了带超时与重试的安全 HTTP 请求默认timeout30秒、retries3次对RequestException逐次捕获重试耗尽后再抛出create_openai_client/create_azure_openai_client则在缺少 API Key 或 Endpoint 时抛出带明确指引的ValueError例如 Set OPENAI_API_KEY environment variable or pass api_key parameter而不是让配置错误在运行时以晦涩方式崩溃。这正是应用应能一致地完成任务、失败时给出可行动的提示在代码中的体现。2.3 可访问性Accessibility可访问意味着把用户体验扩展到具备不同能力的用户包括残障人士确保没有人被排除在外。遵循可访问性指南与原则后AI 解决方案对全体用户都更具包容性、更易使用、也更有益。对 Web 应用来说这对应课程作业中的具体要求应用必须既能用鼠标、也能用键盘完整操作。2.4 愉悦感Pleasant愉悦意味着应用用起来令人享受。有吸引力的用户体验会对用户产生积极影响鼓励他们再次打开应用从而提升业务收益。课程同时提醒一条边界不是所有挑战都能靠 AI 解决。AI 的定位是增强augment用户体验——无论是自动化的手动任务还是个性化体验。UX 设计中要把 AI 当作增强项而非万能项来规划。3. 面向信任与透明设计可解释性与控制信任Trust是 AI 应用设计的核心它保证用户确信应用能完成工作、持续交付结果、且结果正是用户所需。这一领域有两个对称的风险不信任Mistrust用户对 AI 系统几乎没有信任直接导致拒绝使用你的应用过度信任Overtrust用户高估 AI 系统的能力对系统信任过度。课程举的例子是自动评分系统教师若过度信任可能不再抽查部分作业以核实评分质量最终导致学生收到不公平或不准确的分数也失去了反馈与改进的机会。课程给出把信任置于设计中心的两个手段可解释性Explainability与控制Control。3.1 可解释性Explainability当 AI 参与决策例如向下一代传授知识时教师和家长理解AI 是如何做出决策的至关重要。可解释性就是理解 AI 应用如何做出决策。面向可解释性设计包括补充说明AI 如何得到该结果的细节让受众意识到结果是 AI 生成的、而非人写的。课程的措辞示例很具体不要说 Start chatting with your tutor now立即开始与你的导师聊天而要说 Use AI tutor that adapts to your needs and helps you learn at your pace使用一个能适应你需求、按你的节奏辅助你学习的 AI 导师——显式点名AI管理用户对对方是人的预期说明 AI 如何使用用户与个人数据。例如学生人设persona可能带有功能限制AI 或许不能直接给出答案但可以引导用户思考如何解题。课程进一步强调可解释性的最后一块关键拼图是解释的简化学生和老师未必是 AI 专家因此关于应用能做什么、不能做什么的解释必须简单易懂。3.2 控制Control生成式 AI 在 AI 与用户之间建立了一种协作关系用户可以修改提示prompt来获得不同结果在输出生成之后用户还应能修改结果从而获得掌控感。课程以 Microsoft Copilot前 Bing Chat为例说明了两类控制点对提示的控制按格式format、语气tone、长度length定制提示对结果的控制在输出上继续编辑修改对数据使用的控制允许用户选择是否允许 AI 使用其数据opt-in / opt-out。例如在 school 应用中学生可能希望用自己的笔记加上教师的资源作为复习资料这应由用户自己决定。课程在此给出一个重要的设计原则原文为强调段落在设计 AI 应用时刻意为之intentionality是确保用户不过度信任、不对其能力抱有不现实预期的关键。实现方式之一是在提示与结果之间制造一定的阻力friction提醒用户这是 AI不是另一个人类。本仓库的课程示例与这一理念呼应。例如 06-text-generation-apps/python/aoai-study-buddy.py 这个学习伙伴示例系统提示明确限定模型是Python 语言专家并要求按概念 → 示例代码 → 解释的固定格式作答。从源码结构看这正是管理能力预期的做法——把 AI 的角色、边界和输出格式在提示中显式约束出来而不是放任模型自由发挥。其运行依赖openai1.55.1与python-dotenv1.2.2见 06-text-generation-apps/python/requirements.txt并通过AZURE_OPENAI_ENDPOINT/AZURE_OPENAI_API_KEY/AZURE_OPENAI_DEPLOYMENT环境变量配置客户端失败时由环境变量缺失直接报错行为可预期。4. 面向协作与反馈设计反馈循环与错误处理生成式 AI 的交互模式大多是用户输入提示 → AI 生成输出。课程追问了两个 UX 问题如果输出是错的呢出错误时应用如何表现是 AI 指责用户还是花时间解释错误课程给出两条设计路径内置反馈Feedback机制AI 应用应当既接收反馈也给出反馈。这既帮助 AI 系统改进也增进用户信任。反馈循环feedback loop应该出现在设计中最简单的形态就是输出旁的点赞 / 点踩thumbs up / down清晰沟通系统的能力与限制当用户请求超出 AI 能力时要有明确的处理方式。课程给出的错误回复范式是抱歉我们的产品使用以下科目数据训练……我无法回答你提出的这个问题。——即承认能力边界 说明原因而不是含糊其辞或指责用户。课程举例一个只用历史和数学等有限科目数据训练的 AI 应用可能无法回答地理问题它应当主动说明数据覆盖范围再拒绝超纲问题。总结一句AI 应用注定会犯错设计时应为用户反馈 错误处理留出空间并且要简单、易于解释。4.1 仓库中的工程佐证把友好报错写进共享代码简单、易解释的错误信息在本文课程语境中不是口号而是可以被代码规范化的要求。本仓库的共享模块 shared/python/input_validation.py 就是一个直接样例validate_number_input(value, min_val1, max_val100, field_namenumber)把字符串输入校验为有界整数越界时抛出的消息是f{field_name} must be between {min_val} and {max_val}, got {num}——错误信息直接告诉用户该填什么范围、你填了什么validate_text_input(value, max_length500, min_length1, allow_emptyFalse)对文本做裁剪、空值与长度校验失败消息区分cannot be None / cannot be empty / is too long / is too short四种情况sanitize_prompt_input(value, max_length1000, strictFalse)针对注入 LLM 提示的用户输入去除控制字符并用正则清除{{...}}模板注入、${...}变量替换、script标签、javascript:URL 等危险模式strictTrue时仅保留字母数字与基础标点最后做长度上限校验默认 1000 字符。这些行为都有测试覆盖tests/test_input_validation.py 中对越界数字、过短文本、模板注入、script 标签、非法 URL等用例逐一断言了异常类型与消息关键词如matchbetween、matchtoo long保证友好报错的信息内容是稳定的、可回归验证的契约而不是随手写的打印语句。可以推断把这类校验工具放入课程仓库的shared/python/目录配合 shared/python/api_utils.py 的超时重试请求封装意图就是给各课示例提供一个统一的用户输入防线在把用户输入送进模型之前先校验与消毒出错时以可行动、可读的方式反馈给用户——这正是第 4 节能力边界的清晰沟通 错误处理原则在共享代码层的落地。5. 作业给你的 AI 应用做一遍 UX 审计课程给出的实践作业挑一个你已经构建的 AI 应用尝试落实以下四个方面的检查与改造愉悦感Pleasant如何让应用更愉悦是否在需要处加了解释是否鼓励用户探索错误消息是怎么措辞的有用性Usability构建 Web 应用时确保应用可以仅用鼠标、也可以仅用键盘完成导航。信任与透明Trust and transparency不要完全信任 AI 及其输出考虑在流程中加入人来校验输出并考虑、落地其他达成信任与透明的方式。控制Control把用户提供给应用的数据的控制权交还给用户实现一种用户可以对 AI 应用的数据采集选择加入 / 退出opt-in / opt-out的方式。这四项恰好与第 2 节的四个质量属性和第 3 节的两个信任手段一一对应可以当作一份 AI 应用上线前的 UX 自查清单直接使用。6. 小结与延伸阅读好的 AI 应用 UX 有用 可靠 可访问 愉悦且 AI 只是增强体验的手段不是解决一切问题的默认答案信任设计的两大支柱是可解释性说明决策过程、明示这是 AI、简化能力与限制的解释与控制提示可调、输出可改、数据使用可 opt-in/opt-out并刻意保留提示与结果之间的摩擦以防过度信任协作与反馈设计要求应用内置反馈循环如点赞/点踩并对超能力边界的请求给出承认限制 说明原因的明确拒绝工程侧可以参照本仓库 shared/python/input_validation.py、shared/python/api_utils.py 及其 tests/test_input_validation.py 测试把可行动的错误信息、输入校验与消毒、带超时重试的外部请求作为 UX 的底线能力。学完本课后课程路线图指向下一课如何保护 AI 应用即 13-securing-ai-applications/README.md——安全是信任与透明设计的自然延伸可与本文的过度信任与数据控制讨论对照阅读。课程原始英文版本见 12-designing-ux-for-ai-applications/README.md本仓库亦提供爱沙尼亚语等多语言译文如 translations/et/12-designing-ux-for-ai-applications/README.md。【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考