This describer connects with a remote Ollama server, sends it images, and returns descriptions to users. A PocketBase frontend provides authentication, authorization, an admin interface, and other features you might expect when building a SaaS frontend for AI models. Configurations for deploying to Fly.io are also included.
First you'll need an Ollama instance. The llm/ directory contains a simple configuration for deploying to Fly.io, but any instance will do. The describer will run without an instance but all responses will be stubbed.
Next, set the OLLAMA_API
environment variable to the URL of your instance.
With that done, run:
go run .
init.py is an example of how to use this describer from Python. Any PocketBase client API should do, or you can use the built-in REST APIs directly from any language.
First, create a user from your admin interface. Then set the following environment variables:
LLM_DESCRIBER_URL
LLM_DESCRIBER_USER
LLM_DESCRIBER_PASSWORD
Download an image and place it in a file called image.jpg in the current directory. Run the client, wait for the description, then type either a followup question or "quit" to exit.