用v0给 uni-api 糊了个统计面板,凑合能用

@yym68686 佬开发的轻量级 uni-api (项目地址)非常实用,通过单一的 YAML 文件即可完成配置,管理和修改都相当便捷,佬也做了 Web UI 配置功能。但美中不足的是,它暂时缺少一个内置的统计页面。虽然 uni-api 提供了可访问的 API,但若想直观了解调用量、模型分布等信息,缺少图形化界面还是稍有不便。

尝试利用 v0.dev 及其集成的 shadcn/ui,构建了一个配套的 uni-api 状态面板。开发过程中,v0 / gemini 提供了很大帮助,根据需求描述和相关文件辅助生成了大部分代码框架。得益于 shadcn/ui,整体界面风格也比较现代、整洁。

GitHub项目: https://github.com/melosbot/uni-api-status
Docker 镜像: ghcr.io/melosbot/uni-api-status:latest

核心功能 (已优化桌面端与移动端显示):

  • 统计信息: 分为概览统计、模型统计、渠道统计和详细日志四部分,基本涵盖了数据库可查询的主要信息。普通用户 Key 仅能查看自身数据,管理员 Key 可查看所有用户数据。
  • 渠道测试: 读取 api.yaml 配置,对其中所有 provider 进行连通性测试。目前仅支持端点后缀为 /chat/completions 的标准 OpenAI 接口。此功能仅限管理员 Key 访问。
  • 配置管理: 提供对 api.yaml 配置文件的在线读写编辑功能,包含 YAML 格式校验。利用 uni-api 后端监测到配置变更后自动重启的特性,修改可视为实时生效。此功能仅限管理员 Key 访问。

详细的部署步骤已包含在项目的 Readme 文件中。

由于个人经验所限,基本等于0基础,且很大程度上依赖工具辅助开发,目前的设计以实用性为首要目标,代码实现方面可能还有不少待完善之处,还希望各位佬轻喷。

界面预览





22 个赞

不得不说效果不错

1 个赞

很惊喜,基本一边通,后面完全就是在优化微调了

支持一下。 :clap:

1 个赞

佬们没有代码基础指的是啥(太谦虚了都),为什么都是随手一个小玩意儿

就是这个语言完全不会(糊出来自己看内容+问 ai+搜文档再微调的那种

1 个赞

:lark_033: 谢谢佬

:tieba_025: 因为强大的工具真的很屌 尤其是前言时间的augment,真可以做到岁额编写
我typescript一点没接触过 postgresql也没有给augment就可以一次生成一个前后端项目,几乎能直接跑通自己啥也不用会
当然如果想完善到能用的程度还是得自己监工一下()

3 个赞

能问下这种小玩意儿的架构是如何掌握训练出来的吗(最近在学javaweb了,是沾上边了嘛)?非cs出身的大学牛马,有点兴趣在自学这方面的东西

:bili_040: 只要提示词写的好,你就是资深程序员

写出来能跑通,就看文件内容,多看几遍就大致知道是干嘛的,然后再去了解这块怎么实现巴拉巴拉。我干银行的,所以这一块完全属于邪修级别的学习(

1 个赞

佬,不妨把提示词也分享一下共大家学习 :tieba_087:

这个是用在 v0 里的第一条,但是也是经过总结优化和详细润色过的

你的这个 sqlite3 模块架构和arm不匹配,在macos 内构建不成功,需要修改下 Dockerfile

欸,我搁甲骨文的arm上能跑倒是,我看看怎么个事(

我把你糊的这个改了下,加了个多key切换,聚合显示,页面挺好看

1 个赞

感谢佬,晚上回家试试看



嘿嘿,刚刚糊好,还在修bug

不错不错,我uniapi 配置文件挺麻烦的,配合这个,还有一个配置文件前端就好用多了

2 个赞

已经糊上了,Package uni-api-status · GitHub ,佬可以试试看,已经推到了github。