The possibility of integrating AI into zotero to assist reading
In the past two months, we have seen the exciting applications of GPT-3. Among them, Explainpaper(https://www.explainpaper.com/) and Scispace(http://scispace.com/) are tools to facilitate paper reading, providing quite good experience. But they cannot effectively integrate with zotero. So, I just wonder wether there is any possibility of integrating AI into zotero, e.g. through plugins or built-in functions.
It would certainly be nice to search my library by embedding rather than trying to guess the right word.
I thought about a Zotero plugin for the same purpose, but I believe the underlying langchainjs library is not compatible with the Zotero JavaScript environment (?).
@jiayipan I'd be interested in your approach. It would be a very useful plugin for sure.
I have made some progress with creating a minimal working example for the extension. However, before releasing it as a useful extension, there's a lot of polishing work to do. I'll try to release it in the following weeks.
Indeed, it seems that langchain.js is not currently compatible with Zotero. Luckily, as a researcher in NLP, I am able to build a tiny infrastructure from scratch.
It would be great if this extension can combine multiple papers/sources like a folder for example.
I imagine the first version to have the following two features:
1. Library Chat: where the LLM is connected to your entire library, and answers questions based on them
2. Paper Chat: where the LLM is connected to the PDF you opened, and answers questions based on it
The feature you suggest sounds interesting and is definitely doable. I'll try to add that later.
Please give it a try if you are interested: https://github.com/lifan0127/zotero-research-assistant
Also, is there some more documentation? I could not find out how I can use the extension. I set up the secret key and everything, but what do I actually have to do to get a summary of a paper or find some papers in my library with a question. Can you explain this in more detail?
I want to give some feedback and hope that the developers find it useful. I don't want to be negative, it's really meant to point out issues that you can make better. It's hard work and this is a completely new field, so it's normal that there are many issues at the beginning.
It is hard to say how useful they are at the moment. I had some practical issues and often both didn't give useful answers or missed papers in the collection, but I don't know if this is a problem with the add-on (and how it interacts with Zotero) or with ChatGPT. At other times, they worked very well.
In both add-ons I found it hard to move between the chat and Zotero. So if I'm looking at one paper and want to ask questions about it, it's a hard to move to the plugin; especially ARIA doesn't (at present) know which paper I'm looking at so you have to type in the reference first. The other way round, when you ask the chat for papers about a topic it returns a list (often incomplete..) but then it is hard to go from the list to the actual items in Zotero.
I would also like some standard questions like "Summarise this article" and "What are the main conclusions?" quickly accessible from the context menu of an article, without having to type this.
So overall they are both very promising and I'm looking forward to more development. This can become really useful.
I have no idea how to develop a Zotero plugin, so what I did is to develop a PDF reader integrated with ChatGPT. In this way, I can customize whatever I want in the future and I do not to compromise to any limitations or Zotero. Also, I use pdfGPT, which can cite the page that supports the bot's response, which makes it perfect for serious paper reading.
Simply by setting this PDF reader as default reader used for Zotero, I now manage to read papers 10X faster than before!
The app is only for MacOS (because I mainly design it for myself). You can find more information in this repo: https://github.com/Yiiipu/SimplePDF.
It is free but you need to bring your own API Key. I plan to open source it after a few updates.