Vibe Coding项目 - V

现在我们将把聊天机器人前端与在前面练习中构建的后端 API 集成起来。这将创建一个完整、可用的聊天机器人应用程序,用户可以发送消息并接收响应。

将前端与后端集成

现在我们已经有了前端和后端,指导 Kiro 将它们连接在一起。

更新前端以将用户消息发送到后端 API。当从后端接收到响应时,使用响应更新聊天 UI。

集成应该:
- 当用户提交消息时向 API Gateway 端点发送 POST 请求
- 在聊天界面中显示后端响应(确认信息 + 时间戳)
- 优雅地处理任何错误
- 保持现有的 UI 设计和功能

请更新前端代码并重新部署。

部署完成后可能得让kiro帮忙清一下cloudfront的缓存。

这一步将我们的聊天机器人从静态演示转变为工作应用程序。前端现在将与我们的无服务器后端实时通信。

一旦 Kiro 更新了前端,请通过以下方式测试完整的聊天机器人应用程序:

  1. 打开前端 URL
  2. 发送测试消息
  3. 验证后端是否以确认信息和时间戳响应
  4. 检查响应是否正确显示在聊天 UI 中

image-20260123211531758

从浏览器中抓包也能看到请求和返回:

image-20260123211732897

image-20260123211556529

现在我们拥有了一个完整、可用的聊天机器人应用程序。前端和后端已完全集成,用户可以与您的机器人进行真实对话。现在是时候添加 AI 智能,使我们的聊天机器人真正变得智能。

添加 Bedrock 集成

指示 Kiro 使用 Bedrock 功能增强您现有的 Lambda 函数:

请更新我的 Lambda 函数,使其使用 Amazon Bedrock 而非返回简单的 ACK 消息。具体要求如下:

- 将当前的响应逻辑替换为对 Amazon Bedrock 的调用
- 使用 Claude 或 Titan 等基础模型生成响应
- 将用户消息发送给模型并返回 AI 生成的响应
- 更新 IAM 角色以包含必要的 Bedrock 权限
- 保持 API 结构不变 - 前端无需更改
- 如果 Bedrock 不可用,请妥善处理错误

请相应地更新 CloudFormation 模板和 Lambda 代码。

然后让kiro部署这次更新

测试 AI 聊天机器人

部署完成后,发送几条不同的消息来测试更新后的聊天机器人:

image-20260123215255303

添加图像生成功能

指导 Kiro 为聊天机器人增加图像生成功能:

现在我想在聊天机器人中添加生成图像的能力。为了简化这个任务,我们可以查看用户的请求。如果请求以"create image"或"create an image"开头(不区分大小写),那么我们就根据请求内容生成并显示图像。

为了保持简单,在 Lambda 函数中将生成的图像转换为 base64 并直接发送到 UI。前端可以显示 base64 图像,而不需要在 S3 中存储任何内容。

请更新后端和前端以支持此功能。

测试图像生成

测试您的新图像生成功能:

请通过尝试正常文本消息和图像生成请求(如"create image a sunset over mountains")来测试图像生成。向我展示两者都能正常工作。

增强的聊天机器人应该展示:

**用户**:"create an image of a peaceful garden with flowers"

**响应**:
- 根据提示"a peaceful garden with flowers"生成图像
- 在聊天界面中显示生成的图像
- 可能包括文本确认,如"我已为您生成了一张图像!"

注意cloudfront可能缓存了旧的js,需要让kiro再清除下缓存。

更新后的结果:

image-20260123221102083