
Yelp 为其 AI 助手采用了混合用户界面架构",将原生移动控件与服务器驱动的对话渲染相结合,实现跨平台界面的快速迭代。该方案基于 Yelp 的 CHAOS 框架(全称 Content Hosting Architecture with Optimization Strategies,带优化策略的内容托管架构)渲染对话内容,导航栏与消息输入框则保留原生实现。
Yelp 助手于 2024 年在 iOS 上推出,帮助用户向本地服务从业者提交服务需求。此后,它逐步扩展至查询商户相关信息,并可完成预订、预约、点餐等操作。
CHAOS" 支持 Web、iOS 和 Android。在服务器驱动 UI 架构中,由后端定义客户端显示的内容以及如何响应交互,因此无需发布新的移动应用版本即可让界面变更触达用户。
Yelp 服务技术负责人 Daniel Andrade Groppe" 强调:
我们现有的 CHAOS 框架缺少助手所需的一些能力,包括文本输入字段和网络请求。扩展框架会延迟交付,因此我们采用了混合方法:保持导航和消息输入为原生实现,同时使用 CHAOS 渲染对话区域。

这套实现将视图配置和对话数据分离。聊天会话启动时,客户端拉取 CHAOS 配置并初始化消息事件数据集。后续消息事件直接更新现有视图,无需重新拉取配置。事件类型包含持久化的用户消息和机器人消息、临时输入指示器和快速回复,以及打开目标页面的链接。后端还可以发送指令来控制界面。例如,当项目请求完成时,它可以返回一条消息、一个查看匹配的链接,以及一个禁用聊天输入的动作。这种事件驱动设计将渲染与对话逻辑分离开。
Airbnb 通过其 Ghost Platform" 公开过类似的思路,该平台在 Web 和移动客户端上使用服务器定义的 UI。这两种方案都允许团队更新界面展示效果时不必每次改动都打包发布新版本客户端。Yelp 将该模型应用于对话界面,同时保留原生控件,在客户端维护消息状态与交互处理。

客户端显示已提交的消息和输入指示器,禁用输入,并向后端发送请求。收到响应后,显示回复和快速回复,并重新启用输入。恢复错误会自动重试,不可恢复的故障则禁用输入并提示用户稍后重试。
Yelp 工程师指出,该架构也带来协同复杂度,工程师需要时间来同时理解助手和 CHAOS,而且同一套逻辑在不同平台上仍可能表现不一样。将视图配置与对话数据分离实现了独立的功能开发。该架构还支持复用 Android 助手来启动 Biz Ask Anything" 试点项目。Yelp 表示,这项工作为其下一代助手奠定了基础,新版助手现在可以将商家信息与用户可执行的操作连接起来。
查看英文原文:https://www.infoq.com/news/2026/11/yelp-assistant-hybrid-ui/"


