Skip to main content

llm-multi

A plugin for LLM that combines file bundling and LLM mapping capabilities into two complementary commands: llm archive and llm map.

Commands

llm archive

Bundle files into JSONL format or extract files from a JSONL archive:

llm archive [files...]

Options:

  • --create - Create an archive from files (default)
  • --extract - Extract files from an archive (exclusive with --create)
  • --basename - For create: strip path and use only filename. For extract: ignore paths, write only filenames to current directory (last copy wins on collisions)
  • --basedir <str> - For create and extract: strip this prefix from paths, refuse to process files without this prefix, printing warnings instead
  • --format - Output format: jsonl, json, jsonarr, xml, xmlish

llm map

Apply an LLM prompt to each item in a JSON structure or repeated content:

llm map data.jsonl "Summarize this: {item}"

The item will be inserted at the first {item} in the prompt. If no {item} exists, it will be inserted at the end, as \n{item}.

Options:

  • --model, -m - Model to use (default: gpt-4o-mini)
  • --temperature, -t - Temperature for generation (default: 0.0)
  • --tokens - Max tokens (default: 15000)
  • --concurrency, -c - Number of concurrent requests (default: 16)
  • --output, -o - Write output to file
  • --branches - Repeat content this many times, prefix the base filename with {i}_
  • --content - Include original content in output (incompatible with --json/--jsonarr output formats)
  • --format - Set both input and output format: jsonl (default), json, jsonarr
  • --iformat - Input format: jsonl (default), json, jsonarr
  • --oformat - Output format: jsonl (default), json, jsonarr

Format descriptions

JSON based formats, useful for piping into map -

  • jsonl: One JSON object per line with path and content fields
  • json: Single JSON object with filenames as keys and content as values
  • jsonarr: JSON array containing only content (no filenames)

XML based formats, useful to pass an entire archive to an LLM (llm archive ... | llm prompt ...):

  • xml: XML elements with properly escaped content (e.g., <foo.html>&lt;em&gt;escaped&lt;/em&gt;</foo.html>)
  • xmlish: XML elements with raw content, no escaping (e.g., <foo.html><em>preserved</em></foo.html>)

Workflow Example

Process multiple files in parallel:

llm archive file1.py file2.js | llm map - "What programming language is this?"

Process and extract:

llm archive file1.py file2.js | llm map - "Add --reticulate-splines option" | llm archive --extract

Process multiple files with one call:

llm archive --format xmlish file1.py file2.js | llm prompt "Is the algorithm identical in both files"

Metadata

Release files for llm-multi 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for llm-multi 0.1.0
File Size Uploaded Provenance
llm_multi-0.1.0.tar.gz 5.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for llm-multi 0.1.0
File Interpreter ABI Platform
llm_multi-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 12.8 kB

Release files / llm_multi-0.1.0.tar.gz

Download URL llm_multi-0.1.0.tar.gz
Size 5.1 kB
Tags Source
SHA-256 checksum
How to use checksums
5957cdb90c66342ce499bb3652906768ff4d8b09664cf738cbc979e46db37c17
BLAKE2b-256 checksum
How to use checksums
3e5864e58968d18519b184c5445f489cdfcd85e895cf46a9772b0ee303b9402f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.0

Release files / llm_multi-0.1.0-py3-none-any.whl

Download URL llm_multi-0.1.0-py3-none-any.whl
Size 7.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
da36146383df711a769dbeb5e5ae853de5c5db5fee6cc59eef218a66c5b40d70
BLAKE2b-256 checksum
How to use checksums
9e252a1493c484b521188c8ffd68ce931787d012f9ff5f452983e20e52b41851
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.0

Security for llm-multi 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page