---
title: "Roadmap"
description: "What we're building next in Arkor."
---

Arkor is in alpha, so this page is intentionally sparse. Items are grouped by what state they're in: actively being built, scoped and waiting their turn, or under consideration. We don't commit to dates yet.

## In progress

<CardGroup cols={2}>
  <Card title="Template-free project creation" icon="file-circle-plus" href="/docs/framework/cli/init">
    <div id="template-free-projects" />
    Scaffold a project without picking a starter template. Today `create-arkor` and `arkor init` require choosing `triage`, `translate`, or `redaction`; this opens the door to starting from a blank trainer.
  </Card>
</CardGroup>

## Up next

<CardGroup cols={2}>
  <Card title="OAuth token auto-refresh" icon="key" href="/docs/framework/cli/auth">
    <div id="oauth-token-auto-refresh" />
    Silent refresh on expiry, so long-running sessions stop getting interrupted by re-login.
  </Card>

  <Card title="Bring your own dataset (JSONL)" icon="file-lines" href="/docs/framework/sdk/dataset">
    <div id="jsonl-dataset" />
    Upload a local JSONL file as the training dataset, alongside the existing HuggingFace name and blob URL paths.
  </Card>

  <Card title="Train on a local GPU" icon="microchip" href="/docs/framework/sdk/create-trainer">
    <div id="local-gpu-training" />
    Run training on your own GPU instead of routing every job through Arkor's managed GPUs.
  </Card>

  <Card title="Dry-run from Studio" icon="flask" href="/docs/framework/concepts/studio">
    <div id="studio-dry-run" />
    Surface the existing dry-run option in the Studio UI for fast smoke tests before kicking off a full training run.
  </Card>

  <Card title="Full Gemma 4 family support" icon="layer-group" href="/docs/framework/sdk/create-trainer">
    <div id="gemma-4-family" />
    Cover the full Gemma 4 family in the `model` field. Today every starter template uses `gemma-4-E4B-it`; opening up the rest of the family lets you pick the size that fits your latency and quality budget.
  </Card>
</CardGroup>

## Backlog

<CardGroup cols={2}>
  <Card title="Self-hosted training backend" icon="server" href="/docs/framework/cli/overview">
    <div id="self-hosted-deployments" />
    Run the training backend on your own infrastructure, with a documented `ARKOR_CLOUD_API_URL` knob and versioned API guarantees.
  </Card>

  <Card title="deploy and eval slots" icon="rocket" href="/docs/framework/sdk/create-arkor">
    <div id="deploy-and-eval-slots" />
    Grow `createArkor` into an umbrella for shipping and evaluating models, not only training.
  </Card>

  <Card title="Download trained models" icon="download">
    <div id="download-trained-models" />
    Export a trained model as a file you can run on your own machine or deploy target, instead of staying on Arkor's managed inference.
  </Card>

  <Card title="Synthetic data from a seed set" icon="flask-vial">
    <div id="synthetic-data" />
    Generate training data from a small seed set, for cases where you don't already have a labeled dataset.
  </Card>

  <Card title="Distillation templates" icon="link">
    <div id="distillation-templates" />
    Templates that pair compatible teacher and student models so distillation runs work out of the box.
  </Card>

  <Card title="On-device model templates" icon="mobile-screen">
    <div id="on-device-templates" />
    Templates aimed at small models suitable for WebGPU and mobile targets.
  </Card>

  <Card title="Broader base model support" icon="cubes" href="/docs/framework/sdk/create-trainer">
    <div id="more-base-models" />
    Expand support beyond the Gemma 4 family, so additional open-weight families join it as curated, hosted options.
  </Card>

  <Card title="Multimodal training" icon="images" href="/docs/framework/sdk/create-trainer">
    <div id="multimodal-training" />
    Fine-tune on image (and eventually audio) inputs alongside text. Today every template is text-in, text-out.
  </Card>
</CardGroup>
