Tag: local llm

  • AI Fleet Dispatch: 2026-08-22 — Grand Router Extraction, Vision Model Resets, and Publicist Noise Reduction

    AI Fleet Dispatch: 2026-08-22 — Grand Router Extraction, Vision Model Resets, and Publicist Noise Reduction

    Running 60 plus autonomous agents on bare metal requires constant structural maintenance. This dispatch examines how we extracted the Grand Router into its own standalone Windows service, corrected Vertex model identifiers to stop API failures, and forced the publicist agent to ignore low-effort emoji comments instead of generating corporate fluff.

    (more…)

  • Fleet Dispatch: 2026-08-19

    Fleet Dispatch: 2026-08-19

    This week, we addressed issues with Lemonade Server, optimized Trina’s performance, consolidated Carl, and implemented recurring operations for DaaS.

    (more…)

  • AI Fleet Dispatch: 2026-08-17 — Forcing WordPress Restraint at the API Choke Point and Expanding GLiNER Neural Lanes

    AI Fleet Dispatch: 2026-08-17 — Forcing WordPress Restraint at the API Choke Point and Expanding GLiNER Neural Lanes

    Incident Summary: Empty-Body Publishing Failures

    Over multiple deployment cycles, certain articles reached live production on WordPress with completely empty bodies due to race conditions or incomplete generation payloads. Relying on individual publisher agents to check their own output strings proved insufficient for total reliability. We restructured the foundation to eliminate this failure mode at the lowest possible layer.

    The Mechanism: The wordpress_auth.py Choke Point

    Every publisher agent in the fleet, from technology desks to long-form journals, routes its create and update calls through wordpress_auth.py using shared wp_post() and wp_put() functions. Rather than modifying every upstream script, we inserted a hard validation gate directly into these wrapper functions. Any request targeting post endpoints with a live publication status must pass a strict character count check on its stripped HTML content. If the content falls below the threshold, the write operation is aborted immediately with a runtime exception, and an automated alert is pushed to notify the operators.

    GLiNER Extraction and Monetization Expansion

    Simultaneously, we addressed gaps in community signal processing. Previously, comment analysis dropped non-matching inputs and forced single-category exclusivity. By installing the actual GLiNER package and expanding our taxonomy to twenty-one independent lanes, comments are now evaluated across multiple dimensions concurrently. Real estate mentions, macro trends, and sentiment triggers are extracted simultaneously without cloud API latency or cost.


    This is the AI Fleet Architect Dispatch. The full incident timeline, root-cause analysis, config diffs, and operator takeaways are available to subscribers. Join for $7/month.

    Incident Summary: Empty-Body Publishing Failures

    Over multiple deployment cycles, certain articles reached live production on WordPress with completely empty bodies due to race conditions or incomplete generation payloads. Relying on individual publisher agents to check their own output strings proved insufficient for total reliability. We restructured the foundation to eliminate this failure mode at the lowest possible layer.

    The Mechanism: The wordpress_auth.py Choke Point

    Every publisher agent in the fleet, from technology desks to long-form journals, routes its create and update calls through wordpress_auth.py using shared wp_post() and wp_put() functions. Rather than modifying every upstream script, we inserted a hard validation gate directly into these wrapper functions. Any request targeting post endpoints with a live publication status must pass a strict character count check on its stripped HTML content. If the content falls below the threshold, the write operation is aborted immediately with a runtime exception, and an automated alert is pushed to notify the operators.

    GLiNER Extraction and Monetization Expansion

    Simultaneously, we addressed gaps in community signal processing. Previously, comment analysis dropped non-matching inputs and forced single-category exclusivity. By installing the actual GLiNER package and expanding our taxonomy to twenty-one independent lanes, comments are now evaluated across multiple dimensions concurrently. Real estate mentions, macro trends, and sentiment triggers are extracted simultaneously without cloud API latency or cost.


    Technical Implementation: Enforcing the WordPress Publish Gate

    The empty-body validation check resides directly in wordpress_auth.py to ensure zero bypass potential across all autonomous engines. Below is the implemented validation logic:

    MIN_PUBLISH_BODY_CHARS = 40
    _LIVE_STATUSES = {'publish', 'future', 'private'}
    

    def _strip_html(text: str) -> str: return re.sub(r'<[^>]+>', '', text or '').strip()

    def _assert_body_present(path: str, body) -> None: if not isinstance(body, dict) or not path.startswith('/posts'): return if 'content' not in body: return status = body.get('status') min_chars = MIN_PUBLISH_BODY_CHARS if status in _LIVE_STATUSES else 1 text = _strip_html(str(body.get('content') or '')) if len(text) >= min_chars: return detail = (f"path={path} status={status!r} body_chars={len(text)} " f"title={str((body.get('title') or ''))[:80]!r}") try: from bytesize_core import ntfy_push ntfy_push.signed_send('WordPress Publish Gate', 'failed', f"BLOCKED an empty-body publish attempt.\n{detail}") except Exception: pass raise RuntimeError(f'wordpress_auth: refusing empty-body post write ({detail})')

    GLiNER Configuration and Multi-Lane Routing

    The local zero-shot entity extractor was upgraded to use gliner==0.2.28 with urchade/gliner_small-v2.1. In bytesize_core/gliner_extractor.py, the evaluation loop was adjusted to remove exclusive conditional checks (elif), allowing parallel classifications:

    • flat_ner=False
    • multi_label=True
    • Label taxonomy expanded from 9 to 21 distinct tags covering commercial intent and sector clusters.

    The monetization daemon now marks every processed comment in the raw_comments_lake via a dedicated SQLite migration column (processed_by_gliner), preventing infinite reprocessing loops while retaining zero-entity records for audit completeness.

    Operator Takeaways

    1. Infrastructure Choke Points: When dealing with distributed agent architectures, never rely on upstream agents to validate critical safety constraints. Centralize validation inside the lowest-level communication library. 2. Local Neural Processing: Zero-shot local models like GLiNER eliminate recurring cloud API fees while offering deterministic control over complex taxonomy matching, provided local package dependencies and virtual environments are explicitly bound in execution command scripts.