ztjhz / BetterChatGPT

An amazing UI for OpenAI's ChatGPT (Website + Windows + MacOS + Linux)
http://bettergpt.chat/
Creative Commons Zero v1.0 Universal
7.85k stars 2.65k forks source link

[IDEA] Add Option to "Chat with Document(s)" #72

Open SamuelMiller opened 1 year ago

SamuelMiller commented 1 year ago

Perhaps it's beyond the intended scope of the FreeChatGPT project or better considered later down the road, but my proposal is to enable users to upload a document (such as PDF, TXT, DOCX, EPUB. PDF likely being the most common) in the chat thread within FreeChatGPT. This would allow them to discuss and interact with the document during their chat. Examples of similar features can be found on websites like ChatPDF.com and Humata.ai.

If the cost of additional tokens is too high to implement this feature in the free public API, it could be limited to private and shared APIs.

In Discord, I shared a few tutorials on how to use text embedding to search and interact with lengthy documents. As I am not a programmer, I am unsure which approach would be more flexible for FreeChatGPT. Perhaps, there are more advanced approaches since the #1 tutorial came out, making the #2 tutorial more pertinent?

  1. ChatGPT With Your Docs | Full Tutorial WITH Code Examples https://www.youtube.com/watch?v=kM3DPWO7YV4
  2. Chat with Document(s) using OpenAI ChatGPT API and Text Embedding https://blog.devgenius.io/chat-with-document-s-using-openai-chatgpt-api-and-text-embedding-6a0ce3dc8bc8
saliksik commented 1 year ago

I believe that it may be out of scope for the current focus of the project, which is to provide an easy-to-use chat platform with AI-powered capabilities that do not require technical expertise.

Your proposed feature of allowing users to upload documents into chat threads involves technical skills and a vector database, which would increase the complexity and cost of the project. While the use of text embedding to search and interact with lengthy documents is an interesting concept, it may require a more advanced approach that is beyond the current scope of the project.

As a platform that is geared toward front-end development and easy deployment on different hosting providers, the web app aims to make AI technology accessible to everyone without requiring specialized technical knowledge.

I would like to suggest that you utilize the GitHub search feature to look for open source repositories that may provide a solution to your proposed feature request. There are many repositories on GitHub related to chatbots and conversational AI, and it is possible that some of them have implemented similar document upload features.

By searching GitHub, you can explore existing projects and potentially find a solution that fits your needs. You can also contribute to existing projects by opening issues or pull requests, or even building on top of them to create new features.

SamuelMiller commented 1 year ago

I wonder if Open AI's open-source retrieval plugin could be implemented into Free ChatGPT. See https://github.com/openai/chatgpt-retrieval-plugin