个人开发者的作品集策略:在单个 RTX 5090 上运行 13 项目

发布: (2026年3月8日 GMT+8 17:17)
4 分钟阅读
原文: Dev.to

Source: Dev.to

13 项目列表

Legal Tech

  • 合同自动生成工具(使用 Streamlit + Gemini API 的条款建议)
  • 判例检索系统(使用 SQLite FTS5 快速检索判例文档)
  • 法规合规聊天机器人(使用 Gemini 提供条文解释支持)

Chemical Simulation

  • 分子结构预测模型(FP8 量化 ResNet)
  • 反应速率计算引擎(CUDA 内核优化)

Shogi AI

  • Fuka40B(FP8 量化 ResNet40x384,80 层)
  • Fuka2025Q2-20b(FP8 策略评估模型)
  • Floodgate 策略引擎
  • ttzl‑ex(TensorRT 推理优化)
  • 将棋数据分析流水线

其他

  • Minecraft AI 助手(vLLM 常驻)
  • 股票数据可视化仪表盘
  • 研究笔记管理系统

标准化技术栈

搜索基础设施:SQLite FTS5

为统一所有项目的搜索功能,采用 SQLite FTS5。针对专利文档和判例数据,通过 BM25 排序实现快速且高度相关的检索。

通用 UI:Streamlit

所有应用的前端均使用 Streamlit,统一在集成 Gemini API 时的响应展示方式。

import streamlit as st
from google import genai

client = genai.Client()

response = client.models.generate_content(
    model="gemini-2.5-flash",
    contents="特許文書から条項を抽出"
)
st.markdown(f"**提案条項**:\n{response.text}")

GPU 共享策略

vLLM 常驻架构

为最大化 RTX 5090 32 GB 显存的利用率,vLLM 以常驻进程方式启动。推理引擎会根据每个项目的模型大小进行切换。

TensorRT 切换逻辑

在将棋 AI 中,模型使用 TensorRT 进行优化。

trtexec \
  --onnx=models/eval/model_fp8.onnx \
  --fp8 \
  --minShapes=input1:1x62x9x9,input2:1x57x9x9 \
  --optShapes=input1:256x62x9x9,input2:256x57x9x9 \
  --maxShapes=input1:256x62x9x9,input2:256x57x9x9 \
  --saveEngine=model_fp8_trt

GPU 使用监控

while true; do
  usage=$(nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits | tr -d ' ')
  if [ "$usage" -gt 80 ]; then
    systemctl --user stop vllm.service
  fi
  sleep 60
done

Cloudflare + Caddy 发布基础设施

所有 Web 项目均通过 Cloudflare Tunnel + Caddy 发布。Caddy 充当反向代理,处理 HTTPS 终止和路由。

横向安全部署

在所有项目中统一应用安全策略。

  • API 密钥通过环境变量管理,未硬编码。
  • 分支保护配置为必须通过 Pull Request。
  • 自动执行周期性日志审计脚本。

运维技巧

  • 统一使用 CUDA 12.8,解决项目间的版本冲突。
  • 通过环境变量管理每个项目的库路径。
  • 当 GPU 利用率超过阈值时自动停止服务。

总结

为最大化 RTX 5090 32 GB 显存的利用,重点关注了三点:

  1. 构建通用基础设施 – 使用 SQLite FTS5 与 Streamlit 标准化搜索和 UI。
  2. 动态资源管理 – 通过 vLLM + TensorRT 切换,根据模型负载进行优化。
  3. 横向安全部署 – 标准化身份验证流程。

在将棋 AI 项目中,FP8 量化结合 TensorRT 相比 FP16 实现了显著的推理速度提升。将“技术选型的自由度”与“通用基础设施的重要性”平衡,是个人开发成功的关键。

0 浏览
Back to Blog

相关文章

阅读更多 »