Views
No views yet
| Modality | Model |
|---|---|
| Planner LLM | Qwen3.6-27B (dense) |
| Image generation + editing | Flux-2-Klein-9B-GGUF |
| Speech-to-text | Whisper-Large-v3-Turbo |
| Text-to-speech | kokoro-v1 |
system_prompt and the planner's pinned server arguments; Lemonade's OmniRouter executes the generate_image / edit_image / text_to_speech tools server-side and embeds the results in each reply. World and character state are carried in the conversation history.lemonade pull lemonade-sdk/RPG-HaloTales-V1---CONTINUITY--- record (the model's fixed character/scene canon plus a turn-protocol footer) below the narration — it is metadata used to keep appearances and behavior consistent, not part of the story text.text_to_speech call together, nothing else; Response 2: the narration verbatim plus the continuity record) and includes a full worked example, including literal tool-call JSON. Emitting both tool calls in a single response saves an entire planner round-trip per turn.--reasoning-budget is not enforced when tools are present in the request (the chat template pre-fills the think tag, so the budget sampler never arms), which made "briefly thinking" planners stall for minutes. --reasoning off eliminates the tail entirely, and Qwen tool calling is more reliable without thinking.[generated image]), and after a couple of turns the planner starts imitating those records instead of calling the tools — no prompt wording reliably prevented it. The planner args therefore hard-ban the [-family tokens (making the placeholder text unemittable) and add a small positive bias on the <tool_call> opener token, which anchors every turn's first response. The continuity record also opens with a TOOLS: line and ends with a NEXT: protocol footer, so the history itself keeps testifying that every turn runs the tools.edit_image is reserved for single-detail changes within an unchanged shot.text_to_speech, and then repeated word-for-word as the printed text, so the audio and the on-screen words are identical.