โ Gemini Protocol Tool
An AI tool that allows large language models to connect to Gemini capsules and fetch content from Geminispace.
Find the code here:
https://openwebui.com/t/projectmoon/gemini_protocol_tool/
https://git.agnos.is/projectmoon/open-webui-filters/src/branch/master/gemini.py
The initial release supports basic direct connection to Gemini pages, and relies on the model's contextual understanding to navigate the capsule. This allows you to interact with Gemini in a conversational way.
Recommended Models
These are the recommended models, that I can run on my hardware:
- Qwen2.5 (14b+)
- Mistral Nemo
- Mistral Small
Llama3 is NOT recommended for this tool, as it often makes assumptions about the fetched content that it should not. This is very noticeable when following redirects.
- Llama3.2 3b seems to handle this a bit better.
- Llama3.1 models (which includes Llama3.2 9b ) have problems.
It is possible that Llama3 fine-tunes that are better at following instructions can work properly with the tool.
Why is Llama3 not Recommended?
During development of the feature to follow redirects, I had a page named `redir.gmi`, which pointed to the homepage of this capsule. Asking a Llama3 LLM to fetch the content from redir.gmi would cause it to often report "This seems to be a redirect to content and not what you actually want," rather than just displaying the content.
No amount of cajoling via prompts seemed to fix it. My guess is that it was stuck on the file being named `redir.gmi`. But still, it did not do what it was supposed to!
To-Do List
Currently, very basic connectivity to Geminispace is supported, returning the raw content on a success response (status code 2x). Redirects are supported.
Features to implement:
- Convert Gemtext to Markdown for better LLM understanding.
- Handle file uploads?
- Handle non-text content.
Settings
The tool exposes these settings as valves:
- Attempt URL Correction: Attempts to correct malformed URLs to Gemini URLs. Enabled by default.
โโโโโโโโโโโโโโโโโโโโ