# QVAC by Tether: the Infinite Stable Intelligence Platform (/)



import { MessagesSquare, Hash, Languages, Mic, Speech, Volume2, ScanText, Image as ImageIcon, Video, GalleryHorizontal, FlaskConical, ScanSearch, Shapes, Eye, Brain, Map, Rocket, Server, MonitorPlay } from 'lucide-react'

## Why QVAC?

QVAC is Tether's answer to centralized AI by ensuring AI is not tied to massive data centers in the hands of a few *but is free to run on everyone's devices, without a central point of failure or arbitrary censorship*.

## Features

<FeaturesInfographic />

## AI capabilities

{/* <Task name>: <what computation is performed> for <what the developer achieves> via <engine> */}

{/* <task>: <tech process> for <use case>, via <engine> */}

<Cards className="grid-cols-1 sm:grid-cols-2 lg:grid-cols-3">
  <Card href="/ai-capabilities/text-generation" title={<span className="inline-flex items-center gap-2"><MessagesSquare className="size-4 text-[var(--color-fd-primary)]" />Text generation</span>}>
    LLM inference for text generation and chat via Fabric LLM.
  </Card>

  <Card href="/ai-capabilities/text-embeddings" title={<span className="inline-flex items-center gap-2"><Hash className="size-4 text-[var(--color-fd-primary)]" />Text embeddings</span>}>
    Vector embedding generation for semantic search, clustering, and retrieval, via Fabric LLM.
  </Card>

  <Card href="/ai-capabilities/rag" title={<span className="inline-flex items-center gap-2"><ScanSearch className="size-4 text-[var(--color-fd-primary)]" />RAG</span>}>
    Out-of-the-box retrieval-augmented generation workflow.
  </Card>

  <Card href="/ai-capabilities/fine-tuning" title={<span className="inline-flex items-center gap-2"><FlaskConical className="size-4 text-[var(--color-fd-primary)]" />Fine-tuning</span>}>
    Adapting LLMs to domain-specific tasks via LoRA.
  </Card>

  <Card href="/ai-capabilities/multimodal" title={<span className="inline-flex items-center gap-2"><GalleryHorizontal className="size-4 text-[var(--color-fd-primary)]" />Multimodal</span>}>
    LLM inference over text, images, and other media within a single conversation context.
  </Card>

  <Card href="/ai-capabilities/image-generation" title={<span className="inline-flex items-center gap-2"><ImageIcon className="size-4 text-[var(--color-fd-primary)]" />Image generation</span>}>
    Text-to-image and image-to-image generation via a customized Diffusion backend.
  </Card>

  <Card href="/ai-capabilities/video-generation" title={<span className="inline-flex items-center gap-2"><Video className="size-4 text-[var(--color-fd-primary)]" />Video generation</span>}>
    Text-to-video and image-to-video generation via a customized Diffusion backend.
  </Card>

  <Card href="/ai-capabilities/transcription" title={<span className="inline-flex items-center gap-2"><Speech className="size-4 text-[var(--color-fd-primary)]" />Transcription</span>}>
    Automatic speech recognition (ASR) via a customized Whisper backend or NVIDIA Parakeet.
  </Card>

  <Card href="/ai-capabilities/text-to-speech" title={<span className="inline-flex items-center gap-2"><Volume2 className="size-4 text-[var(--color-fd-primary)]" />Text-to-Speech</span>}>
    Speech synthesis (TTS) via a customized GGML backend.
  </Card>

  <Card href="/ai-capabilities/voice-assistant" title={<span className="inline-flex items-center gap-2"><Mic className="size-4 text-[var(--color-fd-primary)]" />Voice assistant</span>}>
    Real-time voice pipeline: transcription, text generation, and speech synthesis in one loop.
  </Card>

  <Card href="/ai-capabilities/translation" title={<span className="inline-flex items-center gap-2"><Languages className="size-4 text-[var(--color-fd-primary)]" />Translation</span>}>
    Text-to-text neural machine translation (NMT), via Fabric LLM and Bergamot.
  </Card>

  <Card href="/ai-capabilities/bci" title={<span className="inline-flex items-center gap-2"><Brain className="size-4 text-[var(--color-fd-primary)]" />BCI</span>}>
    Brain–computer interface transcription via a customized Whisper backend.
  </Card>

  <Card href="/ai-capabilities/vla" title={<span className="inline-flex items-center gap-2"><Eye className="size-4 text-[var(--color-fd-primary)]" />VLA</span>}>
    Vision-language-action for robot control via a customized GGML backend.
  </Card>

  <Card href="/ai-capabilities/ocr" title={<span className="inline-flex items-center gap-2"><ScanText className="size-4 text-[var(--color-fd-primary)]" />OCR</span>}>
    Optical character recognition for extracting text from images via ONNX Runtime.
  </Card>

  <Card href="/ai-capabilities/image-classification" title={<span className="inline-flex items-center gap-2"><Shapes className="size-4 text-[var(--color-fd-primary)]" />Image classification</span>}>
    Classify images into labels with confidence scores via a customized GGML backend.
  </Card>
</Cards>

## System overview

{/*
  Two theme-specific copies of the same diagram, swapped by the site's
  `.dark` class. The diagram is a draw.io SVG that colors strokes/text via
  `light-dark()`, which resolves against the SVG document's own
  `color-scheme`. Because the SVG is embedded in an isolated `<object>`
  document, the site's class-based theme does NOT reach into it — and Safari
  (unlike Chromium) won't propagate the embedding context's color-scheme,
  so dark theme rendered black-on-black. Each copy hard-codes its root
  `color-scheme` (light vs dark) so `light-dark()` resolves deterministically
  in every browser; we then show the matching copy via `dark:`/`hidden`.
  NOTE: temporary fix — the two SVGs differ only by that one `color-scheme`
  token (regenerate the dark one from the light one). A single-source inline
  solution is the planned follow-up.
  */}

<object type="image/svg+xml" data="/diagrams/system-overview-light.svg" width={721} height={575} className="mx-auto my-8 max-w-full h-auto block dark:hidden" aria-label="System overview diagram">
  System overview diagram
</object>

<object type="image/svg+xml" data="/diagrams/system-overview-dark.svg" width={721} height={575} className="mx-auto my-8 max-w-full h-auto hidden dark:block" aria-label="System overview diagram">
  System overview diagram
</object>

*The SDK is the main entry point for using QVAC*. It is type-safe and exposes all QVAC capabilities through a unified interface. It runs on Node.js, [Bare runtime](https://bare.pears.com), and [Expo](https://expo.dev).

Additionally, QVAC provides a CLI with development tools, as well as an HTTP server that wraps QVAC and exposes an [**OpenAI-compatible API**](https://platform.openai.com/docs/api-reference). *By implementing the OpenAI API format, QVAC can integrate with the broader AI ecosystem.*

Finally, QVAC also encompasses desktop and mobile [**flagship applications**](https://qvac.tether.io#products) to empower users and showcase QVAC capabilities, as well as [**research initiatives**](https://huggingface.co/qvac) to advance the state of the art in local AI.

## Next steps

Choose how you want to start with QVAC:

<Cards>
  <Card href="/introduction" icon={<Map className="text-[var(--color-fd-primary)]" />} title="Get started with the SDK">
    Learn the essentials for using the SDK: system requirements, compatibility matrix, setup basics, and core usage flows.
  </Card>

  <Card href="/quickstart" icon={<Rocket className="text-[var(--color-fd-primary)]" />} title="Quickstart">
    Run your first example using the JS/TS SDK. At the end, you'll find instructions to run any example in this documentation.
  </Card>

  <Card href="https://qvac.tether.io/products/workbench/" icon={<MonitorPlay className="text-[var(--color-fd-primary)]" />} title="See QVAC in practice">
    Try QVAC Workbench, our flagship desktop and mobile app built with QVAC.
  </Card>

  <Card href="/cli/http-server" icon={<Server className="text-[var(--color-fd-primary)]" />} title="Integrate an OpenAI-compatible client">
    Run the QVAC HTTP server and connect any existing OpenAI-compatible system to local AI.
  </Card>
</Cards>
