Keyword Loader v1.0 - Akki
Load the keyword bag for a shot inside a render loop
- keyword_bag
The Keyword Loader v1.0 is a specialized reader built for one specific loop in the AkkiNodes pipeline. It loads the "keyword bag" - a per-shot text file of conditioning keywords - for the current shot, so that a render loop can inject each shot's keywords without you swapping text by hand. It's a small node, but it's the thing that makes per-shot prompt variation work when you're running a whole scene as a batch.
How it works
Same "load the latest version" pattern as the Generic File Loader, but with its own naming convention. It looks in project_path/keyword_subfolder (default DATA) for files matching the pattern:
KEY_1A_0001_2025-07-21.txt
That's KEY_, the shot name, a zero-padded number, and the date. It reverse-sorts to grab the newest and returns its contents. The naming is specific, so a keyword bag written by the keyword-saver half of the pipeline is the file this node will find - and only that.
Inputs and outputs
Three string inputs: project_path, keyword_subfolder (default DATA), shot_name. One output: keyword_bag - the contents of the file, as a string you'd feed into a prompt-construction node or a wildcard-style conditioning path.
Install and gotchas
Pack install: ComfyUI Manager search "AkkiNodes LLM Suite", or git clone https://github.com/routhakash/AkkiNodes-LLM-Suite-for-ComfyUI into custom_nodes, install.bat as admin on Windows, restart.
Two things to know. First, like the other loaders it returns error strings rather than raising - ERROR: No Keyword Bag file found for shot '1A' in ... shows up in keyword_bag and flows downstream, so if your prompts suddenly look broken, check the output string for the ERROR: prefix. Second, the pattern is strict: the file has to be named exactly KEY_{shot}_.... If you hand-write a keyword file with a different name, this node won't see it no matter how hard you squint. And because it's shot-specific by design, an empty or mistyped shot_name from upstream is the most common cause of "why is my keyword_bag empty" - trace that wire before anything else.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| project_path | STRING | — | |
| keyword_subfolder | STRING | DATA | — |
| shot_name | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| keyword_bag | STRING | — |