-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
7179c77
commit cdf200e
Showing
1 changed file
with
103 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,103 @@ | ||
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover"><title>Assistant</title><link rel="shortcut icon" type="image/x-icon" href="/icon.png"><link rel="manifest" href="/manifest.json"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-title" content="Assistant"><link rel="apple-touch-icon" href="/icon.png"><meta name="theme-color" content="white" media="(prefers-color-scheme: light)"><meta name="theme-color" content="hsl(215, 20%, 9%)" media="(prefers-color-scheme: dark)"><script defer="defer" src="main-91dd706c02280dbca272.js"></script><link href="style-e55085ecd9d56c5327ec.css" rel="stylesheet"></head><body><svg style="display:none;"><symbol id="settings-icon" viewBox="0 0 110 110"><path fill-rule="evenodd" fill="none" stroke="var(--settings-icon-border)" stroke-width="5.0" d="M 61.959 5.487 L 65.474 18.472 L 70.456 20.285 L 81.496 12.598 L 92.157 21.543 L 86.503 33.751 L 89.154 38.342 L 102.553 39.549 L 104.97 53.255 L 92.792 58.972 L 91.871 64.193 L 101.359 73.73 L 94.401 85.783 L 81.397 82.335 L 77.336 85.743 L 78.474 99.147 L 65.396 103.907 L 57.651 92.907 L 52.349 92.907 L 44.604 103.907 L 31.526 99.147 L 32.664 85.743 L 28.603 82.335 L 15.599 85.783 L 8.641 73.73 L 18.129 64.193 L 17.208 58.972 L 5.03 53.255 L 7.447 39.549 L 20.846 38.342 L 23.497 33.751 L 17.843 21.543 L 28.504 12.598 L 39.544 20.285 L 44.526 18.472 L 48.041 5.487 Z"/><circle cx="55.0" cy="55.0" r="17.5" fill="none" stroke="var(--settings-icon-border)" stroke-width="5.3"/></symbol></svg> <svg style="display:none;"><symbol id="x-icon" viewBox="-20.0 -20.0 240.0 240.0"><path stroke="var(--settings-icon-border)" stroke-width="20.0" fill="none" d="M20,20 L180.0,180.0 M20,180.0 L180.0,20"/></symbol></svg><div id="intro-view" class="full-window-overlay hidden"><div class="assistant-icon-container"><img src="/icon.png" class="assistant-icon"></div><h1>Welcome to Assistant</h1>The power of <strong>ChatGPT</strong> in a better package:<ul><li>No logouts, ever.</li><li><a href="https://openai.com/pricing#language-models" target="_blank">Usage-based pricing</a>. For GPT-3.5, this means about 750 pages of text per dollar.</li><li>You can install Assistant app for easy access.</li><ul><li>iOS & Android: Add page to home screen</li><li>Desktop: Install as a Chrome app</li></ul></ul><div class="start-view">Start by <a href="https://platform.openai.com/account/api-keys" target="_blank">getting an API key</a> from OpenAI.<div class="disclaimer">OpenAI documentation says "Do not share your API key with others, or expose it in the browser or other client-side code." This means that if you are <strong>building</strong> a web app, you should not leak the service's API key to your users. Assistant stores the API key in your browser's localStorage and only sends it directly to OpenAI's API.</div></div>OpenAI API key: <input type="text" class="api-key-input" id="intro-api-key-input" data-persistent-name="api-key" placeholder="sk-xxxx"><br><div id="intro-api-key-status" class="api-key-status"></div><br><button id="intro-continue" class="secondary">Continue</button></div><div id="settings-view" class="full-window-overlay hidden"><button id="settings-exit-button" class="reset-button"><svg style="width:25px; height:25px"><use xlink:href="#x-icon"></use></svg></button><h1>Settings</h1>All settings are saved and synced across tabs.<hr><h2>Save conversation</h2><button id="save-md-button" class="secondary">Save as markdown</button><br><button id="screenshot-button" class="secondary">Save as PNG</button><br><hr><h2>Maximum number of previous messages sent to the API</h2><div class="disclaimer">ChatGPT has no memory, so the conversation history needs to be sent during each new message. Sending all messages can get expensive, and will eventually reach the maximum number of tokens allowed per request. You can adjust this parameter during the conversation if you feel the AI should have more context, or if you want to save tokens. Zero means only the last user’s message and the initial system message will be sent.</div><input type="number" inputmode="numeric" pattern="[0-9]*" min="0" data-persistent-name="maximum-messages" value="5"><br><h2>Initial system message</h2><div class="disclaimer">You can write here any instructions for the AI that you don't want to manually repeat in each conversation. This is sent to the API even if early messages are truncated.</div><div class="textarea-border-radius"><textarea data-persistent-name="initial-system-message" id="system-message">User prefers markdown</textarea></div><hr><h2>OpenAI API key</h2><div class="disclaimer">You can find your API keys from the <a href="https://platform.openai.com/account/api-keys">OpenAI’s API key page</a>.</div><input type="text" class="api-key-input" data-persistent-name="api-key" placeholder="sk-xxxx"><br><div class="api-key-status"></div><hr><button id="settings-show-intro" class="secondary">Show intro</button><br><footer><a href="https://platform.openai.com/account/usage" target="_blank">Your usage</a> · <a href="https://github.com/felixbade/chatgpt-web-ui" target="_blank">Source code</a> · <a href="https://github.com/felixbade/chatgpt-web-ui/issues" target="_blank">Feature request</a> · Version <span id="version">1.6.0</span></footer></div><div class="container"><button id="settings-button" class="reset-button"><svg style="width:25px; height:25px"><use xlink:href="#settings-icon"></use></svg></button> <select id="model-select"><option value="gpt-3.5-turbo-1106">GPT-3.5 Turbo</option><option value="gpt-4-1106-preview">GPT-4 Turbo</option><option value="gpt-4">GPT-4</option></select><div id="notification" class="notification"></div><div id="output"></div></div><form id="compose-box"><div class="textarea-border-radius" id="prompt-container"><textarea id="prompt" placeholder="Message" autofocus rows="1"></textarea></div><button type="submit" id="submit">Send</button></form></body></html> | ||
<!DOCTYPE html> | ||
<html lang="en"> | ||
|
||
<head> | ||
<meta charset="utf-8"> | ||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> | ||
<meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover"> | ||
<title>Assistant</title> | ||
<link rel="shortcut icon" type="image/x-icon" href="/icon.png"> | ||
<link rel="manifest" href="/manifest.json"> | ||
<meta name="apple-mobile-web-app-capable" content="yes"> | ||
<meta name="apple-mobile-web-app-title" content="Assistant"> | ||
<link rel="apple-touch-icon" href="/icon.png"> | ||
<meta name="theme-color" content="white" media="(prefers-color-scheme: light)"> | ||
<meta name="theme-color" content="hsl(215, 20%, 9%)" media="(prefers-color-scheme: dark)"> | ||
<script defer="defer" src="main-91dd706c02280dbca272.js"></script> | ||
<link href="style-e55085ecd9d56c5327ec.css" rel="stylesheet"> | ||
</head> | ||
|
||
<body><svg style="display:none;"> | ||
<symbol id="settings-icon" viewBox="0 0 110 110"> | ||
<path fill-rule="evenodd" fill="none" stroke="var(--settings-icon-border)" stroke-width="5.0" | ||
d="M 61.959 5.487 L 65.474 18.472 L 70.456 20.285 L 81.496 12.598 L 92.157 21.543 L 86.503 33.751 L 89.154 38.342 L 102.553 39.549 L 104.97 53.255 L 92.792 58.972 L 91.871 64.193 L 101.359 73.73 L 94.401 85.783 L 81.397 82.335 L 77.336 85.743 L 78.474 99.147 L 65.396 103.907 L 57.651 92.907 L 52.349 92.907 L 44.604 103.907 L 31.526 99.147 L 32.664 85.743 L 28.603 82.335 L 15.599 85.783 L 8.641 73.73 L 18.129 64.193 L 17.208 58.972 L 5.03 53.255 L 7.447 39.549 L 20.846 38.342 L 23.497 33.751 L 17.843 21.543 L 28.504 12.598 L 39.544 20.285 L 44.526 18.472 L 48.041 5.487 Z" /> | ||
<circle cx="55.0" cy="55.0" r="17.5" fill="none" stroke="var(--settings-icon-border)" stroke-width="5.3" /> | ||
</symbol> | ||
</svg> <svg style="display:none;"> | ||
<symbol id="x-icon" viewBox="-20.0 -20.0 240.0 240.0"> | ||
<path stroke="var(--settings-icon-border)" stroke-width="20.0" fill="none" | ||
d="M20,20 L180.0,180.0 M20,180.0 L180.0,20" /> | ||
</symbol> | ||
</svg> | ||
<div id="intro-view" class="full-window-overlay hidden"> | ||
<div class="assistant-icon-container"><img src="/icon.png" class="assistant-icon"></div> | ||
<h1>Welcome to Assistant</h1>The power of <strong>ChatGPT</strong> in a better package:<ul> | ||
<li>No logouts, ever.</li> | ||
<li><a href="https://openai.com/pricing#language-models" target="_blank">Usage-based pricing</a>. For | ||
GPT-3.5, this means about 750 pages of text per dollar.</li> | ||
<li>You can install Assistant app for easy access.</li> | ||
<ul> | ||
<li>iOS & Android: Add page to home screen</li> | ||
<li>Desktop: Install as a Chrome app</li> | ||
</ul> | ||
</ul> | ||
<div class="start-view">Start by <a href="https://platform.openai.com/account/api-keys" target="_blank">getting | ||
an API key</a> from OpenAI.<div class="disclaimer">OpenAI documentation says "Do not share your API key | ||
with others, or expose it in the browser or other client-side code." This means that if you are | ||
<strong>building</strong> a web app, you should not leak the service's API key to your users. Assistant | ||
stores the API key in your browser's localStorage and only sends it directly to OpenAI's API.</div> | ||
</div>OpenAI API key: <input type="password" class="api-key-input" id="intro-api-key-input" | ||
data-persistent-name="api-key" placeholder="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"><br> | ||
<div id="intro-api-key-status" class="api-key-status"></div><br><button id="intro-continue" | ||
class="secondary">Continue</button> | ||
</div> | ||
<div id="settings-view" class="full-window-overlay hidden"><button id="settings-exit-button" | ||
class="reset-button"><svg style="width:25px; height:25px"> | ||
<use xlink:href="#x-icon"></use> | ||
</svg></button> | ||
<h1>Settings</h1>All settings are saved and synced across tabs. | ||
<hr> | ||
<h2>Save conversation</h2><button id="save-md-button" class="secondary">Save as markdown</button><br><button | ||
id="screenshot-button" class="secondary">Save as PNG</button><br> | ||
<hr> | ||
<h2>Maximum number of previous messages sent to the API</h2> | ||
<div class="disclaimer">ChatGPT has no memory, so the conversation history needs to be sent during each new | ||
message. Sending all messages can get expensive, and will eventually reach the maximum number of tokens | ||
allowed per request. You can adjust this parameter during the conversation if you feel the AI should have | ||
more context, or if you want to save tokens. Zero means only the last user’s message and the initial system | ||
message will be sent.</div><input type="number" inputmode="numeric" pattern="[0-9]*" min="0" | ||
data-persistent-name="maximum-messages" value="5"><br> | ||
<h2>Initial system message</h2> | ||
<div class="disclaimer">You can write here any instructions for the AI that you don't want to manually repeat in | ||
each conversation. This is sent to the API even if early messages are truncated.</div> | ||
<div class="textarea-border-radius"><textarea data-persistent-name="initial-system-message" | ||
id="system-message">User prefers markdown</textarea></div> | ||
<hr> | ||
<h2>OpenAI API key</h2> | ||
<div class="disclaimer">You can find your API keys from the <a | ||
href="https://platform.openai.com/account/api-keys">OpenAI’s API key page</a>.</div><input type="text" | ||
class="api-key-input" data-persistent-name="api-key" placeholder="sk-xxxx"><br> | ||
<div class="api-key-status"></div> | ||
<hr><button id="settings-show-intro" class="secondary">Show intro</button><br> | ||
<footer><a href="https://platform.openai.com/account/usage" target="_blank">Your usage</a> · <a | ||
href="https://github.com/felixbade/chatgpt-web-ui" target="_blank">Source code</a> · <a | ||
href="https://github.com/felixbade/chatgpt-web-ui/issues" target="_blank">Feature request</a> · | ||
Version <span id="version">1.6.0</span></footer> | ||
</div> | ||
<div class="container"><button id="settings-button" class="reset-button"><svg style="width:25px; height:25px"> | ||
<use xlink:href="#settings-icon"></use> | ||
</svg></button> <select id="model-select"> | ||
<option value="gpt-3.5-turbo-1106">GPT-3.5 Turbo</option> | ||
<option value="gpt-4-1106-preview">GPT-4 Turbo</option> | ||
<option value="gpt-4">GPT-4</option> | ||
</select> | ||
<div id="notification" class="notification"></div> | ||
<div id="output"></div> | ||
</div> | ||
<form id="compose-box"> | ||
<div class="textarea-border-radius" id="prompt-container"><textarea id="prompt" placeholder="Message" autofocus | ||
rows="1"></textarea></div><button type="submit" id="submit">Send</button> | ||
</form> | ||
</body> | ||
|
||
</html> |