The AmpleAI plugin is a plugin developed by Amplenote staff to allow users to tap into the rapidly growing potential of large language models (henceforth, LLMs) in the 2020s. The most updated plugin documentation is located on the plugin's marketplace page, but that documentation is left somewhat brief. More robust detail on the functionality offered by the plugin can be found on this page.
link🧠 AmpleAI: Overview
AmpleAI offers a growing toolbox of functionality for users that want to benefit from the latest cutting-edge developments in AI. The source code for this plugin is open source. Why have we chosen to avail critical AI functionality via a plugin, instead of including it in the default Amplenote installation? Many reasons, which you are free to skip if you don't care:
To inspire users to recognize the potential afforded by plugins. We want to give our programmer (or aspiring programmer)-users a living, breathing example of how powerful a plugin can be. In the long-term, this should foster a future Amplenote easy to shape and mold, like a Shopify store. AmpleAI proves that plugins offer a powerful customization platform, tailored to any esoteric use case.
Because AI is moving fast, we need the AI<->Amplenote connection to evolve equally fast. If we build & test an AI integration with our usual level of rigor, there is a good chance that in 6-12 months that code will be deprecated. It's generally harder to update & remove code within a large code base than a small one. By keeping our AI translation in a small git repo that anyone can visit, we can update it every month. We can also accept proposed code from anyone that wants to help the implementation improve.
There are no prompt engineering experts, so anyone might discover newer, more effective, prompts to contribute back to the code. Since AI in 2024 continues evolving with unprecedented speed, it would be foolish for the Amplenote dev team to presume we have a monopoly on how to craft the best LLM prompts. By making our implementation open source, any sufficiently motivated party can experiment with prompts, to help us identify progressively more effective prompts that evolve alongside the state-of-the-art LLMs.
No cost markups. By allowing users to choose which LLM to use on the backend (OpenAI or any Ollama LLM), Amplenote users pay the lowest possible fees. Compared to platforms that gouge users with expensive markups over the OpenAI base costs, the Amplenote approach allows users to specifically tailor how and if they will be charged for their AI use.
Always looking for dogfood opportunities. The Alloy tagline is "Fine software products, dogfooded daliy by people who love building software." The reason we chose this tagline was that we believe most bad software originates when the leaders of a product aren't using the product. By making ourselves heavy users of our plugin API, the documentation and functionality of that API will evolve more reliably than if we weren't using it ourselves.
The bottom line is that getting started with the AmpleAI plugin is as simple as 1) log in to Amplenote 2) visit the AI plugin 3) click the "Install" button.
Once the plugin is installed, you can choose which AI you'd like to call.
linkChoosing an AI backend
As of 2024, AmpleAI works comparably well with OpenAI or Ollama. By default, this plugin sends requests to OpenAI (the default model is currently gpt-4-1106-preview
), or to a local Ollama instance, if you have installed Ollama and you don't have an OpenAI API key entered. In our experience, the gpt-4-1106-preview
model consistently outperforms the local LLMs that can be installed via Ollama. Also, OpenAI can generate high quality images via Dall-e-3 and the "Image via prompt" command listed below, whereas Ollama currently can not be used to generate images.
linkExpress setup
If you have an existing OpenAI account, all you need to do is to install the AmpleAI plugin, then run any of the features described below in the "AmpleAI Functionality" section. You will be prompted for your OpenAI API token (along with the URL where you can fetch your token). Once you paste in the API key, AmpleAI will save the key and be ready for future use across any platform. 🚀
linkOpenAI setup
To get an OpenAI API key, sign up for OpenAI (https://platform.openai.com/signup), then visit OpenAI's API keys page (https://platform.openai.com/account/api-keys). If you find that all API calls fail, confirm that you have credits in your OpenAI account.
linkOllama setup
To use the plugin with Ollama, start by installing Ollama from its download link. Then install an LLM using ollama run
, for example, ollama run mistral
(we have found that "mistral" seems to offer the best results as of early 2024). After Ollama is installed, you will need to stop the resident Ollama server (click Ollama icon in your toolbar and choose "Quit"), then open a console and run
You can test that your Ollama server has been started correctly by invoking Quick Open and running "Look up available Ollama models." If it doesn't work, run ps aux | grep ollama
in console to find existing Ollama servers, and kill those before re-running the command with OLLAMA_ORIGINS
specified.
link🧙♂️ AmpleAI Functionality
Functionality for AmpleAI comes in many flavors. In the list that follows, functionality is separated by how it is invoked.
linkSelected text features
Features invoked by selecting text and choosing an option from the ensuing toolbar.
Thesaurus. Get 10 suggested synonyms that make sense in the context around the word.
Answer question. If your highlighted text appears to be a question, you'll have the option to ask the AI for an answer to that question.
Complete a sentence. What text seems like it should come after the selected text?
Revise. How could the selected text be improved?
Rhymes with. What are 10 words that rhyme with the selected word?
linkNote option features
Features available by clicking the triple dot menu when a note is open.
Sort groceries. Given a task or bullet-list of grocery items, arrange them by the aisle they can be found in the grocery store
Revise. Suggest revisions to the entire note.
Summarize. Summarize the text of the open note.
linkEvaluation/Insert text features
Features invoked by entering an open bracket {
and typing one of the following.
Complete. Answer a question or finish a thought from the words prior to this being invoked.
Continue. Continue in a similar style with the text that preceded "Continue" being invoked.
Image from preceding. Generate a Dall-e-2 or Dall-e-3 image.
Image from prompt. Generate a Dall-e-2 or Dall-e-3 image from a prompt that you enter after selecting this.
Suggest tasks. Based on the note title and contents, suggest relevant tasks to undertake.
linkApp option (Quick Open) features
Features accessed by invoking Quick Open and typing the bold words below.
Question & answer. Ask a question to OpenAI or the Ollama LLM of your choosing.
Converse/Chat. Have a back-and-forth conversation that remembers the previous responses.
Show AI Usage by Model. See how much various LLMs have been called since Amplenote was last restarted.
Look up available Ollama models. Confirm whether Ollama was installed & started such that it can be queried by AmpleAI.