Some checks failed
Linux Build / Linux cpu (push) Has been cancelled
Linux Build / Linux cpu-clang (push) Has been cancelled
Linux Build / Linux vulkan (push) Has been cancelled
mac-build / macOS CPU (push) Has been cancelled
Nix Build / Nix (cpu) (push) Has been cancelled
Nix Build / Nix (vulkan) (push) Has been cancelled
windows-build / Windows CPU (push) Has been cancelled
4.5 KiB
4.5 KiB
PersonaPlex
PersonaPlex is wired as --family personaplex for speech-to-speech
conversation. It consumes user speech, applies a packaged or user-provided voice
prompt, and generates an assistant speech response.
Install
python3 tools/model_manager_v2.py install personaplex_7b_v1_q4_k
The Q4_K package is the default. A Q8_0 package is also available:
python3 tools/model_manager_v2.py install personaplex_7b_v1_q8_0
Both packages install into:
models/PersonaPlex-GGUF
Quick Start
Packaged voice prompt:
audiocpp_cli --task s2s --family personaplex \
--model models/PersonaPlex-GGUF \
--backend cuda \
--audio user.wav \
--text "You are a concise assistant. Answer naturally and briefly." \
--request-option voice_id=NATF2 \
--out reply.wav
Raw reference voice:
audiocpp_cli --task s2s --family personaplex \
--model models/PersonaPlex-GGUF \
--backend cuda \
--audio user.wav \
--voice-ref assets/resources/a.wav \
--text "You are a calm support specialist. Keep the caller reassured." \
--out reply_ref.wav
Streaming mode:
audiocpp_cli --task s2s --mode streaming --family personaplex \
--model models/PersonaPlex-GGUF \
--backend cuda \
--audio user.wav \
--request-option voice_id=NATM1 \
--text "You are a helpful assistant. Answer the user directly." \
--out reply_stream.wav
Model
| Field | Value |
|---|---|
| Family | personaplex |
| Task | s2s |
| Modes | offline, streaming |
| Model directory | models/PersonaPlex-GGUF |
| Input | User speech WAV through --audio |
| Prompt | System/persona prompt through --text or system_prompt |
| Voice input | Packaged voice_id or user WAV through --voice-ref |
| Language | English |
If system_prompt is not provided, the runtime uses --text as the system
prompt and wraps plain text with the tags expected by the model.
Packaged Voices
The package includes these voice prompt ids:
NATF0 NATF1 NATF2 NATF3
NATM0 NATM1 NATM2 NATM3
VARF0 VARF1 VARF2 VARF3 VARF4
VARM0 VARM1 VARM2 VARM3 VARM4
Use --request-option voice_id=<id> to select one. If omitted, NATF2 is used.
If --voice-ref is supplied, the runtime uses that reference audio instead of a
packaged prompt.
Common Options (use directly)
| Option | Values | Default | Meaning |
|---|---|---|---|
--audio |
WAV path | required | User speech input. |
--text |
text | empty | Assistant persona/system prompt. |
--voice-ref |
WAV path | not set | User reference voice prompt. Overrides packaged voice_id when present. |
--temperature |
float >= 0 | 0.8 |
Audio-token temperature; must be > 0 when do_sample=true, ignored when false. |
--top-k |
integer >= 0 | 250 |
Audio-token top-k sampling limit. |
--seed |
integer >= 0 | see description | uint32 seed. Session RNG starts at 42424242; explicit values reseed it, while omission on later conversations continues RNG state. |
Request Options (use with --request-option)
| Option | Values | Default | Meaning |
|---|---|---|---|
system_prompt |
text | empty | Assistant persona/system prompt. |
voice_id |
packaged id | NATF2 |
Packaged PersonaPlex voice prompt id. |
temperature |
float >= 0 | 0.8 |
Audio-token temperature; must be > 0 when do_sample=true, ignored when false. |
text_temperature |
float >= 0 | follows temperature |
Text-token temperature; must be > 0 when do_sample=true, ignored when false. |
top_k |
integer >= 0 | 250 |
Audio-token top-k sampling limit. |
text_top_k |
integer >= 0 | follows top_k |
Text-token top-k sampling limit. |
do_sample |
bool | true |
Enable stochastic sampling. Set false for greedy decoding. |
seed |
integer >= 0 | see description | uint32 seed. Session RNG starts at 42424242; explicit values reseed it, while omission on later conversations continues RNG state. |
Session Options (use with --session-option)
| Option | Values | Default | Meaning |
|---|---|---|---|
personaplex.graph_arena_mb |
integer MiB | 1024 |
Reusable graph arena size for LM, depformer, and Mimi graphs. |
personaplex.lm_weight_context_mb |
integer MiB | 64 |
Main LM weight metadata arena size. |
personaplex.depformer_weight_context_mb |
integer MiB | 64 |
Depth transformer weight metadata arena size. |
personaplex.mimi_weight_context_mb |
integer MiB | 64 |
Mimi codec weight metadata arena size. |
personaplex.weight_type |
native, f32, f16, bf16, q8_0 |
native |
LM and Mimi matmul weight storage type when supported. |