Current collected state Current
Observed since 21 Oct, 11:12 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
LLM-optimized structured logging and summarization for large-scale debugging.
LLM Logger is a Python logging framework designed for seamless integration with Large Language Models (LLMs).
It produces structured, LLM-friendly logs that can be easily summarized or reasoned about — even across massive, deeply nested codebases.
reason, inputs, outputs, and semantic tagsstart_group, end_group) and function spansOllama (local models)Groq (LLama, Gemma via API)OpenAI (GPT-3.5 / GPT-4)pip install ailogx
from ailogx.core import LLMLogger
log = LLMLogger("my-service")
log.llm_info("User login started", inputs={"username": "admin"})
log.llm_decision("Using 2FA", reason="high-risk user")
log.llm_error("Login failed", reason="Invalid OTP")
with log.function_span("process_payment", reason="checkout flow"):
# your logic
pass
log.start_group("req-42", reason="incoming API request")
# your logs here
log.end_group("req-42")
Supports:
LLM_LOGGER_BACKEND=ollama (default)LLM_LOGGER_BACKEND=groqLLM_LOGGER_BACKEND=openaiexport LLM_LOGGER_BACKEND=groq # or 'openai', 'ollama'
export GROQ_API_KEY="your-groq-api-key"
- You must have a Groq account.
- Supported models: gemma3, llama3-70b, etc.
export OPENAI_API_KEY="your-openai-api-key"
- You must have an OpenAI API key.Models like gpt-3.5-turbo, gpt-4, etc. are supported.
For selecting Models :
| Backend | Env Var to Set | Example Value |
|----------|----------------|-----------------------|
| groq | GROQ_MODEL | llama-3-70b-8192 |
| openai | OPENAI_MODEL | gpt-4o |
| ollama | OLLAMA_MODEL | llama3 |
python -m ailogx.summarize simulated_logs/deep_nested_logs.jsonl --filter=smart --fast
For using with relevant intent:
python -m ailogx.summarize huge_app_logs.jsonl --filter=smart --fast --intent "focus on authentication and signup failures"
Or call from Python:
from ailogx.summarizer.summarizer import multi_pass_summarize
from ailogx.backends.registry import get_analyzer
import json
with open("llm_logs.jsonl") as f:
logs = [json.loads(line) for line in f]
summary = multi_pass_summarize(logs, get_analyzer())
print(summary)
Generate deep, nested logs for benchmarking:
python ailogx/core.py
Outputs:
llm_simulated_logs.jsonl (LLMLogger)standard_simulated_logs.log (Python logging).cache/--filter=smart, --intent="auth errors")--fast mode for shallow summaries before full deep divesDownload counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 1.1.0 | 11 Jul 2025 | 6 |
This describes our collected data; it is not a security assessment.
Observed since 21 Oct, 11:12 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:a72a1541b0b4c5f2e7851269a4dad636fa2d1a44df7f4beb3bde7764f8c261b9