actian-hackathon-guide

ADHD Hacks × Actian VectorAI DB Challenge

Best Use of Actian VectorAI DB: one track, no sub-categories.

ADHD Hacks runs September 6, 2026 in Bengaluru. This repo gets you from zero to a running database and your first query in under 10 minutes.

Stuck? Ask your Actian mentor in the room, they’re there throughout the day. We’re also on Discord.


What is VectorAI DB

A vector database. It searches by meaning instead of exact words.

A regular database finds “products named laptop.” VectorAI DB finds “products similar to portable computer for students,” even when the words don’t match. It’s portable and multimodal, built to run at the edge, on-prem, disconnected, or in the cloud, without losing performance or consistency depending on where it’s deployed.

One thing worth knowing going in: VectorAI DB doesn’t include an embedding model, the thing that turns your text or images into the numbers it actually searches over. You bring your own. Free, easy ones are listed below. Think of it as embedding model equals translator, VectorAI DB equals the filing cabinet and search engine behind it.


Get Access

The Community Edition comes with 5,000 vectors, plenty for a one-day build.

Full docs, if you want to go deeper than this README: docs.vectoraidb.actian.com


Quickstart

Requirements: Python 3.10 or newer.

Step 1, install the client:

pip install actian-vectorai-client

Step 2, start the database. This uses Docker:

docker pull actian/vectorai:latest
docker run -d --name vectorai \
  -v ./local_data:/var/lib/actian-vectorai \
  -p 6573-6575:6573-6575 \
  -e ACTIAN_VECTORAI_ACCEPT_EULA=YES \
  actian/vectorai:latest

Wait until docker logs vectorai shows the server is ready, then confirm it’s up:

curl http://localhost:6573/

You should get back JSON with "title": "Actian VectorAI DB".

A port note, since this trips people up: REST API is 6573. Port 6575 is a local dashboard UI, not the API, so hitting it with API calls will look like a broken integration when it’s just the wrong port. Port 6574 is gRPC, used by the SDK under the hood.

Auth is off by default on a fresh container, no API key or token needed for local dev. Don’t spend time trying to disable auth, it’s already disabled.

Step 3, your first query:

from actian_vectorai import VectorAIClient, VectorParams, Distance, PointStruct

with VectorAIClient("localhost:6574") as client:
    info = client.health_check()
    print(f"Connected to {info['title']} v{info['version']}")

    client.collections.create(
        "products",
        vectors_config=VectorParams(size=128, distance=Distance.Cosine),
    )

    client.points.upsert("products", [
        PointStruct(id=1, vector=[0.1] * 128, payload={"category": "books"}),
    ])

    results = client.points.search("products", vector=[0.1] * 128, limit=5)
    for r in results:
        print(f"[{r.id}] score={r.score:.4f} payload={r.payload}")

That’s semantic search, running. Next step is usually swapping [0.1] * 128 for real output from an embedding model, and the toy payload for your actual data.

Model Dimensions Notes
sentence-transformers/all-MiniLM-L6-v2 384d Fast, general-purpose, good default if unsure
sentence-transformers/all-mpnet-base-v2 768d Higher quality text embeddings, a bit slower
BAAI/bge-small-en-v1.5 384d Strong quality-to-speed ratio
openai/clip-vit-base-patch32 512d Multimodal, text and images

All free, hosted on Hugging Face, installable via pip install sentence-transformers. No API keys, no cost, no rate limits, a solid choice if venue wifi is unreliable, since the model runs locally once downloaded.

Remember: your collection’s vector size must match your embedding model’s output exactly (384 for MiniLM, 1536 if you use an OpenAI embedding model, etc). Mismatched dimensions fail loudly (DIMENSION_MISMATCH), and the only fix is recreating the collection.


Known Issues, First-Hour Gotchas

Read this before assuming something’s broken:


The Challenge: Best Use of Actian VectorAI DB

One track. VectorAI DB needs to be load-bearing in whatever you build, not swappable for any other database with nothing else changing.

Beyond that, it’s open: a local knowledge base, a RAG chatbot, a recommendation engine, an offline-capable agent, a multimodal search tool, whatever you want to build where semantic search over your own data is the actual point.


Show Your Work

Demo your build during the end-of-day session. [CONFIRM: is there a separate write-up or submission step, or is the live demo the whole thing?]

Prize

$500 total: 1st place $250, 2nd place $150, 3rd place $100.

Judged by the Actian team.


Where to get help