Praxis Bookwriter Qwen 2.5 14B Instruct
My last iteration of fantasy writer suffered from one glaring flaw: It did not really follow instructions well. After much consideration, I decided it would make sense to introduce some information about the story chapter text somewhere to link instructions to the text generated.
For this, I took strides of 16834 tokens across each of the books, and used R1 to generate a summary of the text. With some careful modification, I used this to generate the first user turn. Each subsequent assistant turn takes approximately 512 tokens of content, and then the user turn is a chapter header, or one paragraph of content. This alternated until I consumed the entirity of the original stride.
Crafting the user prompt
In an initial test, I tried putting these instructions in the system prompt. The result was underwhelming. For this version, the first user turn should contain an overview of the setting, resembling the following format:
system_prompt = """You are my writing assistant. Keep the story going.
// Author: Neal Stephenson
// Tags: sci-fi, romance, space opera"""
prompt = """The following interaction begins in the park.
The night is cool and the stars are bright. Tim and Val sit on a bench, talking about life and the universe.
| Character | Influence | Interactions | Impact on Plot |
|-----------------|-------------------------------------------|--------------------------------------------|-----------------------------------------|
| **Tim** | Asks existential questions; challenges beliefs. | Engages with Val about love and mortality. | Drives philosophical inquiry. |
| **Val** | Uses cosmic imagery (comet, black hole) to reframe love. | Offers metaphysical perspective; softens Tim's cynicism. | Provides an anchor to earthly life. |
This passage is a *philosophical anchor* for the novel. It explores:
- The paradox of love’s invisibility despite its centrality.
- Human attempts to codify intangible concepts (love, time).
- Existential balance between connection and solitude.
- **Tim**: A pragmatic observer, framing life as a "puzzle" with logical solutions. His curiosity is tempered by existential fatigue ("Death will answer").
- **Val**: A romantic idealist using metaphors (comets, black holes) to poeticize love. Her warmth contrasts Tim’s analytical rigidity.
**Character Development**: Their dialogue exposes Tim’s vulnerability (fear of losing Val) and Val’s capacity for profound empathy.
1. **Dialogue as Philosophy**: Use exchanges to explore abstract themes (e.g., love vs. logic).
2. **Metaphor Over Explanation**: Let characters reframe ideas through imagery (e..g., love as a comet).
3. **Contrast Tones**: Juxtapose melancholy (death) with whimsy (starry skies) to deepen emotional resonance.
4. **Subtext in Action**: Small gestures (holding hands, watching stars) reveal character dynamics more than explicit dialogue.
---
This excerpt exemplifies how speculative fiction can grapple with timeless questions while grounding them in relatable human experiences. Writers should note the interplay of intellect and emotion, ensuring that philosophy never eclipses humanity.
In **Chapter 1**, the duo debates whether love is a tangible entity or an illusion. Tim wonders if love could "hide in a star," while Val likens it to a comet that "doesn't exist until it appears." In **Chapter**, Val reframes love as an absence where two people meet—a metaphorical "black hole" where space-time warps. Both chapters juxtapose cosmic grandeur with intimate vulnerability.
A lyrical blend of **melancholic reflection** and **cosmic wonder**. Dialogue oscillates between wistful acceptance ("Death's a necessary thing") and awe-inspired speculation ("the sky's a better place to be with you").
- **Existential Inquiry**: Love as both illusion and cosmic force.
- **Cosmic Humility**: Humanity’s insignificance against infinite time/space.
- **Opposing Perspectives**: Contrasts between logic (Tim) and intuition (Val).
// Chapter: 1
"""
messages = [
{"role": "system", "content": system_prompt},
{"role": "user", "content": prompt},
]
The content of this block can contain all variety of instruction about what to write in the proceeding frame. The summaries I used were between 500 and 1500 tokens, so the more detail about setting, location, characters, their relationships, and plot points, the better. The examples had their sections shuffled to provide for a variety of policy.
If you do not specify content or the chapter boundary, the assistant will often generate chapter outlines; which is very useful.
License
This model is released under the limitations of both the apache 2 license.
Author
Praxis Maldevide
Citation
If you find our work helpful, feel free to give us a cite.
@misc{praxis-bookwriter-qwen2.5-14b-sft,
title = {Praxis Bookwriter Qwen 2.5 14B},
url = {https://huggingface.co/maldv/praxis-bookwriter-qwen2.5-14b-sft},
author = {Praxis Maldevide},
month = {June},
year = {2025}
}
- Downloads last month
- 11