89 lines
3.4 KiB
HTML
89 lines
3.4 KiB
HTML
|
|
<!DOCTYPE html>
|
||
|
|
<html lang="zh-CN">
|
||
|
|
<head>
|
||
|
|
<meta charset="UTF-8" />
|
||
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
|
|
<title>Vibe Data Analysis</title>
|
||
|
|
<link rel="stylesheet" href="/static/style.css" />
|
||
|
|
</head>
|
||
|
|
<body>
|
||
|
|
<main class="app-shell">
|
||
|
|
<section class="hero">
|
||
|
|
<div>
|
||
|
|
<p class="eyebrow">Vibe Data Analysis</p>
|
||
|
|
<h1>在线数据分析会话</h1>
|
||
|
|
<p class="subtle">
|
||
|
|
上传文件,发起分析,会话结束后继续追问新的专题,不中断当前上下文。
|
||
|
|
</p>
|
||
|
|
</div>
|
||
|
|
<div class="identity-card">
|
||
|
|
<span>当前访客标识</span>
|
||
|
|
<code id="user-id"></code>
|
||
|
|
</div>
|
||
|
|
</section>
|
||
|
|
|
||
|
|
<section class="panel-grid">
|
||
|
|
<section class="panel">
|
||
|
|
<h2>1. 上传文件</h2>
|
||
|
|
<form id="upload-form" class="stack-form">
|
||
|
|
<input id="upload-input" type="file" multiple />
|
||
|
|
<button type="submit">上传并登记</button>
|
||
|
|
</form>
|
||
|
|
<div id="upload-status" class="hint"></div>
|
||
|
|
<div id="file-list" class="file-list"></div>
|
||
|
|
</section>
|
||
|
|
|
||
|
|
<section class="panel">
|
||
|
|
<h2>2. 新建分析会话</h2>
|
||
|
|
<form id="session-form" class="stack-form">
|
||
|
|
<input id="session-title" type="text" placeholder="会话标题,例如:工单健康度" required />
|
||
|
|
<textarea id="session-query" rows="5" placeholder="输入首个分析专题,例如:请先整体评估工单健康度,并指出最需要关注的问题。" required></textarea>
|
||
|
|
<div id="session-file-picker" class="checkbox-list"></div>
|
||
|
|
<button type="submit">创建会话并开始分析</button>
|
||
|
|
</form>
|
||
|
|
<div id="session-status" class="hint"></div>
|
||
|
|
</section>
|
||
|
|
</section>
|
||
|
|
|
||
|
|
<section class="layout">
|
||
|
|
<aside class="sidebar panel">
|
||
|
|
<div class="sidebar-header">
|
||
|
|
<h2>会话列表</h2>
|
||
|
|
<button id="refresh-sessions" type="button">刷新</button>
|
||
|
|
</div>
|
||
|
|
<div id="session-list" class="session-list"></div>
|
||
|
|
</aside>
|
||
|
|
|
||
|
|
<section class="content panel">
|
||
|
|
<div class="content-header">
|
||
|
|
<div>
|
||
|
|
<h2 id="detail-title">未选择会话</h2>
|
||
|
|
<p id="detail-meta" class="hint">选择左侧会话查看分析结果与后续专题。</p>
|
||
|
|
</div>
|
||
|
|
<button id="close-session" type="button" class="ghost">结束当前会话</button>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="followup-box">
|
||
|
|
<textarea id="followup-query" rows="4" placeholder="如果还有新的专题想继续分析,在这里输入。"></textarea>
|
||
|
|
<button id="submit-followup" type="button">继续分析该专题</button>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<div class="tasks-area">
|
||
|
|
<div class="tasks-column">
|
||
|
|
<h3>专题任务</h3>
|
||
|
|
<div id="task-list" class="task-list"></div>
|
||
|
|
</div>
|
||
|
|
<div class="report-column">
|
||
|
|
<h3>报告展示</h3>
|
||
|
|
<div id="report-title" class="report-title">暂无报告</div>
|
||
|
|
<pre id="report-content" class="report-content">选择一个已完成任务查看报告。</pre>
|
||
|
|
<div id="artifact-gallery" class="artifact-gallery"></div>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
</section>
|
||
|
|
</section>
|
||
|
|
</main>
|
||
|
|
<script src="/static/app.js"></script>
|
||
|
|
</body>
|
||
|
|
</html>
|