Skip to content

SplatLLM applies formatting generated by LLMs to make the generation appear more human: removal of invisible characters, remapping of characters not found on typical keyboards, and removal of certain markdown formatting.

License

Notifications You must be signed in to change notification settings

theobjectivedad/splat-llm

Repository files navigation

SplatLLM

SplatLLM makes text generated by large language models (LLMs) appear more authentically human via heuristic-based formatting. Broadly, this involves:

  • Removal of invisible characters that can be used for watermarking and/or hiding information in plain text.
  • Remapping of unusual characters typically produced my LLMs but not typically used by human writers. For example, the Unicode dash punctuations commonly generated by LLMs are remapped to standard ASCII hyphens.
  • Removal of certain markdown formatting characteristically used by LLMs.

SplatLLM can also be used to reveal invisible characters and other unusual formatting via the splat --show-invisibles / splat -s command:

SplatLLM text analysis sample

Coming soon will be an MCP version that will expose SplatLLM as a callable tool for agent-driven post-formatting.

Quickstart

Install/run via uvx:

uvx splatllm

Or, install via pip:

pip install SplatLLM

Then run:

splatllm

Development Setup

First, clone this repository:

git clone https://github.com/theobjectivedad/splat-llm.git

Change directory to the cloned repository:

cd splat-llm

Next, setup your local virtual environment. Note that uv will be installed if it isn't found in the environment:

make venv

About

SplatLLM applies formatting generated by LLMs to make the generation appear more human: removal of invisible characters, remapping of characters not found on typical keyboards, and removal of certain markdown formatting.

Resources

License

Stars

Watchers

Forks

Packages

No packages published