5 ms·
Show HN: Unriddle – Create your own GPT-4 on top of any document
- ttpphd 4y agoSee also: https://www.explainpaper.com/ https://www.explainpaper.com/
- naveedjanmo 4y agoOh interesting, I hadn't come across this one. Thanks for sharing
- printvoid 4y agoDoes it a accept only pdf docs at the moment? What's the maximum size of pdf file that I can provide it to analyze without breaking it.
- naveedjanmo 4y agoYeah it's only pdfs for now. What other file types did you want to try? Max file size is 600 pages/50 mbs
- toss1 4y agoCool. Can it ingest multiple PDFs in the same 'context', or would I have to assemble it all into one (under the 50mb limit)? What is it using to Can we (provoke you to) set the model temperature in the conversation to either minimize the hallucinating or increase the 'conjecture/BS/marketing-claims' factor?
- naveedjanmo 4y agoRight now it's just one pdf per bot but yeah you could hack it by merging the pdfs and then generating a new bot. Interesting suggestion - did you notice a particular hallucination? What kind of docs would be high vs. low temperature?
- toss1 4y agoYes. See this comment [0] Another HNer with API access tried just ingesting the paper without context and some instructions and model-temp=0 and got better results. I've also found in my area that it'll happily hallucinate stuff -- after all, it has zero actual understanding, it just predicts the most likely filler in the given context. Tamping that down and just getting it to cut out the BS/overconfidence response patterns and reply with "I know X and I don't know Y" would be incredibly useful. When we get back an "IDK", we can probe in a different way, but falsely thinking that we know something when we are actually still ignorant is worse than just knowing we've not yet got an answer. [0] https://news.ycombinator.com/item?id=35392685 https://news.ycombinator.com/item?id=35392685
- eulercoder 4y agoHey, this looks amazing! I couldn’t find any information about pricing? This is going to be a free tool?
- naveedjanmo 4y agoThanks! It's free to use for now and will always be at least partially free :)
- superkuh 4y agoAll these "your own GPT4" and the like should really not have "own" in the description. They are just someone else using another someone else's API. A better title might be, "Use our wrapper for openai's GPT4 service to summarize documents."
- naveedjanmo 4y agoThanks for the feedback. I get your point but with Unriddle users curate information for the index that sits on top of GPT-4. It's just one doc for now but in the future it will be multiple - this curation of info sources is where the "own" part comes in.
- guntherhermann 4y agoThe title is misleading; giving the wrong idea or impression. People who work in the field may understand what is actually going on, but I get the feeling that your target market is much broader than that, and I doubt that the majority of that market will interpret "Create your own GPT4 ..." to instead actually mean "Unriddle users curate information for the index that sits on top of a GPT-4 API that OpenAI owns and we use on your behalf" (or whatever actually goes on)
- throwaway14356 4y agoown vs share your company secrets with the world
- jrm4 4y ago"Leverage the power of GPT4 to" something something something sounds nice and advertisey?
- marban 4y agohttps://imgur.com/a/ex6GNiN https://imgur.com/a/ex6GNiN
- naveedjanmo 4y ago
- Gloomily3819 4y agoBing AI also does that.
- miketery 4y agoIs there any progress on the llama front where I can use that model and update / train it against my data? (I.e. all self hosted)
- deleted 4y ago[deleted]
- tablatom 4y agoAs an LLM novice, can someone explain what these "your document" apps are doing? My understanding is that GPT-4 doesn't support fine-tuning, and 50MB is too large to add to the prompt (which would be too expensive anyway).
- oneshoe 4y agoSimply speaking - They chunk the document (make it smaller so that it can be sent to gpt) and then vectorize it (change it to numbers / vector array). From there that is stored in a vector store - now, when you query you first query your vector store for the context (part of the 50MB file) and then send the context along with the question to GPT. You are right GPT-4 doesn't support fine-tuning but, I think (in general) people might be misunderstanding what fine-tuning does.
- shekhar101 4y agoGood explanation. Thanks! Can the first part, i.e. vectorizing and finding relevant chunks be done with any LLM (e.g. a self hosted one) and the second part, i.e. querying relevant chunks be done with OpenAI?
- naveedjanmo 4y agoHey! I'm the developer of Unriddle - it works using text embeddings. The document is split into small chunks and each chunk is assigned a numerical representation, or "vector", of its semantic meaning and relation to the other chunks. When a user prompts this too is assigned a vector and then compared to the rest of the chunks. The similar chunks are then fed into GPT-4 along with the query, ensuring the total number of words doesn't exceed the context window limit.
- wufufufu 4y agoWhat OpenAI API calls allow sending these small chunks? When you query something like "What is this research about?" is it able to use data from all chunks?
- generalizations 4y agoIs the software used for vectorizing the documents also an API, or is that open-source?
- naveedjanmo 4y agoThere's an OpenAI API for vectorizing which I'm accessing through the Langchain library :)
- serjester 4y agoDoes not work for me.
- hacker79 4y agoI am assuming you are calling openai API - which requires to pay based on tokens. Whats your business model since all the users are unpaid users? Do you maintain the costs from ADs? Do you charge users? Thank you
- naveedjanmo 4y agoI'm just exploring whether or not it's useful. If people continue using it and/or it evolves into something more useful, I'll likely charge a monthly fee for access to certain features (e.g. longer pdfs, merging multiple pdfs into one bot, having multiple bots). The plan is to keep it partially free though
- hacker79 4y agoGot it. Thank you Currently is there any limit on the pdf sizes or number of pages to upload. For example, if I upload my entire book pdf (500pages), it will cost you a lot.
- hacker79 4y agoFrom your tweet, I saw you now support 2x file size limit (300 → 600 pgs). I am assuming its costing a lot for the free trial. Best of Luck :)
- gigel82 4y agoI'm looking for a more holistic solution that "understands" the entirety of a book (let's say fiction to drive the point) and can "reason" about character arcs / action evolution throughout the entire narrative. There are lots of solutions using embeddings which basically boil down to a text search and picking some number of sentences / paragraphs around the search results to construct a "context", which may work with a limited set of technical / non-fiction documents but is otherwise of narrow use.
- naveedjanmo 4y agoI was playing around with Dune inside of Unriddle yesterday and it seemed to work pretty well for describing the overarching narrative. https://app.unriddle.ai/bot/55fee905-1174-4b33-8e67-5dfe8301820f https://app.unriddle.ai/bot/55fee905-1174-4b33-8e67-5dfe8301... But I expect this kind of querying will be much better as the context windows for LLMs increase
- gigel82 4y agoI'd imagine the model already knows about Dune, that's why you were getting usable results. Try with an obscure piece of literature instead.
- vagabund 4y agoI've never had these retrieval demos work well. Either the LLM hallucinates content that could plausibly be in the document, or it's `reasoning` is so hamstrung by the constraint that it misunderstands the meaning of the specific quote it's referencing. I just tried this one on the NBA CBA, which I would think is an ideal use case, and it didn't answer a single question correctly. Hopefully we find a more clever way to use LLMs in conjunction with a knowledge-base.
- freediver 4y agoCan you share the link you used and a few questions/correct answers?
- vagabund 4y agoPDF link: https://cosmic-s3.imgix.net/3c7a0a50-8e11-11e9-875d-3d44e94ae33f-2017-NBA-NBPA-Collective-Bargaining-Agreement.pdf https://cosmic-s3.imgix.net/3c7a0a50-8e11-11e9-875d-3d44e94a... "What's a mid-level exception?" (Initially stated the info wasn't in the provided context, but upon asking again, it got it correctly) "How long does a team have to wait after receiving a player in a trade before trading the player again?" (It's 60 days under certain circumstances, it told me 6 months) "What's a traded player exception?" (Claims isn't in the document) "How are traded player exceptions created?" (Answers correctly) So after playing with it a bit more I think I understand the sorts of questions it does and doesn't like to answer, but still, I would think fuzzy matches for section titles should work.
- rockzom 4y ago(((:::)))
- rnosov 4y agoA question to the author. Can you perform an ablation study with respect to the chunks? In other words, if you put in the context irrelevant/random chunks from the document would the quality of answers decrease/stay similar? Potential issue might be that chunks just serve to activate massive knowledge of GPT4 and not actually used as a basis for an answer. For example, GPT4 has surely seen Dune in its training corpus and could be answering from memory.
- naveedjanmo 4y agoThis is an interesting idea. I'll have a think about a way to start measuring it. In Unriddle, any responses given that aren't drawn from the document are prefaced with a message to that effect. The bot usually says something like "I appreciate your curiosity about [query], but as an AI assistant, my primary focus is to provide advice on [document description]."
- TheLoafOfBread 4y agoI believe that those chatbots would be a great solution for Reference Manuals / User manuals for microcontrollers. Those documents usually have thousands of pages (less than 10000) sometimes logically and sometimes absurdly illogically sorted. But those tools are severely limited on maximum amount of pages. This tool has max 300 pages. ChatPDF (or how it was named) has limit on 2000 pages in paid version. So I will need to wait until those models are more available.
- itsaquicknote 4y agoHey Naveed, this is a great project well done. I'm curious about the summarisation of longform content. You mention that you're using Langchain - are you using the MapReduce approach for documents that exceed the 32k context window, or some other approach? 600 pages at ~500 words/tokens a page would mean about $20 to mapreduce through a big doc, which seems crazy especially if you iterate on those 'summary' prompts. Or are you using embeddings for everything including summary prompts?