The Magic Whiteboard - Part II

The AI Librarian

December 01, 2023 · John Peach

We’re working on a new platform for scientific research called eurAIka that combines The Whiteboard for writing notes, equations, and pasting in graphics, The Librarian for AI-assisted literature search, and The Coder where you can write programs.

About the Librarian

In the previous post The Magic Whiteboard - The Obsidian Wizard we showed you how to set up the whiteboard using the note-taking application Obsidian. Now, we’ll extend the project by creating the AI Librarian. Most of the AI Librarian will be constructed from links in The Academic Browser with a few new additions.

The idea for The Magic Whiteboard was partly inspired by Curvenote “A collaborative writing and publishing tool for scientists & researchers” although I’d been thinking about something similar for a while.

curvenote
Figure 1.

Curvenote video.

The goals of The Magic Whiteboard are to have a self-contained AI-assisted workspace to help through the entire process from the initial concept to the final published article. Curvenote provides a workspace for writing a document and can export to many standard formats, links to JupyterLab notebooks, and provides real-time collaboration. The Magic Whiteboard also has all of these features, but The Librarian puts AI-based literature search at your fingertips.

Curvenote has a free option, but charges for journal templates, more than one private project, and extended online storage space. The Magic Whiteboard is built from free components and the only fees are for the more capable AI chat models.

All of your documents and files are stored locally, unlike the online service Curvenote, but this means that you’ll have to install Obsidian, plugins, and any other software you want to use. The advantage is that you have full control over your content.

Literature searching is evolving very rapidly, especially with the inclusion of Large Language Models (LLMs) and the ability to query in natural language. One of the best resources is Aaron Tay’s Musings about Librarianship, and his articles Using Large Language Models to generate and extract direct answers and List of academic search engines that use Large Language Models for generative answers.

These are some of my favorites, but you might prefer others.

Search and Encyclopedias

These give broad searches to get started.

To find journal articles on a topic, use these dedicated search engines.

AI-aided search can help narrow the focus of your literature search.

Graphical searching makes it easy to see other relevant papers.

AI document analysis

Try some of these to get a deeper understanding of articles. These are free to use but may have limits on the number of documents you can upload per month, so when you hit a limit on one, try switching to another analyzer.

AI Chat

Ask questions and receive answers in natural language. Most of these require registration, but there is a free tier. Anthropic will let you upload a document for analysis, and all of them can be used in the writing process. We used Google Bard to write an outline in Part I of this series. The Obsidian plugin Surfing will open any of them in a new tab. You may also want Copilot and/or Smart Connections if you’d prefer to remain on the page.

AI Authoring

These tools will help you write or revise your document using AI.

Online LaTeX Editor

Many journals require submissions to be in LaTeX format. You can install TeXStudio or LyX locally along with LaTeX compilers such as TeX Live or MiKTeX. Another option is to use Overleaf which is a collaborative writing and publishing tool and LaTeX editor.

Overleaf has templates for most journals making the writing process much easier. They charge $199 for online collaboration of up to 10 authors, but you can work alone for free. An open-source alternative is SwiftLaTex.

Collaboration

Bit.ai Built for teams and individuals to create, collaborate, and organize all your knowledge in one place from anywhere in the world. Create fast dynamic notes, documents, wikis, knowledge bases, projects, client deliverables, technical docs, training guides, and client portals, while integrating across the apps you work with. The free plan has enough features that you should be able to collaborate with your colleagues.

Reference Manager

Zotero is a free, easy-to-use tool to help you collect, organize, annotate, cite, and share research. Several plugins help integrate Zotero with Obsidian. Alexandra Phelan explains in “An Updated Academic Workflow: Zotero & Obsidian” the steps she uses to connect the two apps. You should install betterbibtex for Zotero (Tools \rightarrow Add-ons). She recommends ZotFile but it is no longer needed in version 6.0 and later for Zotero.

Plugins for Obsidian are Zotero Integration, Obsidian-Pandoc, and the Pandoc Reference List. Pandoc converts documents from one format into another, so you can write in Markdown in Obsidian and then convert to LaTeX, HTML, or MS Word to publish. You might also want to include a link to Citation Style Language (CSL) for ZoteroBib to format references in a style compatible with your chosen publication.

Phelan also recommends the Dataview and Admonitions plugins for Obsidian. Dataview allows you to query your Obsidian vault and to search and display data as well as create summaries of referenced literature. Admonitions ” is a tool that allows you to create attention-grabbing callouts, tips, warnings and other informative blocks within your notes”.

Under “Community Plugins” in the Settings window of Obsidian, click on “Zotero Integration”. At the top, just under “General Settings”, install the PDF Utility, and then under “Citation Formats” choose “Template” from the “Output Format” drop-down list.

Copy and paste the template from the article under section III. Literature Notes. Under “Bibliography Style” you can select a publisher style by typing in the box. For example, if you type iee the list will expand to show IEEE, IEEE (with URL), and IEEE Transactions on Medical Imaging as the first three choices.

In “An Academic Workflow: Zotero & Obsidian” Phelan describes how she uses different highlighting colors to annotate a PDF:

Ideally, the reference system would be fully bidirectional. That is, you should be able to insert a reference into your document and just as easily insert a new reference into Zotero. With the Zotero Integration plugin, creating a reference in the document is very easy, and going the other way is almost as simple.

Choose one of the methods provided by The Librarian and begin your literature search. I selected Perplexity to ask about optimally fitting Bezier polynomials to curve points. Perplexity provided a complete answer as well as a few relevant papers. One of the papers is in arXiv and after copying and pasting the DOI (Document Object Identifier) into Zotero, Zotero finds the bibliographic information online and imports it into the current folder.

Figure 2.

Zotero bibilography lookup.

To be able to link Zotero and Obsidian, add the Shell Commands plugin to Obsidian. From the plugin documentation, make a new command by clicking on “Shell Commands” in the left column. This opens a new window,

shell-commands
Figure 3.

Obsidian shell commands plugin.

where you can insert a link to the shortcut that starts Zotero.

Test the link by clicking. It will take a few seconds for Zotero to start, but your library of references should appear. To add a new entry, see Adding Items to Zotero and scroll down to “Add Item by Identifier”. By clicking on the wand in the top bar, you will be able to enter the reference ID, and Zotero will automatically find the reference and fill in the details.

The Librarian Layout

The Librarian relies on external websites that open in new tabs in Obsidian. To help keep your links organized, you might want to install the Multi-Column Markdown plugin. To create a multiple-column region, begin by typing three backticks, followed by start-multi-column. Enter a unique ID such as The_Librarian and enter the number of columns.

start-multi-column

Enter the first column of links just below the second row of backticks. Headers are generated with hash marks (#) and bullet points with Ctrl-]. Put the source name in square brackets and the URL in parentheses immediately after to make hyperlinks [Google](https://www.google.com/). You can also highlight the name and then type Ctrl-k to automatically insert the brackets.

The link for Zotero is made using the Shell Commands plugin described above.

At the end of the first two columns insert — end-column —\text{--- end-column ---} and after the end of the third column — end-multi-column\text{--- end-multi-column}. Click out of the multi-column region to see the results:

librarian-layout
Figure 4.

The Librarian tab.

The last component we need for The Magic Whiteboard is The Hacker which will use AI to help you write code for your STEM projects.


Software

Image credits