这是以下赛事的参赛作品:Hacktoberfest 开源 AI 挑战赛第 1 周:Touch Grass


我构建了什么

大多数现代消费级软件都围绕着一个单一的、掠夺性的漏斗构建:

$$\text{注意力} \longrightarrow \text{屏幕时间} \longrightarrow \text{算法信息流} \longrightarrow \text{广告曝光}$$

即便是现代 AI 工具,也常常被优化为让你永远在聊天窗口里打字。

TouchGrass 把这个等式反转了过来。

TouchGrass 是一个由开放 AI 驱动的现实世界挑战平台,其构建原则是:

当用户停止使用它时,这个应用才算成功。

TouchGrass 的主要输出不是供你在屏幕上消费的文本,而是现实世界中的身体行动。

该系统使用一个开放权重的Gemma 2智能体编排器来理解你的个人背景、难度等级和历史记录,然后生成横跨 9 个现实世界类别的个性化任务:

  1. 户外:地平线漫步、太阳与影子追踪、反向绕圈社区散步。
  2. 自然:植物纹理探险、野生种子培育、鸟类鸣叫识别。
  3. 善意:匿名扶门、帮邻居提杂货、真诚的赞美。
  4. 幸福:日光重置、涟漪式微笑。
  5. 人际连接:无屏幕咖啡时光、倾听年长邻居。
  6. 社区:人行道塑料清理、为本地图书馆做贡献。
  7. 健康:健步走、赤脚草坪接地、户外活动度拉伸。
  8. 创造力:城市纹理发现。
  9. 探索:拐进未曾探索过的小巷。

行为节奏:吸引 ➔ 释放 ➔ 奖励

  1. 状态 A —— 吸引:一份清晰、鼓舞人心的任务简报,带有 XP 赏金和 ElevenLabs 语音旁白。
  2. 状态 B —— 释放(禅模式):在你接受的那一刻,UI 会在视觉上消失,变成一个极简的环境呼吸圆圈:你在外面了。去做吧。你不需要这块屏幕。计时器记录你的户外分钟数,而你的手机一直待在口袋里。
  3. 状态 C —— 奖励:当你回来并说出你的感想(“我帮邻居提了她的杂货”),Gemma 评估器会为你的真诚打分,授予额外 XP,触发升级庆祝,并解锁新功能。

演示


代码与部署

完整代码库基于 MIT 许可证在 GitHub 上 100% 开源:
👉github.com/aiwithrajan/touchgrass

  • 托管与运行时(Render):作为统一 Web 服务部署在Render上,同时提供 FastAPI 智能体后端和高性能 React SPA。
  • 后端:FastAPI + Gemma 2 智能体编排器 + 安全与多样性策略引擎 + 本地优先记忆存储。
  • 微气候 AI:TabPFN 表格基础模型(Prior Labs),用于最佳户外时间窗口和活力评分。
  • 前端:React 19 + TypeScript + Tailwind CSS v4(平静、无干扰的扁平编辑式 UI 系统)。
  • 语音:ElevenLabs API,并带有设备端 Web Speech API 回退方案。
  • 可观测性:Sentry 智能体追踪埋点。

我是如何构建它的

1. Gemma 2 开源权重智能体编排器

TouchGrass 的核心是一个闭环的真实世界智能体。当你请求一个任务时,Gemma 会考虑你的等级、你最近的类别历史以及时间限制。

为了防止 LLM 常见的重复同一任务的陷阱(“去散步,去散步,去散步”),智能体流水线会接入我们的策略引擎:

  • 安全策略:扫描候选任务,检查是否存在危险活动、非法闯入、冒险动作或对抗行为。
  • 多样性策略:强制类别轮换,因此自然之后是善意,然后是社区,再是创造力。
  • 进阶策略:在用户于 1–3 级建立个人基础之前,限制高级的人类/社区挑战。

2. 语音层

使用ElevenLabs(并带有 Web Speech API 回退方案),Gemma 的任务会以平静、鼓励的语调朗读出来:

“嘿。你今天的挑战很简单。走到户外,抬起头,对三个人真诚地微笑。等你回来时我们再见。”
这让你可以通过耳机或扬声器吸收任务内容,然后立刻把手机放进口袋。

3. 语音反思与 Gemma 评估器

当你返回时,点击麦克风并说出你的反思。Gemma Evaluator 会分析你户外努力的真诚度和深度,奖励额外 XP(+10 到 +50 XP)。

4. 进阶与里程碑

  • 5 级解锁社交模式:一个隐私优先的社区看板,展示其他经过验证的真实人类在户外做了什么(仅显示大致城市区域,零 GPS 追踪)。
  • 10 级解锁旅程分享:一张可导出的 canvas/SVG 卡片,用于分享你在现实世界中的成就。

5. TabPFN 微气候活力预测器

当与最佳日照和舒适度同步时,外出效果最佳。使用TabPFN(Prior Labs 表格基础模型),TouchGrass 分析逐小时太阳高度角、温度梯度、环境湿度和 UV 水平,以预测:

  • 最佳户外时段:计算出精确的小时(例如今天上午 10:30),在最大化自然昼夜节律日照的同时,避开正午强烈的 UV 眩光。
  • 活力评分(0–100):一个综合大气清新度、光谱和季节条件的连续评分。
  • 离线韧性:采用 100% 设备端表格先验引擎运行,即使手机信号塔在数英里之外,也能保证荒野环境下的功能可用。

为什么开放创新很重要?

这是第 1 周的核心问题,也正是 TouchGrass 诞生的原因:

1. 荒野中零信号(离线步道能力)

当你徒步山脊步道、穿过国家公园或走进森林时,蜂窝网络会消失。
封闭的专有 API(如商业 OpenAI 或 Anthropic 端点)在没有互联网连接时会立即失效。由于 Gemma 和 TabPFN 在设备端本地运行,即使手机处于飞行模式,TouchGrass 也能继续预测微气候、生成挑战并评估反思。

2. 完整的位置与行为隐私

追踪每日个人反思、户外习惯和身体习惯,不应该需要把你的人生日记发送给第三方广告网络。借助开源权重 AI 和本地优先存储,你的想法和习惯完全保留在你的设备上。

3. 运行成本为 $0

没有经常性的 token 订阅费用或速率限制。任何拥有入门级笔记本电脑或智能手机的人都可以永久运行该引擎。


奖项类别

  • 总冠军大奖($250):以 Gemma 2 为核心的开源权重 AI,将屏幕成瘾逆转为现实世界的身体临场。
  • Render 最佳使用奖($200):托管在 Render 上,作为统一的全栈 AI 智能体运行时,同时为 FastAPI 后端和 React SPA 提供服务,并实现自动化零停机构建。
  • TabPFN 最佳使用奖($200):Prior Labs 表格基础模型,根据微气候表格数据预测最佳 15 分钟户外窗口和活力评分。
  • ElevenLabs 最佳使用奖($200):平静的语音任务简报和音频播放,实现无屏幕沉浸。
  • Sentry 最佳使用奖($200):全面的智能体追踪,对 Gemma 生成、TabPFN 表格预测 span 和策略检查进行埋点。

带到户外:实地测试

我在一个下午的环线中把 TouchGrass 带到了户外。智能体给了我:

“鸟类鸣唱追踪器:安静地坐在户外,直到你能精确定位至少两只鸣唱鸟的物理位置。观察它们的飞行路径,不要拍照。”

我接受了,屏幕完全变黑进入禅模式,我把手机放进了夹克口袋。我在一棵橡树下待了 22 分钟,听到了一只蓝松鸦和两只麻雀,一次都没有碰手机。

回到家后,我打开应用,把反思笔记保存到我的个人 Journey 日记中,并看着我的 7 天活动追踪器将这一天标记为完成。

现实生活 > 屏幕时间。