PDF ChatBot – Upload, chat and interact with any PDF document
askyourpdf.com
askyourpdf.com
Suddenly people don't seem to have any problems uploading their data to big companies.
What was Google criticised for? Not creating fancy responses from your data?
It looks like it works well on PDF with a digital text layer. I tried it on an image of the Declaration of Independence and it told me "I'm Sorry but the webpage is empty..."
This Ask your Pdf allows up to 20MB for free vs chatpdf's 10MB free; though chatpdf has a 32MB allowance on the paid plain. Not sure how how ask your pdf plans to monetize this.
I'm personally looking into setting up my own self-hosted "chatpdf/askyourpdf" clone so I can put put a whole bunch of my reference material in there. I can't actually open it up as a service because of the copyrighted works, but I would really love to have ham Q&A site based on the ARRL Handbook and other resources. Even expand that out to an electronics Q&A.
There's a site called llamahub.ai that lets you load lots of your own resources into a LLM index so you can train GPT (or potentially the opensourceish gpt4all variant) on your own resources.
My real estate agent wanted me to sign up a document that is 10 pages long. I would prefer to use the bot to answer my questions, and possibly - verify with other legal things.
Tried the document with the service (after removing personal info), and it worked so-so. Could specify which paragraphs mention the commission, but couldn't extract info about how high the commission is.
Perhaps it's because the document is in Polish. But GPT-3.5 or 4 shouldn't have a problem with such queries.
OK, fine. Do you have a working example of this? e.g. he's a contract, and please find me the unfavorable and / or non-standard terms. People have tried this before with no success, and it would be great if someone finally made some headway here. Even more points if the GPT things find onerous terms, but says, "hey don't worry about this non-compete bit, it's not enforceable."
*Granted, I don't use this service. I use llama index and AWS to store the vectorized prompt files.
Whats the contracting officers email address where the proposal needs to be submitted? What is the Proposal Due Date? What's the full Agency Name? What's a shorter way to say the agency name? What is the RFP number? What type of project are we responding to? Is it a proposal or just a request for information/ Sources Sought Notice? If it is a proposal, simply say proposal. If it is an Request for information or sources sought, say RFI. Are there any vendor upcoming vendor meetings? What is the CALENDAR OF EVENTS? Project Timelines, or deliverables? Can the response be submitted VIA Email? Or is it a sealed bid? What is a description of the scope of work, Scope Of Services or Performance Work Statement? IS the requirement for a Penetration Testing, or Audit Software? How Many Targets are there? Targets consist of Enterprise Systems (Databases, Cloud Enviroments, applications, servers, IP Addresses, Firewalls, network attached storage, and wireless networks ) and Enterprise infrastructure(Switchgears, routers, Modems, HUBS). List the total number of targets by each category. Does it require Social Engineering, Physical Security, Wireless Scanning or Perimieter Security?
There are so many projects that claim to do this, but end up piping data to OpenAI.
Can someone who has managed to get this set up locally send some pointers our way?
Here's the code:
It's runs on three different directorys to give me three different 'answers' using an excel sheet to pull the q's from.
def excelGPT(self, dir, excel_file, sheet):
#my GPT Key
os.environ['OPENAI_API_KEY'] = 'sk-
#Working Directory for training
# root =
root_folder1 =
documents1 = SimpleDirectoryReader(root_folder1).load_data()
index1 = GPTSimpleVectorIndex(documents1)
root_folder2 =
documents2 = SimpleDirectoryReader(root_folder2).load_data()
index2 = GPTSimpleVectorIndex(documents2)
root_folder3 =
documents3 = SimpleDirectoryReader(root_folder3).load_data()
index3 = GPTSimpleVectorIndex(documents3)
file_name = dir + excel_file
df = pd.read_excel(file_name, sheet_name=sheet)
GSA_answer_array = []
basic_answer_array = []
QA_answer_array = []
df_series = df.iloc[:,0]
for i,x in enumerate(df_series):
print("This is the index ", i)
print(x)
GSA_response = index1.query(x)
basic_response = index2.query(x)
QA_response = index3.query(x)
GSA_answer_array.append(str(GSA_response))
basic_answer_array.append(str(basic_response))
QA_answer_array.append(str(QA_response))
self.zip_to_docv2(dir, "Gippie_Response.docx", df_series, GSA_answer_array, basic_answer_array, QA_answer_array)Upload CheapThermostatUserGuide.PDF and ask, "How do I set the clock?"
The police department had a big pdf basically filled with tables. Other formats were not immediately obvious or available.
Asking it to convert it to a spreadsheet would be neat.
Asking it to extract just the locations of interest would be better.
There is nothing new or unique about any of them other than a new AI snake-oil to push their new grift on to users uploading sensitive PDFs to 'chat' with their document as 'the future'.
Another race to the bottom until Microsoft Word or Google Docs releases the exact same thing for free and unlimited tokens.
...
You retain ownership of any PDF documents you upload to AskYourPdf. By uploading PDF documents to AskYourPdf, you grant AskYourPdf a non-exclusive, worldwide, royalty-free license to use, modify, reproduce, and distribute the PDF documents for the purpose of providing the AskYourPdf web application
...
though maybe true bad actors would try harder to pretend being a company with some humans involved, rather than this openly anonymous site.
Not using phrasing thst has already been tested in court is easy, but fraught. If someone sues you because of a reasonable thing you did to display a document and you have this phrasing. It's open and shut because someone else has already litigated it and so there's legal precedent. If you use different phrasing and someone sues you, there's a greater chance you'll have an actual drawn out court case to convince a judge that your phrasing means what you wanted it to mean. Remember, the meaning of words and phrases in a legal context can differ almost arbitrarily from what they mean in a conversational one.
As a business owner that just wants to get on and provide a service that displays a pdf you got sent, which do you go with, the one that lets your resources go to providing the service you intend to provide, or the one where there's a greater chance your resources will get tied up in a legal battle for the sake of making the terms almost no-one reads anyway a little nicer?
For the purpose of funding it as a free service by selling upload content or derived metrics :)
Tangentially, I haven't been able to find any software which has reliable OCR for music scores; they tend to be just bad enough as to be useless. Was curious if any recent AI developments could be applied to this, but don't have the expertise to look into this myself. If anyone has any thoughts or wants to look into this, please feel free to email me! (link to my website in profile, which has my email)
https://audiveris.github.io/audiveris/_pages/handbook/
I haven’t tried it but my first thought was to use something like tesseract OCR, and I found this optical music recognition (OMR) project from there.
https://www.soundslice.com/sheet-music-scanner/
It’ll accept images and PDFs of music, extracting the notes, rhythms, etc., so you can play it back and edit it with our built-in editor.
It uses machine learning and works significantly better than the other products on the market. There’s a bunch it doesn’t do yet, but it’s useful enough already that we launched in public beta.
My take on this space is that it'll eventually be built into the operating system or PDF viewers, so you're going to have to do more than just "chat with a PDF" -- but that chatting with PDFs is a great place to get started!
Anything ChatGPT<->PDF is probably a good business idea IMO. That stuff comes down to developers so often that it's almost a career specialization and PDF code can be unfun and tedious to write and maintain.
The way it works is you first parse the PDF to analyze its text, then use a LLM along with the relevant text when answering user questions.
AskYourPdf is significantly faster than other similar products around. Interestingly, we'll also be launching our API soon.
Take note, AskYourPdf is multilingual, completely free to use and you don't need to sign up.
This is the report I uploaded: https://funo.mx/site_media/uploads/documentos/documento-4VK6...
I felt that at this point, it was more the "potential" than what it actually did. I asked some questions that it just couldn't answer. Also, at some point it started answering in English even though all my conversation with it had been in Spanish.
Excited to see how your service progresses!
I have it answering a list of questions in an excel from three different 'Frames of mind' by passing three different directory'swith different content in each to get three different responses i can craft together.
def excelGPT(self, dir, excel_file, sheet):
#my GPT Key
os.environ['OPENAI_API_KEY'] = 'sk-
#Working Directory for training
# root =
root_folder1 =
documents1 = SimpleDirectoryReader(root_folder1).load_data()
index1 = GPTSimpleVectorIndex(documents1)
root_folder2 =
documents2 = SimpleDirectoryReader(root_folder2).load_data()
index2 = GPTSimpleVectorIndex(documents2)
root_folder3 =
documents3 = SimpleDirectoryReader(root_folder3).load_data()
index3 = GPTSimpleVectorIndex(documents3)
file_name = dir + excel_file
df = pd.read_excel(file_name, sheet_name=sheet)
GSA_answer_array = []
basic_answer_array = []
QA_answer_array = []
df_series = df.iloc[:,0]
for i,x in enumerate(df_series):
print("This is the index ", i)
print(x)
GSA_response = index1.query(x)
basic_response = index2.query(x)
QA_response = index3.query(x)
GSA_answer_array.append(str(GSA_response))
basic_answer_array.append(str(basic_response))
QA_answer_array.append(str(QA_response))
self.zip_to_docv2(dir, "Gippie_Response.docx", df_series, GSA_answer_array, basic_answer_array, QA_answer_array)Index them, store them in LLM format.
Then ask a question, you first semantically search all the relevant sources you've indexed, and get back a tight set of under the token limit results that you then pass on to your favorite LLM. Chat4all, ChatGPT etc then read those parts of your library and answer your question.
People seem to completely forget the potential of abuse of their data.
Maybe the nigerian scammers should switch from being a prince to being a new ChatGPT based service
My head bursted with ideas when i first found out i could vectorize directorys and answer questions on them. I can run entire logic loops using an LLM as the input... How does that not blow your mind? '
Imagine scouring financial reports in real time?
Imagine being able to analyze thousand page regulations for self interest?
Imagine being able to interact with old newpapers, articles, and media lost to time.
Ask questions on entire class of books, and any information you want to aggregate...