news 2026/7/12 8:51:25

用 Codex Sites 做一个真正调用 QVeris 的演示网站

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用 Codex Sites 做一个真正调用 QVeris 的演示网站

QVeris · 产品实践

很多工具演示站的问题,不是页面不够漂亮,而是只能看,不能真正使用。用户看到一张精致的仪表盘,却不知道数据从哪里来、工具如何选择、失败时又会发生什么。

这次我们尝试把演示往前推进一步:让 Codex Sites 负责网站生成,让 QVeris 负责能力发现和工具调用,做一个可以查询城市天气、空气质量和未来预报的交互式网站。页面只是结果,真正值得展示的是一条完整的调用链路。

本文当前为持续更新稿。演示网站生成后,将补充实际访问地址、桌面端与移动端截图,以及真实调用结果。01

一、为什么要做这样一个演示站

网站不只是工具说明书

传统的 API 文档适合开发者查参数,却很难让第一次接触产品的人迅速理解一种能力能解决什么问题。一个能直接操作的网站,可以把搜索、调用、返回、异常处理和可视化放在同一条体验路径里。

对 QVeris 来说,这种演示尤其重要。QVeris 不是一个固定接口集合,而是面向 Agent 的能力发现与工具调用引擎。用户提出需求后,系统先找到适合的工具,再根据工具的真实参数执行调用。演示站因此不能只写死一份假数据,也不应该把某个 tool_id 永久固定在前端。

为什么先从天气和空气质量开始

天气类数据有几个天然优势:任何人都能理解;当前天气、逐小时趋势、未来预报和空气质量适合不同的可视化形式;城市名称、经纬度、时区和多数据源又足以覆盖真实工具调用中常见的参数适配问题。

用户在页面里输入"北京"看似只是一次搜索,背后可能需要先做城市地理编码,再调用当前天气、未来预报和空气质量工具。几个能力可以独立成功或失败,这比只展示一个接口更接近 Agent 使用工具的真实情况。

二、Codex Sites 与 QVeris 如何配合

Codex Sites 负责把需求变成产品界面

Codex Sites 接收的不是一句"做个天气网站",而是一份接近产品需求文档的指令。指令需要明确页面结构、交互状态、响应式布局、数据模型、安全边界、错误处理和验收条件。要求越具体,最终生成的网站越接近一个可以继续开发的产品,而不是只能展示的页面样稿。

QVeris 负责动态发现和调用工具

网站服务端先向 QVeris 描述所需能力,例如 weather forecast current conditions API。QVeris 返回候选工具和参数定义,服务端再根据成功率、参数完整度、执行耗时和数据结构选择合适的工具。

选定工具后,服务端携带 discover 返回的 search_id 执行工具,并把不同来源的数据整理成网站统一的数据模型。浏览器只接收天气数据和脱敏后的调用摘要,不接触 QVERIS_API_KEY,也看不到 Authorization Header。

这条链路解决了什么问题

·网站不依赖一个写死的工具,可以在候选工具异常时切换。

·前端不需要理解每个供应商完全不同的字段结构。

·用户能看到实际使用的工具、执行耗时和数据更新时间。

·凭证只存在于服务端,避免因演示站公开而泄露。

·同一套模式可以继续扩展到金融、体育、新闻、科研、地图等其他工具类别。

三、交给 Codex Sites 的完整 Prompt

下面是本次网站生成使用的完整指令。它不仅描述视觉风格,也规定了 QVeris 的接入方式、数据模型、缓存策略、错误状态和验收标准,可以直接粘贴到 Codex Sites 插件中使用。

Codex Sites 完整生成指令

请生成一个完整、可运行、响应式的网站,名称为:

「城市气象观察站 / City Weather Lab」

网站用途:演示如何使用 QVeris 发现并调用天气、空气质量、地理编码等工具。网站不是产品宣传页,打开后直接进入可操作的数据看板。

一、技术要求

1.使用 React + TypeScript。

2.使用 Tailwind CSS。

3.图标使用 Lucide,不要手绘 SVG。

4.图表使用 Recharts 或 ECharts。

5.必须支持桌面端和移动端。

6.不要把 QVERIS_API_KEY 写入前端代码或 Git 仓库。

7.使用服务端 API Route 代理 QVeris 请求,从环境变量读取 QVERIS_API_KEY。

8.提供 .env.example,其中只包含 QVERIS_API_KEY= 。

9.如果当前 Sites 环境不支持服务端 API Route:保留完整的 API 客户端接口;默认进入明确标记的 Demo 数据模式;不允许在公开前端中硬编码真实 API Key。

二、QVeris 接入方式

QVeris API Base URL:https://qveris.ai/api/v1

所有服务端请求携带:Authorization: Bearer ${QVERIS_API_KEY} 和 Content-Type: application/json。

不要硬编码具体 tool_id。首次调用某项能力时,通过 QVeris 动态发现工具,并在本次服务端会话中缓存选中的 tool_id。

工具发现接口:POST /search

需要分别发现以下能力:当前天气、未来天气预报、空气质量、城市地理编码。

发现后根据以下规则选择工具:参数能支持城市名、经纬度或标准地点;success_rate 优先高于 90%;参数描述清楚且有样例参数;平均响应时间较短;返回结果包含结构化数据;不要仅根据搜索结果排序盲目选择。

执行工具接口:POST /tools/execute?tool_id=<tool_id>

注意:必须读取发现结果中的真实参数定义,不要假设所有天气工具都使用 city 参数;根据工具参数动态构造调用参数;API 返回结构不一致时,在服务端转换成统一数据模型;请求失败时尝试修正参数,仍失败则切换到下一个候选工具;不得把完整 Authorization Header、API Key 或敏感错误信息返回浏览器。

三、核心页面

页面打开后直接显示数据看板,不要制作营销落地页或巨大 Hero。

整体布局:顶部应用栏、左侧城市列表、中间天气数据区域、右侧空气质量和工具调用状态;移动端改为单列布局,城市列表使用抽屉。

四、主要功能

1.城市搜索:支持北京、上海、新加坡、Tokyo、London、New York。如果天气工具不支持城市名称,先调用地理编码工具。

2.当前天气:显示城市和当地时间、天气状况、当前温度、体感温度、最高最低温度、湿度、风速风向、降水概率、能见度、气压、紫外线指数、数据更新时间。

3.未来预报:显示未来 7 天数据,同时提供卡片视图、温度趋势图和降水概率图。移动端图表宽度必须适配屏幕。

4.24 小时趋势:使用折线图展示温度、体感温度、降水概率,可通过分段控件切换指标。

5.空气质量:显示 AQI、空气质量等级、PM2.5、PM10、CO、NO2、SO2、O3。根据 AQI 使用语义颜色并显示一句简洁的活动建议。

6.城市对比:最多选择 4 个城市进行温度和空气质量对比,使用表格和柱状图展示。

7.收藏城市:默认提供北京、上海、新加坡、东京、伦敦,允许添加、删除和拖动排序,数据保存在 localStorage。

五、QVeris 演示功能

需要有一个"工具调用"抽屉展示:用户请求的能力、英文 discover query、找到的候选工具数量、最终选中的 tool_id、工具名称、success_rate、平均执行时间、本次实际执行时间、调用状态、参数摘要、返回字段摘要、是否发生候选工具切换、是否使用 Demo 数据。

不要显示:API Key、Authorization Header、Cookie、完整敏感响应、用户唯一身份信息。

六、统一数据模型

服务端把不同工具的结果转换为统一 WeatherViewModel 结构,缺失数据统一显示"暂无数据"。

七、交互状态

必须实现首次加载、搜索中、骨架屏、部分成功部分失败、城市不存在、认证失败、调用超时、数据缺失、工具不可用、Demo 模式提示、手动重试、最近成功数据保留等状态。不要把底层异常堆栈直接展示给用户。

八、视觉设计

风格定位为专业的数据观察工具,清晰、克制、现代,适合长时间查看。不做营销页,不使用大面积紫色渐变,不使用装饰性光球,不在卡片中嵌套卡片,卡片圆角不超过 8px,保持较高的信息密度。配色:页面背景浅灰白,主文字深灰,蓝色用于天气数据,空气质量使用语义颜色。深色模式使用中性灰。

九、数据与缓存

服务端对工具发现结果缓存 24 小时,天气结果缓存 10 分钟,空气质量结果缓存 15 分钟。前端显示数据更新时间。用户点击刷新时允许绕过天气结果缓存,但不要重复执行工具发现。防止同一城市并发请求。

十、验收标准

完成后的验证标准包括:北京、新加坡、伦敦至少能够查询;城市名不能直接调用时自动使用地理编码;天气、预报和空气质量可以独立失败;页面显示实际 tool_id 和执行耗时;API Key 不出现在浏览器源码和构建产物中;桌面端 1440px 和移动端 390px 显示完整;明暗模式和中英文切换可用;刷新后收藏城市保留;运行 lint、类型检查和构建;使用 Playwright 截取桌面端和移动端截图验证。

请直接生成完整网站、API Route、环境变量样例、README 和必要测试,不要只生成静态设计稿。

四、网站生成后需要补齐的内容

在线访问地址

这个网站是由 Codex 的 Sites 插件生成的,由 OpenAI Codex Sites 托管和管理,需要在 Codex 中选择分享给互联网的所有人,如下图所示,这样别人才能看到。

因为是对外可以访问的,所以我没有配置真实的 QVERIS_API_KEY,避免积分不足导致 demo 无法使用。目前使用的都是测试数据,只需在服务端根目录的 .env 里配置好 QVERIS_API_KEY 即可真实的从 QVeris 获取数据。

下面是这个网站的在线访问地址:

https://city-weather-lab-qveris.ax2675996.chatgpt.site

网站截图

桌面端首页截图

工具调用抽屉截图,展示实际 tool_id、耗时和调用状态

城市对比页面截图

真实调用验证

验证项

预期

结果

北京天气

返回当前天气、逐小时趋势和未来预报

待验证

新加坡天气

正确处理城市、国家和时区

待验证

伦敦空气质量

空气质量失败时不影响天气数据

待验证

工具切换

首选工具不可用时自动尝试候选工具

待验证

凭证保护

浏览器和构建产物中不出现 API Key

待验证

移动端

390 像素宽度下无溢出和遮挡

待验证

五、从一个演示站继续扩展

天气只是一个容易理解的起点。保留"能力描述、动态发现、参数适配、服务端调用、统一数据模型、结果可视化"这条主线,演示站可以很快换成其他主题。

·体育赛事:赛程、积分榜、球队状态和球员数据。

·金融市场:行情、公告、资金流向和公司基本面。

·科研助手:论文检索、引用关系、主题聚类和摘要。

·城市生活:天气、空气质量、地理编码、路线和周边服务。

·内容处理:网页提取、PDF 解析、OCR、翻译和语音合成。

Codex Sites 降低了把想法做成网站的门槛,QVeris 则让这个网站能够接入真实、可选择、可替换的外部能力。两者结合以后,演示不再停留在"这个工具能做什么",而是让访问者亲手完成一次真实调用。

页面负责让能力被看见,工具调用负责让能力真正发生。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/12 8:48:36

NBM5100A双级电源管理在便携设备中的应用与优化

1. 项目背景与核心挑战 在便携式电子设备设计中&#xff0c;电池寿命和瞬时电流供应能力始终是工程师面临的两大核心矛盾。传统方案中&#xff0c;大电流脉冲负载会直接作用于电池&#xff0c;导致三个典型问题&#xff1a; 电池内阻压降显著&#xff08;可达数百毫伏&#xf…

作者头像 李华
网站建设 2026/7/12 8:47:26

VS Code Java Extension Pack 2024.6 配置:3步完成JDK 17与Maven 3.9.7环境搭建

VS Code Java开发环境2024终极配置指南&#xff1a;从JDK 17到Maven 3.9.7的高效工作流如果你厌倦了传统IDE的臃肿&#xff0c;又渴望在轻量级编辑器中获得专业级的Java开发体验&#xff0c;这份针对VS Code 2024.6版本的配置手册将带你解锁现代Java开发的全新可能。不同于基础…

作者头像 李华
网站建设 2026/7/12 8:45:43

【限时技术解密】ChatGPT响应速度提升300%的工程实践(实测:Azure OpenAI + Triton + FlashAttention-2 部署链路)

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;ChatGPT 响应太慢怎么办 当 ChatGPT 响应延迟明显&#xff0c;常见原因包括网络链路拥塞、客户端请求负载过高、模型推理服务端排队或浏览器缓存异常。排查与优化需从客户端、网络层和请求策略三方面协同进行…

作者头像 李华
网站建设 2026/7/12 8:45:21

具身智能硬件本体深度拆解:从螺丝到硅片的工程实践

1. 项目概述&#xff1a;为什么“具身智能&#xff08;硬件本体&#xff09;”突然成了硬核圈的高频词&#xff1f; 最近三个月&#xff0c;我在深圳华强北电子市场、苏州工业园的机器人供应链展台、还有北京中关村几家老牌嵌入式方案商的会议室里&#xff0c;反复听到同一个词…

作者头像 李华
网站建设 2026/7/12 8:44:14

qmc-decoder终极指南:快速免费解密你的QQ音乐收藏

qmc-decoder终极指南&#xff1a;快速免费解密你的QQ音乐收藏 【免费下载链接】qmc-decoder Fastest & best convert qmc 2 mp3 | flac tools 项目地址: https://gitcode.com/gh_mirrors/qm/qmc-decoder qmc-decoder是一款高效、免费的QQ音乐格式转换工具&#xff0…

作者头像 李华