产品 + 技术 Brief

步语 · BuYu

你只管散步和说话,AI 替你看、替你记,回家送你一份 360° 的散步纪念品。

类目AI 散步同伴 App
平台iOS 原生 · Insta360 Link 2 Pro
阶段MVP · 玄武湖实测 ×3
赛道影石(Insta360)开发者

01产品是什么

一款 iOS 原生音频优先 的 AI 散步同伴 App。用户出门时戴影石相机 + 蓝牙耳机,手机进口袋。AI 替你看世界、替你记录,散步结束自动生成一份 360° 的纪念品。

散步中 — 三条交互约定

散步后 — Keepsake 走步纪念物

02问题与洞察

问题:phone-as-stage tax

散步 App 普遍要求用户把手机当舞台 — 抬手、点屏、看图、再切回路面。注意力本来该给世界,被舞台抢走了。AI 的位置应该在眼睛之外

洞察:音频优先 + 主动配额

🎧

音频优先

耳机是唯一的输入输出通道。视觉留给世界,不留给屏幕。

🤫

默认沉默

AI 的默认状态是闭嘴。≤ 3 次 / 10 分钟的主动开口,是产品契约。

📍

主动 = 仅地点

主动开口的唯一合法场景,是推荐附近值得看的地方。其他都属于打扰。

👂

被动开放

"那是什么花?""记一下" — 用户说话,AI 才动。永不抢戏。

03AI 行为契约

写进 system prompt + 独立配额计数器,双保险。运行时拒绝超额的主动 speak 调用。

硬约束 · Hard

≤ 3 主动开口 / 10 分钟

ProactiveQuota 类滑动窗口计数;prompt + 运行时双重拦截。

硬约束 · Hard

主动开口 = 仅地点推荐

不评价天气、不寒暄、不主动接话。任何非地点推荐的主动 speak 会被运行时拒绝。

硬约束 · Hard

被动捕捉只走明确语音指令

不替用户判断"什么值得记"。"记一下"才记,没有就不记。

可协商 · Soft

推荐被拒可换、可聊

用户说"不想去",可继续聊一聊或换一个推荐。但配额已扣

04为什么 Insta360 是核心

影石相机在产品里承担三个不可替代的角色。拔掉 Insta360 → 产品 = 普通 vlog 工具。

角色 1

第一视角眼睛

给 VLM 提供"用户看到的世界"。没有它,被动 Q&A 就只是文本聊天。

角色 2

本机录制

高质量素材独立保存在相机里,不挤占手机带宽 / 电量。

角色 3

纪念品的灵魂

360° 镜头语言是纪念品辨识度最高的部分。同样一段散步,没有 360°,纪念品就是普通 vlog。

结论:步语 = 影石相机的"日常使用入口"。每一次散步都自然产出值得回看的 360° 内容。

05产品体验

完整 7 屏产品截图详见 Pitch Deck。下面是核心交互流。

首页
1 · 主页
路线推荐
2 · 路线
散步中
3 · 散步中
发现
4 · 发现
记一下
5 · 记一下
Keepsake
6 · 纪念品

06技术架构

两条平行的实现线:iOS 原生 App(主交付)与 Windows 桌面 Demo(Insta360 Link 2 Pro 桌面演示验证)。

核心架构概览

┌────────── iPhone(iOS 原生)──────────┐ 纪念品合成层(Keepsake) · VideoAssembler / BGMMixer · PosterComposer / MapRenderer Agent 层(ReAct Runtime) · AgentRuntime · ToolRegistry · ProactiveQuota(双保险计数器) · 8 Tools(高德 ×3 / 视觉 ×2 / 交互 ×3) 硬件桥接层 · CameraBridge(Insta360 SDK) · LocationSvc(CoreLocation) · AudioIO(AVFoundation + Speech) └────┬────────────┬───────────────┬──────┘ [ 相机 ] [ LLM / VLM ] [ 高德 ] Insta360 OpenAI 兼容 POI / 路径 Link 2 Pro 端点

iOS 端技术栈

分层选型说明
语言 / 工具链Swift 5.9 · SPM跨平台协作,后续迁移至 Xcode
UISwiftUIRootView / WalkScreen / 分享卡片
地图MapKit + 高德 iOS SDK路线绘制、POI、快照
定位CoreLocationGPS 轨迹采集与缓冲
相机Insta360 Camera SDK + CameraBridgeLink 2 Pro 取流 / PTZ;带 Mock
音频AVFoundation + SpeechTTS 播报 · STT 唤起对话
Agent 运行时自研 AgentRuntime + ProactiveQuotaTool-use 调度 · 主动行为节流
视频合成AVAssetWriterVideoAssembler · BGMMixer · CaptionOverlay
海报合成CoreGraphics + CoreImagePosterComposer · MapRenderer
测试XCTestLocalGravityTests/ 全模块覆盖

Agent 工具集(8 工具)

类别工具用途
高德 ×3AmapAroundSearch / AmapDirection / AmapText / AmapGeo周边 POI · 路径 · 地理编码
视觉 ×2GetCameraFrame / AnalyzeFrameVLM取帧 · VLM 分析
交互 ×3SpeakToUser / RecordMoment / RecommendNearbyPlaceTTS · 瞬间持久化 · 配额内地点推荐

Windows 桌面 Demo 端(演示验证)

面向 Insta360 Link 2 Pro × LLM 的端到端体验验证;浏览器作为 iPhone Mockup 演示界面。

分层选型
语言 / WebPython 3.11 · FastAPI · Uvicorn · SSE
相机DirectShow(pygrabber + ffmpeg MJPEG)
TTS / LLMpyttsx3 · 远端 LLM / VLM(Tailscale)
POI高德 Web Service + 预烤数据
测试pytest + pytest-asyncio

07降级策略矩阵

三条独立降级路径,均已实测

失败点
触发条件
降级动作
相机断
Insta360 连接丢失或取帧超时
GPS + 对话继续;纪念品缺视频段,仍出海报
LLM 不通
OpenAI 兼容端点不可达 / 超时
主动行为静默;被动 Q&A 给本地兜底回复
视频合成失败
AVAssetWriter / FFmpeg 编码异常
长图海报兜底(CoreGraphics 路径独立)
🛟 保底契约:永远保证至少一份纪念品

08实测里程碑

09路线图

MVP · 当前

iOS 跑通

玄武湖 30 分钟全程 + 短视频纪念品

v0.2

多主题 + 配音

多海报风格 / 用户配音入纪念品 / 推荐协商更细

v0.3

多人同行

同一段散步两个视角合成

v1.0

开放 SDK

第三方 POI 服务可接入推荐工具集

10联系合作

欢迎影石生态伙伴、内容平台、城市文旅、独立投资人就步语项目的合作可能性沟通。

团队联系人 Jinxiang Xie(谢锦翔)/ Richard
邮箱 jxTse@outlook.com
个人主页 jxtse.github.io
Pitch Deck jxtse.github.io/projects/buyu

如需完整 demo 视频、设计文档或现场演示,请通过邮箱预约。