|
<!DOCTYPE html> |
|
<html> |
|
<meta charset="UTF-8" /> |
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
|
|
<head> |
|
<title>LLM Mixer</title> |
|
<link rel="icon" |
|
href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 100 100%22><text y=%221em%22 font-size=%2280%22>♾️</text></svg>"> |
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script> |
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.2/js/bootstrap.bundle.min.js"></script> |
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap/5.3.2/css/bootstrap.min.css" /> |
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/default.min.css" /> |
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"></script> |
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css" /> |
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/showdown/2.1.0/showdown.min.js"></script> |
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js"></script> |
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.11/clipboard.min.js"></script> |
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.30.1/moment.min.js"></script> |
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.30.1/moment-with-locales.min.js"></script> |
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/dexie/3.2.4/dexie.min.js"></script> |
|
<link rel="stylesheet" href="./css/default.css" /> |
|
</head> |
|
|
|
<body> |
|
<div id="main-container"> |
|
<div class="offcanvas offcanvas-start" data-bs-scroll="true" data-bs-backdrop="false" tabindex="-1" |
|
id="chat-history-sidebar" aria-labelledby="chat-history-sidebar-label"> |
|
<div class="offcanvas-header"> |
|
<h5 class="offcanvas-title" id="chat-history-label"> |
|
<a style="text-decoration: none; color:inherit;" href="#">Chat History</a> |
|
</h5> |
|
<button id="chat-history-sidebar-close-button" class="btn-close"> |
|
</button> |
|
</div> |
|
<div class="offcanvas-body"> |
|
|
|
|
|
|
|
|
|
<ul class="navbar-nav justify-content-end flex-grow-1"> |
|
<li class="nav-item"> |
|
<a class="nav-link active" href="#chat-session-example-1">Chat-Session-Example-1</a> |
|
</li> |
|
<li class="nav-item"> |
|
<a class="nav-link" href="#chat-session-example-2">Chat-Session-Example-2</a> |
|
</li> |
|
</ul> |
|
</div> |
|
</div> |
|
<div id="chat-session-container" class="container"> |
|
<div id="messagers-container" class="container my-3 py-1"></div> |
|
</div> |
|
<div id="user-interactions" class="container fixed-bottom mb-3"> |
|
<div class="row mt-2 no-gutters"> |
|
<div class="col px-0"> |
|
<input id="openai-endpoint" class="form-control" rows="1" |
|
placeholder="Input Endpoint URL, then click √"></input> |
|
</div> |
|
<div class="col-auto px-0"> |
|
<button id="openai-endpoint-button" class="btn"> |
|
<i class="fa fa-check"></i> |
|
</button> |
|
</div> |
|
<div class="col px-0"> |
|
<input id="openai-api-key" class="form-control" rows="1" |
|
placeholder="Input API Key, then click √"></input> |
|
</div> |
|
<div class="col-auto px-0"> |
|
<button id="openai-api-key-button" class="btn"> |
|
<i class="fa fa-check"></i> |
|
</button> |
|
</div> |
|
</div> |
|
<div class="mt-2 row no-gutters"> |
|
<div class="col-auto"> |
|
<button id="show-endpoint-and-key-button" class="btn px-0"> |
|
<i class="fa fa-key"></i> |
|
</button> |
|
</div> |
|
<div class="col px-0"> |
|
<select class="form-select" id="available-models-select" title="Available Models"></select> |
|
</div> |
|
<div class="col-auto pr-0"> |
|
<select class="form-select" id="temperature-select" title="Temperature"></select> |
|
</div> |
|
<div class="col-auto"> |
|
<button id="screenshot-button" class="btn px-0"> |
|
<i class="fa fa-camera"></i> |
|
</button> |
|
</div> |
|
<div class="col-auto"> |
|
<button id="scroll-to-bottom-button" class="btn px-0"> |
|
<i class="fa fa-angles-down"></i> |
|
</button> |
|
</div> |
|
<div class="col-auto"> |
|
<button id="chat-history-sidebar-toggle-button" class="btn px-0"> |
|
<i class="fa fa-bars"></i> |
|
</button> |
|
</div> |
|
</div> |
|
<div class="mt-2 row no-gutters"> |
|
<div class="col-auto pr-0"> |
|
<button id="new-chat-session" class="btn px-0"> |
|
<i class="fa fa-circle-plus"></i> |
|
</button> |
|
</div> |
|
<div class="col px-0"> |
|
<textarea id="user-input" class="form-control" rows="1" |
|
placeholder="Typing your prompt here ..."></textarea> |
|
</div> |
|
<div class="col-auto pr-3 pl-0"> |
|
<button id="send-user-input" class="btn px-0"> |
|
<i class="fa fa-paper-plane"></i> |
|
</button> |
|
</div> |
|
</div> |
|
|
|
</div> |
|
</div> |
|
</body> |
|
<script type="module" src="./main.js"></script> |
|
|
|
</html> |