Skip to content

Product: extract voice transcription to its own CVM (4 GB) #8

Description

@daopunk

Goal

Spin voice transcription out of the main Signal bot into a separate product with its own repo (or clearly bounded package) and its own Phala CVM at 4 GB RAM (tdx.medium).

Today Whisper runs in the same CVM as the bot + Signal CLI + translation. Long transcription jobs contend with Language Thread fan-out / NEAR translation and bog the box down.

Why

  • Transcription is latency-heavy (model load + audio decode).
  • Translation / Language Threads need predictable headroom for NEAR + Signal group fan-out.
  • Operators should be able to run transcription alone, or pair it with either translation product without taking the whole stack.

Scope

  • Carve Whisper / voice pipeline into a standalone service (own Docker image, own compose, own CVM).
  • Own repo or monorepo workspace that can ship independently.
  • Deploy target: Phala CVM 4 GB RAM (tdx.medium), not sharing memory with the translation bot.
  • Define a clear contract for the Signal bot(s) to call transcription (HTTP/internal API, queue, or Signal-side handoff — decide in implementation).
  • Document ops: register, health, attestation, resource limits.

Interoperability

This product should be composable with both translation products:

  1. In-group translation (V1-style auto-translate in one chat)
  2. Language Threads (sidecar / threaded translation — see related issue / feat: Language Threads — mutual-aid language sidecars #7)

Someone should be able to say: “I want transcription + in-group translation” or “transcription + Language Threads” without forcing all three into one CVM.

Out of scope (for this issue)

  • Changing Language Thread relay semantics
  • Merging transcription back into the translation CVM

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions