Download the PHP package kabdullah27/php-token-squeezer without Composer
On this page you can find all versions of the php package kabdullah27/php-token-squeezer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package php-token-squeezer
TokenSqueezer 🗜️
General-purpose AI token optimization library for PHP & Laravel.
Compress context, cut token usage by up to 80%, and call any AI provider through one fluent API for any domain.
Features
- Fluent chain API — readable, intuitive, testable
- Multi-provider — OpenAI, Claude, Gemini, Kimi, Mimo, Ollama, or your own driver
- Smart compression — 4 built-in modes (including RTK log compression) + plugin support
- Caveman Mode — force models to output highly compressed replies to save output tokens
- Auto-caching — context-hash keys, pluggable drivers (array / file / redis / laravel)
- Schema enforcement — define expected JSON keys, auto-fill missing
- Token monitoring — usage tracking, cost estimation, latency stats
- Zero Laravel dependency — works in plain PHP too
- Dry-run / inspect — preview prompt + compression without calling AI
- Fallback Chain — auto-retry across multiple providers on failure
- Rate Limiter — per-provider sliding window, prevent 429 errors
- Batch Processing — analyze multiple items with partial-failure safety
- Event Dispatching — hook into analysis lifecycle (plain PHP + Laravel)
- Artisan Commands —
tsq:usage,tsq:inspect,tsq:cache:clear
📄 Detailed Docs: Artisan Commands
Quick Start
1. Install
2. Laravel Setup (auto-discovery works automatically)
Add to your .env:
3. Plain PHP Setup
Usage Examples
Trading / Financial Analysis
E-commerce Product Scoring
Customer Support Ticket Triage
Content Moderation
SEO / Content Scoring
HR / Resume Screening
System logs cleanup (RTK & Caveman Mode)
Fallback Chain
Automatically try the next provider if the primary one fails (timeout, 429, API error).
- Only falls back on
TokenSqueezedException(network/API errors) - Rate-limited providers in the chain are skipped automatically
- Throws
FallbackExhaustedExceptionif all providers fail (contains per-provider error details)
Rate Limiter
Prevent hitting provider rate limits. Sliding window algorithm, in-memory per process.
Configure via .env:
Or in config:
When the limit is hit, the provider is skipped in the fallback chain, or RateLimitException is thrown (with retryAfterSeconds property) if no fallback is available.
Batch Processing
Analyze multiple context arrays with one call. Each item runs sequentially with full support for compression, caching, fallback, and rate limiting.
Stop on first error (default continues on error):
Filter results by success/failure:
Event Dispatching
Hook into the analysis lifecycle in plain PHP or Laravel.
In Laravel — use EventServiceProvider (recommended):
📄 Full docs: docs/events.md
Artisan Commands
📄 Full docs: docs/commands.md
Advanced Usage
Custom System Prompt
Custom Prompt with {{context}} Injection
Inspect Without Calling AI (debug)
Custom Compressor Plugin
Custom Provider Driver
Token Usage Monitoring
Compression Modes
| Mode | What it does | Reduction |
|---|---|---|
MINIMAL |
Normalize whitespace, stringify booleans | ~20% |
BALANCED |
+ strip stopwords, abbreviate common phrases | ~50% |
AGGRESSIVE |
+ encode to shortcodes, max density, drop all vowels in keys | ~75-80% |
RTK |
+ deduplicate repeating log lines, strip whitespace & comments | ~80-90% |
CUSTOM |
Only your plugins run — full control | You decide |
Cache TTL Guide
| Use Case | Suggested TTL |
|---|---|
| Real-time data | 30–60 sec |
| Per-request scores | 2–5 min |
| Product catalog | 10–30 min |
| Static analysis | 1–24 hours |
Supported Providers
| Provider | Default Model | Notes |
|---|---|---|
openai |
gpt-4o-mini |
Cheapest, fastest |
claude |
claude-haiku-4-5-* |
Great for structured JSON |
gemini |
gemini-1.5-flash |
Free tier available |
kimi |
moonshot-v1-8k |
OpenAI-compatible |
mimo |
mimo-v2.5 |
Low cost, OpenAI-compatible |
ollama |
llama3 |
Local, zero API cost |
| custom | Your driver | Implement ProviderInterface |
Environment Variables
License
MIT