
bedrock-chat
在 AWS 上快速搭建基于 Claude 的聊天机器人,开箱即用
项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1324
使用教程
环境要求
- 已安装 Docker 的环境
- Node.js 运行环境(含 npm / npx)
- 可用的 UNIX 环境(macOS / Linux / WSL)
- 具备 Bedrock 权限的 AWS 账户,且已在目标区域开通模型访问
- 本地磁盘空间充足(空间不足会导致 CDK bootstrap 失败)
安装与启动步骤
-
1开通 Bedrock 模型
在 us-east-1 区域打开 Bedrock 的 Model access 页面,点 Manage model access,勾选计划使用的模型后 Save changes。
-
2克隆代码仓库
把仓库克隆到本地,后续 CDK 命令都将在该目录及其 cdk 子目录中执行。
git clone https://github.com/aws-samples/bedrock-chat -
3安装 npm 依赖
进入仓库的 cdk 目录,用 npm ci 按锁文件安装依赖,保证版本与项目一致。
cd bedrock-chat cd cdk npm ci -
4按需修改配置
编辑 cdk/cdk.json,按需调整 bedrockRegion、允许访问的 IP 段、是否启用 SnapStart 等项。
-
5执行 CDK Bootstrap
首次往目标区域部署前必须引导一次,用于创建 CDK 所需的基础资源。
npx cdk bootstrap -
6部署全部资源
部署前后端及基础设施,过程会持续一段时间,完成后终端会打印各资源输出。
npx cdk deploy --require-approval never --all -
7访问 Web 应用
在部署输出中找到 BedrockChatStack.FrontendURL,用浏览器打开这个 CloudFront 地址即可使用。
关键配置
| 配置项 | 必填 | 说明 | 示例 |
|---|---|---|---|
bedrockRegion | 否 | Bedrock 可用的区域,注意并非所有区域都支持 Bedrock | us-east-1 |
allowedIpV4AddressRanges | 否 | 允许访问应用的 IPv4 地址范围 | ["203.0.113.0/24"] |
allowedIpV6AddressRanges | 否 | 允许访问应用的 IPv6 地址范围 | ["2001:db8::/32"] |
enableLambdaSnapStart | 否 | 默认 true;部署区域不支持 Python 函数 SnapStart 时设为 false | false |
globalAvailableModels | 否 | 全局控制聊天和机器人创建时下拉菜单中出现的模型 | ["claude-v3.5-sonnet"] |
logoPath | 否 | 应用抽屉顶部显示图片的相对路径,位于 frontend/public 下 | images/logo.png |
如何确认成功
部署输出中出现 BedrockChatStack.FrontendURL,浏览器打开该 CloudFront 地址能进入聊天界面即成功。
常见问题
Q:部署时 CDK bootstrap 报存储空间不足怎么办?
A:本地环境磁盘空间不足会导致引导失败,README 建议在部署前先扩容实例的卷容量再重试。
Q:部署到某些区域时 Lambda 相关资源报错?
A:这些区域不支持 Python 函数的 Lambda SnapStart,把 cdk.json 里的 enableLambdaSnapStart 改为 false 后重新部署。
Q:模型下拉菜单里看不到想用的模型?
A:先在部署区域的 Bedrock 控制台 Model access 中启用该模型,再用 globalAvailableModels 控制菜单中展示的模型。
Q:如何部署 dev、prod 等多套环境?
A:使用 parameter.ts 配合 -c envName 参数,例如 npx cdk deploy --all -c envName=dev;不指定时使用 default 环境。
注意事项
- Bedrock 目前尚未覆盖所有区域,选择 bedrockRegion 前请确认目标区域支持所需模型。
- 模型 ID 以 frontend/src/constants/index.ts 中的完整列表为准。
- 同一 AWS 账号默认只能创建 100 个 Knowledge Base,可用多租户(shared)模式共享同一知识库。
- README 未提供脱离 AWS 本地运行的方式,部署依赖真实 AWS 账户与凭证。
核心亮点
- 原生集成 AWS Bedrock,无需自行管理模型推理基础设施
- 提供 React 前端 + FastAPI/Lambda 后端完整参考实现,上手快
- 支持流式响应(WebSocket),对话体验流畅
不足之处
- 依赖 AWS 专有服务,迁移到其他云平台成本较高
- 文档/社区待观察
适用场景
- 企业快速搭建内部 AI 客服或知识问答助手
- AWS 开发者学习 Bedrock 和生成式 AI 的最佳实践参考
- 需要与 AWS 现有服务(如 Lambda、API Gateway)深度集成的聊天应用
替代项目
LangChain Chat、ChatGPT-Next-Web、Open WebUI
上一篇:gemini-chatbot
下一篇:sulla
同类项目推荐
HyperChat
开源
一个客户端接入多家大模型,还能用 MCP 调工具干活
HyperChat is a Chat client that strives for openness, utilizing APIs from various LL···
unsaged
开源
一个工具包,无缝对接所有主流 AI 模型,聊天更自由。
Open source chat kit engineered for seamless interaction with AI models.
chatbot
开源
用C语言打造越南语聊天机器人,实现基础问答对话
Vietnamese Chatbot
assistant-cli
开源
在终端里直接和 ChatGPT 对话,省去切换窗口的麻烦。
A comfortable CLI tool to use ChatGPT service
chatbot
开源
用Transformer快速搭建单轮对话机器人
Transformer模型训练的单轮对话聊天机器人
AetherLink
开源
一个应用聚合所有主流 AI 模型,跨平台畅聊
AetherLink is a cross-platform AI assistant application that supports multiple mains···
whale_girl
开源
让大模型接管你的微信,自动陪聊回消息
鲸鲸 · 让 DeepSeek 用你的微信账号陪聊(Windows 桌面端 + WPF 启动器)。WeChat chat b···
sendbird-uikit-react
开源
用 React 组件快速搭建聊天界面,省时省力。
Build chat in minutes with Sendbird UIKit open source code.
chatgpt-bot-telegram
开源
在 Telegram 里直接和 GPT 聊天、生成图片
Telegram AI bot with OpenAI Responses API, image generation, tested command handlers···