Model reference · open weights
rwk-g1 is an open-weight language model from BlinkDL. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.
Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.
What it is
| Released by | BlinkDL |
|---|---|
| Type | Language models |
| Task | Text gen |
| Runs with | rwkv |
| Released | 2025-03-07 |
| Popularity | 6k downloads / month |
| Licence | Open weights |
About
These are BASE models (pretrained with web/code/synthetic + instruction/chat/reasoning data), suitable for post-training and fine-tuning (check https://huggingface.co/spaces/Jellyfish042/UncheatableEval to see their performance at language modeling).
More info & Gradio demo: https://rwkv.com/
Search "RWKV Chat" in play store / app store for our local inference app
RWKV Chat: https://rwkv.halowang.cloud/ (local inference for mobile/desktop) and https://github.com/RWKV-APP/RWKV_APP
Safetensor: https://huggingface.co/RWKV
GGUF: https://huggingface.co/collections/shoumenchougou/rwkv7-gxx-gguf
More GGUF & mobile models: https://huggingface.co/HaloWang/rwkv-weights (new) and https://huggingface.co/mollysama/rwkv-mobile-models (old)
Ollama GGUF: https://ollama.com/shoumenchougou (new) and https://ollama.com/mollysama (old)
RWKV-7 pth => GGUF script: https://github.com/MollySophia/rwkv-mobile/blob/master/converter/convert_rwkv_pth_to_gguf.py
Training: https://github.com/BlinkDL/RWKV-LM and https://github.com/Joluck/RWKV-PEFT
Note: rwkv7a has DeepEmbed
Efficient inference: https://github.com/BlinkDL/Albatross
pip inference: https://pypi.org/project/rwkv/
mobile inference: https://github.com/MollySophia/rwkv-mobile
Latest Best Practices for agentic work (study these projects): https://agent.objects.rwkvos.com/en
Eval example: https://github.com/BlinkDL/Albatross/blob/main/faster3a_2605/eval_gpqa_diamond.py
PROMPT GUIDE (including function call & agent): https://github.com/BlinkDL/RWKV-LM/blob/main/RWKV-v7/RWKV7-G1x-templates.txt
Function call: temp 0, topp 0, penalty 0, works for RWKV-7 G1f 1.5B and larger models:
System: Tools:
- get_weather(location: string, unit?: "celsius" | "fahrenheit")
- get_stock_price(ticker: string)
- translate_text(text: string, target_language: string)
Return only a JSON function call.
User: Translate "Will it rain tomorrow?" into Japanese.
Assistant: ```json
and
System: Tools:
[
{"name":"find_free_slots","description":"Find free calendar slots","arguments":{"date":{"type":"string"},"duration_minutes":{"type":"integer"},"time_window":{"type":"string"}}},
{"name":"create_calendar_event","description":"Create a calendar event","arguments":{"title":{"type":"string"},"start_time":{"type":"string"},"end_time":{"type":"string"},"attendees":{"type":"array","items":{"type":"string"}}}}
]
Return only a JSON function call.
User: Schedule a 30-minute sync with Bob on 2026-05-08 afternoon.
Assistant: ```json
{"name":"find_free_slots","arguments":{"date":"2026-05-08","duration_minutes":30,"time_window":"afternoon"}}
```
User: Function output:
{"free_slots":[{"start":"2026-05-08T15:00:00+09:00","end":"2026-05-08T15:30:00+09:00"}],"bob_email":"bob@example.com"}
Assistant: ```json
The key is to keep it concise. Here you can enable "" for Assistant too.
You can also use this template, which is closer to training data:
Assistant:
...
{...}
{...}
User:
{...}
{...}
Please always use latest models because they are always better at everything.
Decoding Suggestion (note: this is for RWKV pip pkg, which apply temp after topp):
Chat: temp 1, topp 0.5, alpha_presence 2, alpha_frequency 0.1, alpha_decay 0.99
Creative (great for fiction etc.): temp 0.6, topp 0.6 ~ 0.8, alpha_presence 2, alpha_frequency 0.2, alpha_decay 0.99
Chat prompt (note: better replace all \n\n in USER_PROMPT to \n as i am using \n\n as "chat round separator" in pretrain data):
System: YOU_CAN_USE_SYSTEM_IF_NEEDED
User: PREVIOUS_STUFF
Assistant: PREVIOUS_STUFF
User: USER_PROMPT
Assistant:
Think prompt (for hard prompts):
User: USER_PROMPT
Assistant: <think
Fake think prompt (great result, highly recommended):
User: USER_PROMPT
Assistant: </think
Think prompt, alternative style, for G1c and newer models. Note there is a space before the "(think)" after USER_PROMPT:
User: USER_PROMPT (think)
Assistant: <think
Shorter think, same style:
User: USER_PROMPT (think a bit)
Assistant: <think
Longer think, same style:
User: USER_PROMPT (think a lot)
Assistant: <think
FIM prompt (for G1c and newer models, works for text & code & everything):
✿prefix✿When I was young, I only liked to✿suffix✿and that’s how first I got interested in AI research.✿middle✿
Better (recommended):
✿prefix✿✿suffix✿and that’s how first I got interested in AI research.✿middle✿When I was young, I only liked to
Note "✿" will always be tokenized to one single token in RWKV tokenizer, so I picked it.
0.1B = L12-D768
0.4B = L24-D1024
1.5B = L24-D2048
2.9B = L32-D2560
7.2B = L32-D4096
13.3B = L61-D4096
Vocab = 65536 for all current models
Head size = 64 for all current models
Gxx = Data Version
G0x = less than 1 epoch, as training 1 epoch for a large model is expensive :(
G0 G0a G0a2 G0a3 ... G0b ... = adding more (newer and better) data, so G0a has better quality (but less) data than G1
G1x = more than 1 epoch
G1 G1a G1a2 G1a3 ... G1b ... = adding more (newer and better) data, note G1a has better quality (and more) data than G0a
From the published model card. Full card on the HuggingFace links in the sidebar.
How it works
Using it via the API
Once AxForge deploys rwk-g1 for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (rwk-g1 below is illustrative; you get the exact model name on deployment.)
$ curl -sS https://api.axforge.ai/v1/chat/completions \
-H "Authorization: Bearer $AXFORGE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"rwk-g1","messages":[{"role":"user","content":"Hello"}]}'
Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.