本项目内置了一个功能丰富的现代化 Web 用户界面,提供聊天测试、状态监控、API密钥管理等完整功能。
在浏览器中打开服务器的根地址,默认为 http://127.0.0.1:2048/。
端口配置:
- 默认端口:2048
- 配置方式:在
.env文件中设置PORT=2048或DEFAULT_FASTAPI_PORT=2048 - 命令行覆盖:使用
--server-port参数 - GUI配置:通过图形启动器直接设置
- 基本聊天: 发送消息并接收来自 AI Studio 的回复
- Markdown 支持: 支持 Markdown 格式化和代码块高亮
- 自动API密钥认证: 对话请求会自动包含Bearer token认证
- 智能错误处理: 针对401认证错误提供专门的中文提示信息
- 输入验证: 防止发送空消息,双重检查确保内容有效性
切换到 "服务器信息" 标签页可以查看:
- API 调用信息(如 Base URL、模型名称)
- 服务健康检查 (
/health端点) 的详细状态 - 提供 "刷新" 按钮手动更新此信息
"设置" 标签页提供完整的密钥管理功能:
工作原理:
- 未验证状态: 只显示基本的密钥输入界面和提示信息
- 验证成功后: 显示完整的密钥管理界面,包括服务器密钥列表
验证流程:
- 在密钥输入框中输入有效的API密钥
- 点击"验证密钥"按钮进行验证
- 验证成功后,界面自动刷新显示完整功能
- 验证状态在浏览器会话期间保持有效
密钥验证:
- 支持验证任意API密钥的有效性
- 验证成功的密钥会自动保存到浏览器本地存储
- 验证失败会显示具体的错误信息
密钥列表查看:
- 显示服务器上配置的所有API密钥
- 所有密钥都经过打码处理显示(格式:
xxxx****xxxx) - 显示密钥的添加时间和状态信息
- 提供单独的密钥验证按钮
安全机制:
- 打码显示: 所有密钥都经过安全打码处理,保护敏感信息
- 会话保持: 验证状态仅在当前浏览器会话中有效
- 本地存储: 验证成功的密钥保存在浏览器本地存储中
- 重置功能: 可随时重置验证状态,重新进行密钥验证
自动保存: 输入框内容会自动保存到浏览器本地存储 快捷操作: 支持回车键快速验证 可见性切换: 提供密钥可见性切换按钮 状态指示: 实时显示当前的验证状态和密钥配置情况
"模型设置" 标签页允许用户配置并保存(至浏览器本地存储)以下参数:
- 系统提示词 (System Prompt): 自定义指导模型的行为和角色
- 温度 (Temperature): 控制生成文本的随机性
- 最大输出Token (Max Output Tokens): 限制模型单次回复的长度
- Top-P: 控制核心采样的概率阈值
- 停止序列 (Stop Sequences): 指定一个或多个序列,当模型生成这些序列时将停止输出
- 提供"保存设置"和"重置为默认值"按钮
在主聊天界面可以选择希望使用的模型,选择后会尝试在 AI Studio 后端进行切换。
右侧有一个可展开/收起的侧边栏,通过 WebSocket (/ws/logs) 实时显示后端日志:
- 包含日志级别、时间戳和消息内容
- 提供清理日志的按钮
- 用于调试和监控
右上角提供 "浅色"/"深色" 按钮,用于切换界面主题,偏好设置会保存在浏览器本地存储中。
界面会根据屏幕大小自动调整布局。
-
启动服务后,在浏览器中访问
http://127.0.0.1:2048/ -
API密钥配置检查:
- 访问"设置"标签页查看API密钥状态
- 如果显示"不需要API密钥",则可以直接使用
- 如果显示"需要API密钥",则需要进行密钥验证
-
API密钥验证流程(如果需要):
- 在"API密钥管理"区域输入有效的API密钥
- 点击"验证密钥"按钮进行验证
- 验证成功后界面会自动刷新,显示:
- 验证成功的状态指示
- 服务器上配置的密钥列表(打码显示)
- 完整的密钥管理功能
-
密钥获取方式:
- 如果是管理员:可以直接查看项目根目录下的
key.txt文件 - 如果是用户:需要联系管理员获取有效的API密钥
- 密钥格式:至少8个字符的字符串
- 如果是管理员:可以直接查看项目根目录下的
- 在聊天界面输入消息进行对话测试(会自动使用验证过的密钥进行认证)
- 通过"服务器信息"标签查看服务状态
- 在"模型设置"标签中调整对话参数
- 侧边栏显示实时系统日志,可用于调试和监控
- 分级权限: 未验证状态下只显示基本信息,验证成功后显示完整的密钥管理界面
- 会话保持: 验证状态在浏览器会话期间保持,无需重复验证
- 安全显示: 所有密钥都经过打码处理,保护敏感信息
- 重置功能: 可随时重置验证状态,重新进行密钥验证
- 自动认证: 对话请求自动包含认证头,确保API调用安全
这个 Web UI 主要用于:
- 简单聊天测试
- 开发调试
- 快速验证代理是否正常工作
- 监控服务器状态
- 安全管理API密钥
- 方便地调整和测试模型参数
- 检查浏览器开发者工具 (F12) 的控制台和网络选项卡是否有错误
- 确认 WebSocket 连接 (
/ws/logs) 是否成功建立 - 确认
/health和/api/info端点是否能正常访问并返回数据
- 无法验证密钥: 检查输入的密钥格式,确认服务器上的
key.txt文件包含有效密钥 - 验证成功但无法查看密钥列表: 检查浏览器控制台是否有JavaScript错误,尝试刷新页面
- 验证状态丢失: 验证状态仅在当前浏览器会话中有效,关闭浏览器或标签页会丢失状态
- 密钥显示异常: 确认
/api/keys端点返回正确的JSON格式数据
- 发送消息后收到401错误: API密钥认证失败,需要在设置页面重新验证密钥
- 无法发送空消息: 这是正常的安全机制,确保输入有效内容后再发送
- 对话请求失败: 检查网络连接,确认服务器正常运行,查看浏览器控制台和服务器日志
Web UI 使用完成后,请参考: