8 ms·
Show HN: I built a better UI for ChatGPT
- trungdq88 4y agoI was annoyed by the default OpenAI ChatGPT slow-typing animation and logging me out every day, so I built a new UI client on top of its API. It's a static web app, you can host it yourself, data is stored locally on your browser, API requests are made directly to OpenAI API without any middle server. It has some more convenient features that make your that experience way better. Like search chat history, prompt library, integrations, etc. Would love to hear all the feedback!
- Loeffelmann 4y agoOhh man I wanted to publish my own electron app today :( It's basically doing the same thing. I found that using API keys is also significantly cheaper than using the subscription with moderate usage. Congrats on the release.
- singularity2001 4y agoDon't worry there are only about 10,000 people working on similar apps right now ;)
- itsuka 4y agoI'm also building a personal ChatGPT client for a similar reason as the OP, which is to address the issues of buggy and slow UX, among others. As you mentioned, many people are currently working on projects using ChatGPT API. In fact, in the past 24 hours, around 12 new apps that have been showcased on OpenAI Discord channel alone. Some of these apps are open source, which makes them a great source of learning and inspiration for me.
- behnamoh 4y ago> Some of these apps are open source, which makes them a great source of learning and inspiration for me. Do you then reference those open source apps?
- deleted 4y ago[deleted]
- corobo 4y agoI whipped up a quick cli script myself haha https://gist.github.com/cohan/7d2abfa56b2dfdaae98bf70e84c62218 https://gist.github.com/cohan/7d2abfa56b2dfdaae98bf70e84c622... All of these UIs when there's a perfectly good command line right there! The CLI is always the best way for text. > ai what is that song with moms spaghetti "Lose Yourself" by Eminem Sorted.
- singularity2001 4y agoyep CLI is the way different flavours: 'fix' acts as `thefuck` replacement in 30 lines of python
- webjunkie 4y agoNice, I'm curious though, does the API also remember context from earlier conversations or can it be made to?
- corobo 4y agoI don't believe so, but that's not something I wanted/needed for this one. It's just for one off things for me. Something like > ai give me an index match formula to link between sheets New and Current Then I'll tweak the output as needed to match reality. Context would probably get in the way more than it helps in this use case. Don't expect perfection from an AI assistant, just expect it to be a little faster than tabbing to a browser or figuring it out yourself. In Stellaris terms: https://img.imgy.org/D76l.png https://img.imgy.org/D76l.png
- dragonwriter 4y agoCLI is a UI, too.
- deleted 4y ago[deleted]
- corobo 4y agoI know mate, haha. I imagine someone can do much better than I did in a few minutes, but yeah use the UI that already exists instead of sprinkling electron on something text based. If anyone fancies a tinker I imagine future editions of a CLI AI having a --context to include former prompts*, --stfu|--concise to make it respond concisely (as I was originally just responding "I know mate, haha" I also need this flag adding), probably a --model= to override that bit too, maybe even a --preamble=./prompt.txt ... it definitely needs a --json flag to prompt and enforce "I only want json and I'll parse it out of the response myself if I need to" * Not just keeping a buffer and re-sending it, I believe context asks GPT to summarise the conversation so far and then uses the output of that for context memory. It'd need some tinkering. I'll get round to it myself eventually, for now being able to ask little things like "is it defence or defense" and "what company owns the coco pops brand" is doing me just fine I did realise I can now potentially pipe things into and out of GPT too, but have yet to come up with a use other than outputting through TTS e.g. > ./ai is it defence or defense | festival --tts
- Loeffelmann 4y agoHaha I felt better after reading this thread. I mean it was a fun weekend project!
- pablosr11 4y agoAgree on both issues, specially the one logging you out daily. Congrats on the quick launch! Can already see the whisper model makings its way through the product :)
- trungdq88 4y agothank you!
- jw1224 4y ago> I was annoyed by the default OpenAI ChatGPT slow-typing animation I’d assumed ChatGPT’s slow-typing was actually the model’s real-time output, streamed to the browser token-by-token. When I’ve made GPT3 API calls it’s worked like this, with streaming switched off I might need to wait ~20 seconds for a long response back. I just tried your UI, and it’s so much faster! Was my assumption about real-time output wrong? Great project, looking forward to using it more :)
- trungdq88 4y agoYep, I was surprised I about the response time too. I'm not sure what's going on under the hood, maybe OpenAI did something with the stream output that causes the slowness.
- lordnacho 4y agoPerhaps it is simply a way to limit the number of queries? If you force people to wait 10s for an answer they aren't writing new questions all the time.
- TeMPOraL 4y agoFor me it's been consistently the case that after 2-3 messages, the animation would start to visibly lag, and eventually (on 3rd or 4th reply) slow to a halt, sometimes mid-sentence, completely bricking the session. It's been like this since ChatGPT was first opened to public. I initially assumed it's just the usual case of a bloated SPA, but now I think maybe I'm being throttled on purpose?
- weird-eye-issue 4y agoIt uses a different model. ChatGPT Plus is fast too.
- IanCal 4y agoChatGPTs paid version is extremely fast, and this is using the paid API. The paid API feels slower than the paid UI, but this may be the difference between streaming results and getting everything in one payload.
- mellosouls 4y agoIt's a static web app, you can host it yourself Note for anybody else wondering, it's not open source, you have to download a binary. More FAQ by clicking the Gift (?) icon at the top and scrolling down.
- seanw444 4y agoMoving on...
- Terretta 4y agoEntrust your AI key to a closed binary? Bot what could possibly go wrong?
- kilgnad 4y agoCareful with the sarcasm. Only positive vibes are allowed on showHN or the admin goes ballistic. I've seen it happen.
- screamingninja 4y ago> Only positive vibes are allowed on showHN Sarcasm?
- kilgnad 4y agoNo. It's real. According to dang, showHN is suppose to be a "safe space". You could make absolute crap, everyone is suppose to be positive about it. Dang will flag people who don't do this. Nothing dang can do though is hundreds of people hate it though. Things with actual security issues for example he'll likely just be quiet about it.
- screamingninja 4y agoThat is unfortunate. You would think that the intent behind posting ShowHN is to get constructive feedback but based on what you described, it appears that the expectation is to make those creators feel good instead.
- birdyrooster 4y agoBut why is it closed source? It makes no sense why you would obfuscate this.
- determined 4y ago[dead]
- punnerud 4y agoNice, just add from Safari to HomeScreen and you get full screen view
- trungdq88 4y agoyes, that was one of the important features I wanted to build :)
- appananay23 4y ago[dead]
- ICodeSometimes 4y agoWell done! I wonder if it's worth it to also hide a "select model" option somewhere, since we're putting in our own api keys i'd be interested in trying out other models even though they arent "chat" models. Also would be great to see which messages are included in the computation, since chat gpt limits total characters per request to 4K? so inevitably some past messages will be rendered useless. Overall well done!
- trungdq88 4y agoThank you for the suggestion! I'll add an option to select the model soon. As per your question, currently all the previous messages of the same chat will be included in the request. If you hit the 4k token limit, there will be an error message. I'll look into improving this too.
- johnjungles 4y agoI just want PWA on ChatGPT
- trungdq88 4y agoyou can add typingmind.com to home screen and use it as a PWA :)
- epaga 4y agoThis looks very nice, lots of great extra features over the vanilla UI. One possible improvement: I had accidentally mistyped my API key and it popped up an HTTP 500 error instead of going "That doesn't seem to be a valid API key, could you make sure you pasted it in correctly" or something...
- trungdq88 4y agoThis is noted. Thanks for the feedback!
- Bzzz666 4y agoCool project! Thank you! I would request a new feature, a page/document upload (in parts if it is big) to update the right\correct context. For example the current documentation for the framework I use version 27, but chatgpt only knows version 17 of it and I have to upload pieces of documentation every time to get correct updated code snippets. That would be great, something like a button\action with a promt that would load and split if needed large amounts of text and promt it in conversation. (maybe add format some parsing, like markdown or plain text)
- singularity2001 4y agoThat can become expensive though (not least computationally) to use almost all of those 4000 tokens for your document every time you ask a question.
- Heleana 4y agoGreat work on the project and thank you for sharing it! I do have a feature request though - would it be possible to add a page/document upload function that allows for updating the correct context?
- deleted 4y ago[deleted]
- 101008 4y agoLooks amazing - congrats! I haven't checked the API in detail but how do you keep the context of the conversation (awareness of previous questions and answers)? Do you send back the whole conversation on every request?
- trungdq88 4y agoyes, each new request contains the whole conversation.
- deleted 4y ago[deleted]
- lowefk 4y agoShameless plug: I just don't like closed-source software; here is my attempt at re-implementing ChatGPT's UI as a desktop app with the ChatGPT API, and it is open source: https://github.com/chatgptui/desktop https://github.com/chatgptui/desktop I've implemented most of features of ChatGPT, text-to-speech via Azure, and keyboard shortcuts such as tab/shift+tab. Edit: However, as typingmind is earning more than $1000, it should have more features and better maintenance.
- vlovich123 4y agoIsn’t ChatGPT itself closed source?
- lowefk 4y agoI mean, - ChatGPT's UI is closed-source, so I implemented a UI that looks almost identical to ChatGPT, - While ChatGPT's AI model is closed source, it can be accessed through the OpenAI API.
- Tostino 4y agoNot to mention, there are already OpenAI API clones which handle running against any of the open-source models. When they get more powerful and act as an actual competitor, it'll be very nice to have open-source components throughout the stack.
- Loeffelmann 4y agoAnother one I made. https://github.com/Loeffeldude/my-chat-gpt https://github.com/Loeffeldude/my-chat-gpt
- agust 4y agoIt has the one most important feature ChatGPT is missing: add to homescreen/install. Not sure why they haven't added it yet. Thank you for making this!
- throwaway86530 4y agoVery neat. I am already using it. One feature I would love is passing a prompt (or even a conversation) using queryparams. It would help for the integration with other tools. Another feature I'd love is to exploit the 'system' agent. From the documentation, there are three possible agents : User, Assistant and System. My understanding is that system can be exploited to drive the expected general behavior of the assistant and seems very useful to that regard. Last thing, if it was open-source I could clone it and that would dismiss any fears from having my API key stolen. But that's up to you of course.
- weird-eye-issue 4y agohttps://koala.sh/chat?q=hello https://koala.sh/chat?q=hello
- andygcook 4y agoTony Dihn built this, who is a fun follow on Twitter if you enjoy indie hacking content: https://twitter.com/tdinh_me https://twitter.com/tdinh_me
- dmw_ng 4y agoCan anyone recommend a UI clone as close to the regular ChatGPT as possible, but built on the API? The API traffic is sent directly into Azure while the regular UI is sent via CloudFlare. Vastly prefer the former reading my conversations than the latter
- davidmurdoch 4y agoWhy?
- weird-eye-issue 4y agoGive me a break
- kierangill 4y agoI’m working on the same thing, but open source! https://github.com/kierangilliam/chatwithme.chat https://github.com/kierangilliam/chatwithme.chat Available at: https://www.chatwithme.chat/ https://www.chatwithme.chat/
- column 4y agoThe "How you can verify this." doesn't seem to work. Clicking on it changes the title of the page to "undefined".
- jerpint 4y agoAnyone aware of a mobile app doing something similar? I guess I could use this too vis browser
- trungdq88 4y agoyou can add the website to home screen, it works like an app!
- foolinaround 4y agoChatGPT has this annoying habit of crashing or having extended downtime. If this UI can capture my query in the case of such a crash and keep retrying till I get the answer, and then notify me (browser, email, etc) - that would be great.
- purplend 4y agoSuperpower ChatGPT is free, has a ton of features, and it doesn't need your API key. https://www.reddit.com/r/OpenAI/comments/11ef8ea/superpower_chatgpt_v220_is_out/ https://www.reddit.com/r/OpenAI/comments/11ef8ea/superpower_...
- freedomben 4y agoNeat, it's a browser extension which is an interesting approach. Do you know if it's open source?
- thunderbong 4y agoTo all the HNers here commenting on having used this - are you entering your API keys into this app website directly?
- kolinko 4y agoYes. For most other apps I wouldn't do this, but here the author claims that it holds the keys locally within the browser.
- comatose_thor 4y agoCan you please prevent it from zooming on input on iOS devices?
- thoughtpeddler 4y agoHow is this different from Quora's new Poe web app? [1] [1] https://twitter.com/adamdangelo/status/1631714221171023873 https://twitter.com/adamdangelo/status/1631714221171023873
- leobg 4y agoText to speech output, please. Google WaveNet voices. With a toggle to turn auto-reading of responses off or on. Add serpapi on top of that, and you might just become my phone’s most used app.
- poisoned 4y agoPretty buggy got `Application error: a client-side exception has occurred (see the browser console for more information).` after a couple of prompts. And I can't access my old conversation anymore and have to restart the whole conversation.