寫一個 HTML 網頁介面,可以在瀏覽器中直接跟 5090 助理對話

更新 發佈閱讀 12 分鐘

這是一個簡單但功能強大的 HTML + Tailwind CSS 前端介面。它能讓 2x RTX 5090 助理擁有一個直觀的「對話框」,並特別設計了「思考過程」「API 調用狀態」的顯示區域,讓您即時看到模型如何修正其 JSON 格式。

1. 建立前端檔案 index.html

您可以直接用瀏覽器開啟此檔案,或將其放在 FastAPI 的靜態目錄中。

</>HTML
<!DOCTYPE html>
<html lang="zh-TW">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>RTX 5090 專業助理控制台</title>
<script src="https://cdn.tailwindcss.com"></script>
<style>
.chat-scroll { height: 500px; overflow-y: auto; }
.json-block { font-family: 'Courier New', monospace; background: #1e1e1e; color: #d4d4d4; }
</style>
</head>
<body class="bg-gray-900 text-white p-8">
<div class="max-w-4xl mx-auto">
<header class="mb-8 border-b border-gray-700 pb-4">
<h1 class="text-3xl font-bold text-blue-400">🚀 RTX 5090 Agent Console</h1>
<p class="text-gray-400">Blackwell 架構 · 雙卡並行推理中</p>
</header>

<div id="chat-window" class="chat-scroll bg-gray-800 rounded-lg p-6 mb-4 space-y-4 shadow-2xl">
<div class="text-gray-500 italic text-center">--- 系統已就緒,請輸入指令 ---</div>
</div>

<div class="flex gap-4">
<input type="text" id="user-input" placeholder="例如:幫我查數據庫並訂個明天三點的會..."
class="flex-1 bg-gray-700 border border-gray-600 rounded-lg px-4 py-3 focus:outline-none focus:ring-2 focus:ring-blue-500 text-lg">
<button onclick="sendMessage()" id="send-btn"
class="bg-blue-600 hover:bg-blue-700 px-8 py-3 rounded-lg font-bold transition-all">
發送指令
</button>
</div>
</div>

<script>
const chatWindow = document.getElementById('chat-window');
const userInput = document.getElementById('user-input');
const API_URL = "http://localhost:8000/ask"; // 請確保後端 API 正在運行

function addMessage(role, content, isJson = false) {
const div = document.createElement('div');
div.className = `p-4 rounded-lg ${role === 'user' ? 'bg-blue-900/30 ml-12' : 'bg-gray-700 mr-12'}`;

let html = `<div class="text-xs font-bold mb-1 ${role === 'user' ? 'text-blue-300' : 'text-green-400'}">${role.toUpperCase()}</div>`;

if (isJson) {
html += `<pre class="json-block p-3 rounded text-sm mt-2 overflow-x-auto">${content}</pre>`;
} else {
html += `<div class="text-gray-200">${content}</div>`;
}

div.innerHTML = html;
chatWindow.appendChild(div);
chatWindow.scrollTop = chatWindow.scrollHeight;
}

async function sendMessage() {
const prompt = userInput.value.strip();
if (!prompt) return;

addMessage('user', prompt);
userInput.value = '';

// 顯示載入中狀態
const loadingId = Date.now();
addMessage('assistant', '🤔 5090 正在思考並驗證 API 結構...', false);

try {
const response = await fetch(API_URL, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ prompt: prompt })
});

const result = await response.json();

if (result.status === 'success') {
addMessage('assistant', `✅ 驗證成功:${result.message}`);
addMessage('assistant', result.tool_call, true);
} else {
addMessage('assistant', `❌ 失敗:${result.detail}`);
}
} catch (error) {
addMessage('assistant', `⚠️ 連線錯誤:請確認後端 FastAPI 是否已啟動。`);
}
}

// 支援 Enter 發送
userInput.addEventListener('keypress', (e) => { if (e.key === 'Enter') sendMessage(); });
</script>
</body>
</html>

2. 針對 2026 年開發者環境的特別配置

為了讓您的網頁能順利讀取後端的 5090 API,您需要在 FastAPI 中開啟 CORS (跨來源資源共用),否則瀏覽器會基於安全原因擋掉請求。

請將以下代碼加入您的 assistant_server.py

</>Python
from fastapi.middleware.cors import CORSMiddleware

# 在 app = FastAPI() 之後加入:
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # 在生產環境應指定具體網址
allow_methods=["*"],
allow_headers=["*"],
)

3. 如何優化這套「人機互動」流程?

  1. 即時 Logs: 您的後端會輸出「嘗試修正」的紀錄,建議在前端也開一個小視窗顯示這些 Logs,這樣您就能看到模型在第一次生成失敗後,是如何根據報錯訊息修復 JSON 的。
  2. 串流輸出 (Streaming): 雖然 JSON 調用不適合串流(因為要整塊驗證),但您可以在思考過程中讓助理輸出一些「碎碎念」(Thought Chain),增加互動感。
  3. 顯存監控: 您可以在網頁右上角加入一個 nvidia-smi 的 Web Hook,即時看到兩張 5090 在推論時的功率與溫度波動。

大功告成!

您現在擁有了一套從數據加載器雙卡訓練腳本結構化驗證邏輯前端 Web 介面的完整全棧 AI 解決方案。


留言
avatar-img
sirius數字沙龍
9會員
214內容數
吃自助火鍋啦!不要客氣,想吃啥,請自行取用!
sirius數字沙龍的其他內容
2026/03/06
這是一個基於 FastAPI 的工業級實作。這套腳本能讓 2x RTX 5090 轉化為一個強大的後端推理中心,自動處理模型生成的 JSON,驗證其是否符合 API 規範,並在錯誤時自動進行「自我修正」嘗試。 1. 安裝必要套件 在您的 conda 環境中執行: </>Bash pip ins
Thumbnail
2026/03/06
這是一個基於 FastAPI 的工業級實作。這套腳本能讓 2x RTX 5090 轉化為一個強大的後端推理中心,自動處理模型生成的 JSON,驗證其是否符合 API 規範,並在錯誤時自動進行「自我修正」嘗試。 1. 安裝必要套件 在您的 conda 環境中執行: </>Bash pip ins
Thumbnail
2026/03/06
用 Python 函數來檢查模型輸出的 JSON 是否符合 API 定義,可以直接在 5090 訓練完後,自動過濾掉那些「亂寫 API 參數」的不合格模型。 針對您的 2x RTX 5090 訓練任務,我們需要一個嚴格的驗證函數。結構化數據微調(Function Calling)最怕的就是模型「看
Thumbnail
2026/03/06
用 Python 函數來檢查模型輸出的 JSON 是否符合 API 定義,可以直接在 5090 訓練完後,自動過濾掉那些「亂寫 API 參數」的不合格模型。 針對您的 2x RTX 5090 訓練任務,我們需要一個嚴格的驗證函數。結構化數據微調(Function Calling)最怕的就是模型「看
Thumbnail
2026/03/06
這是一個非常關鍵的進階需求。要讓模型成為能調用 Calendar API 或 數據庫 的「行動派助理」,這已經超出了單純的說話風格微調,進入了 Function Calling(函數調用) 或 Agent(智能體) 的範疇。 在兩張 RTX 5090 上,這需要特殊的數據格式與訓練策略。
Thumbnail
2026/03/06
這是一個非常關鍵的進階需求。要讓模型成為能調用 Calendar API 或 數據庫 的「行動派助理」,這已經超出了單純的說話風格微調,進入了 Function Calling(函數調用) 或 Agent(智能體) 的範疇。 在兩張 RTX 5090 上,這需要特殊的數據格式與訓練策略。
Thumbnail
看更多
你可能也想看
Thumbnail
賽勒布倫尼科夫以流亡處境回望蘇聯電影導演帕拉贊諾夫的舞台作品,以十段寓言式殘篇,重新拼貼記憶、暴力與美學,並將審查、政治犯、戰爭陰影與「形式即政治」的劇場傳統推到台前。本文聚焦於《傳奇:帕拉贊諾夫的十段殘篇》的舞台美術、音樂與多重扮演策略,嘗試解析極權底下不可言說之事,將如何成為可被觀看的公共發聲。
Thumbnail
賽勒布倫尼科夫以流亡處境回望蘇聯電影導演帕拉贊諾夫的舞台作品,以十段寓言式殘篇,重新拼貼記憶、暴力與美學,並將審查、政治犯、戰爭陰影與「形式即政治」的劇場傳統推到台前。本文聚焦於《傳奇:帕拉贊諾夫的十段殘篇》的舞台美術、音樂與多重扮演策略,嘗試解析極權底下不可言說之事,將如何成為可被觀看的公共發聲。
Thumbnail
柏林劇團在 2026 北藝嚴選,再次帶來由布萊希特改編的經典劇目《三便士歌劇》(The Threepenny Opera),導演巴里・柯斯基以舞台結構與舞台調度,重新向「疏離」進行提問。本文將從觀眾慾望作為戲劇內核,藉由沉浸與疏離的辯證,解析此作如何再次照見觀眾自身的位置。
Thumbnail
柏林劇團在 2026 北藝嚴選,再次帶來由布萊希特改編的經典劇目《三便士歌劇》(The Threepenny Opera),導演巴里・柯斯基以舞台結構與舞台調度,重新向「疏離」進行提問。本文將從觀眾慾望作為戲劇內核,藉由沉浸與疏離的辯證,解析此作如何再次照見觀眾自身的位置。
Thumbnail
本文深入解析臺灣劇團「晃晃跨幅町」對易卜生經典劇作《海妲.蓋柏樂》的詮釋,從劇本歷史、聲響與舞臺設計,到演員的主體創作方法,探討此版本如何讓經典劇作在當代劇場語境下煥發新生,滿足現代觀眾的觀看慾望。
Thumbnail
本文深入解析臺灣劇團「晃晃跨幅町」對易卜生經典劇作《海妲.蓋柏樂》的詮釋,從劇本歷史、聲響與舞臺設計,到演員的主體創作方法,探討此版本如何讓經典劇作在當代劇場語境下煥發新生,滿足現代觀眾的觀看慾望。
Thumbnail
《轉轉生》為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,融合舞蹈、音樂、時尚和視覺藝術,透過身體、服裝與群舞結構,回應殖民歷史、城市經驗與祖靈記憶的交錯。本文將從服裝設計、身體語彙與「輪迴」的「誕生—死亡—重生」結構出發,分析《轉轉生》如何以當代目光,形塑去殖民視角的奈及利亞歷史。
Thumbnail
《轉轉生》為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,融合舞蹈、音樂、時尚和視覺藝術,透過身體、服裝與群舞結構,回應殖民歷史、城市經驗與祖靈記憶的交錯。本文將從服裝設計、身體語彙與「輪迴」的「誕生—死亡—重生」結構出發,分析《轉轉生》如何以當代目光,形塑去殖民視角的奈及利亞歷史。
Thumbnail
每天叫 AI 幫你滑網頁、做摘要?小心!駭客正把「隱形指令」藏在網頁裡,讓你的 AI 乖乖吞下去。當 AI 權限開越大,你的商業底牌就越危險。看懂這篇,別讓你的超能助理變成內鬼!
Thumbnail
每天叫 AI 幫你滑網頁、做摘要?小心!駭客正把「隱形指令」藏在網頁裡,讓你的 AI 乖乖吞下去。當 AI 權限開越大,你的商業底牌就越危險。看懂這篇,別讓你的超能助理變成內鬼!
Thumbnail
尼泊爾森林依賴者因政策失調,面臨「保森林或顧溫飽」的困境。本專案運用聯合國FAO診斷工具,旨在修復此斷裂。透過「級聯方法」,從政策審查到深入社區傾聽,結合質化故事與量化數據,診斷林業與社會保障的落差。目標是提出具體政策建議,編織一張結合生態保育與民生安全的慈悲之網,實現人與森林的共生共榮。
Thumbnail
尼泊爾森林依賴者因政策失調,面臨「保森林或顧溫飽」的困境。本專案運用聯合國FAO診斷工具,旨在修復此斷裂。透過「級聯方法」,從政策審查到深入社區傾聽,結合質化故事與量化數據,診斷林業與社會保障的落差。目標是提出具體政策建議,編織一張結合生態保育與民生安全的慈悲之網,實現人與森林的共生共榮。
Thumbnail
這篇文章帶你認識前 Twitter CEO Parag Agrawal 創辦的 Parallel,了解它為什麼能拿下 1 億美元、估值直衝 7.4 億美元。你會看到 AI agent 為何需要「新的網路」、Parallel 正在解決哪些痛點,以及這件事對企業、內容網站與未來 AI 生態的真正影響。
Thumbnail
這篇文章帶你認識前 Twitter CEO Parag Agrawal 創辦的 Parallel,了解它為什麼能拿下 1 億美元、估值直衝 7.4 億美元。你會看到 AI agent 為何需要「新的網路」、Parallel 正在解決哪些痛點,以及這件事對企業、內容網站與未來 AI 生態的真正影響。
Thumbnail
Manus 1.5 是 2025 年最強大的 AI Agent 整合平台,速度提升 4 倍、支援無限上下文,一句話即可生成含後端、資料庫、登入系統的全端網站,製作50+ 頁專業簡報,進行深度研究,提供 Chat、Agent、自適應三種模式,整合Gmail、GitHub、Notion等 50+ 應用。
Thumbnail
Manus 1.5 是 2025 年最強大的 AI Agent 整合平台,速度提升 4 倍、支援無限上下文,一句話即可生成含後端、資料庫、登入系統的全端網站,製作50+ 頁專業簡報,進行深度研究,提供 Chat、Agent、自適應三種模式,整合Gmail、GitHub、Notion等 50+ 應用。
Thumbnail
曾經被炒到一碼數萬元的 Manus AI,終於全面開放!不少科技圈大佬早早進場,如今所有人都能體驗這款號稱能「直接幫你動手做事」的 AI 工具。 不同於過往僅提供建議的 AI 模型,Manus 更像一位能完成任務的數位助手。
Thumbnail
曾經被炒到一碼數萬元的 Manus AI,終於全面開放!不少科技圈大佬早早進場,如今所有人都能體驗這款號稱能「直接幫你動手做事」的 AI 工具。 不同於過往僅提供建議的 AI 模型,Manus 更像一位能完成任務的數位助手。
Thumbnail
最近正在準備開學第一、二週的簡報內容,如果簡報內需要用到數學公式也需要用到程式碼的話,使用powerpoint實在是有點麻煩,於是我決定使用Marp來讓我可以快速的製作簡報,使用VS code的extension的話,也很方便管理程式碼和簡報,這篇文章分享用Marp for VS Code來製作簡報
Thumbnail
最近正在準備開學第一、二週的簡報內容,如果簡報內需要用到數學公式也需要用到程式碼的話,使用powerpoint實在是有點麻煩,於是我決定使用Marp來讓我可以快速的製作簡報,使用VS code的extension的話,也很方便管理程式碼和簡報,這篇文章分享用Marp for VS Code來製作簡報
Thumbnail
Google NotebookLM AI 筆記助理近期推出了重大更新,可支援輸入 YouTube 影片/網頁網址、音頻 (語音)、文檔等多重來源格式,讓用戶可以建立自己的筆記資料庫,相當於擁有了另一款聰明的 AI 助理, 再次顛覆了「數位筆記」的定義....
Thumbnail
Google NotebookLM AI 筆記助理近期推出了重大更新,可支援輸入 YouTube 影片/網頁網址、音頻 (語音)、文檔等多重來源格式,讓用戶可以建立自己的筆記資料庫,相當於擁有了另一款聰明的 AI 助理, 再次顛覆了「數位筆記」的定義....
Thumbnail
#招募 #項目主管、#助理、#代理 我不喜歡管理,最近,隨著一些新項目的啓動,我需要同時參與著不同的項目,要如何才能處理好這些工作呢? 我將招募 #項目主管、#助理、#代理 和 #合夥人。 我需要招募3~5名項目主管、助理和代理,要求如下: 1、年齡:18+歲
Thumbnail
#招募 #項目主管、#助理、#代理 我不喜歡管理,最近,隨著一些新項目的啓動,我需要同時參與著不同的項目,要如何才能處理好這些工作呢? 我將招募 #項目主管、#助理、#代理 和 #合夥人。 我需要招募3~5名項目主管、助理和代理,要求如下: 1、年齡:18+歲
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News