Repository navigation
AbstractCore 2.31.1: /v1 reuses the resident model (backlog 0859) - #7
Merged
Merged
Conversation
…face holder instead of a second copy per request (backlog 0859)
…e (held across stream yields); never lend a request-scoped instance
…s on one worker thread (a lock held across stream yields deadlocked a waiting call on the event loop and two streams on one thread)
…p on the instance worker; streams in flight from the call; ejected reload decided on the worker; contextvars copied; Ctrl-C cancels; lent /v1 calls off the event loop; registry snapshot locked
…es on the instance worker; SIGINT test installs the default handler; Metal numbers in 0859
…F (LiquidAI, unsloth) and MLX artifacts, lfm2.5-24b-a2b capabilities and repo aliases, every id and size read from the Hugging Face API (backlog 0860)
… tag on LFM2 2.6B; a test that no LiquidAI Q4_K_M GGUF names a repo with a hip-optimized twin
Owner
Author
State (paused 2026-10-28)Done
Contents
Tests
Next
|
Owner
Author
|
State update: release run https://github.com/lpalbou/AbstractCore/actions/runs/40781168440 succeeded, and |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
AbstractCore 2.31.1 (backlog 0859; framework release-closing QA item 4).
Bug: on a fresh Linux install,
/v1/chat/completions(which AbstractGateway serves through this app) built a SECOND full llama.cpp instance per request for a model the gateway's runtime pool already held. It failed with 500 "Failed to create llama_context" on a 16 GB GPU. On Metal: holders 1 -> 2 -> 3 -> 4 and RSS 11.2 -> 43.4 GB over three calls.Fix
huggingfaceinstance of the same model (process_residency.resident_provider).unload_after, request-specific provider settings (explicit key,base_url), a request-scoped instance, MLX or embeddings.Reviews: two adversarial reviews (Opus, read-only), plus a verification review of the round-2 fixes. Findings and fixes are in backlog 0859.
Tests
tests/providers/test_hf_instance_generation_gate.py(11) andtests/server/test_server_reuses_resident_provider.py(2). They go red when the worker or the fixes are removed (see 0859).Metal, real weights (scratch gateway, unsloth/Qwen3.5-4B-GGUF): holders stay at 1 and RSS at 11.1-11.2 GB over 3 sequential and 3 concurrent
/v1calls (one streamed), all HTTP 200.Also in 2.31.1 (backlog 0860, operator QA): the download catalog adds the LFM2 and LFM2.5 families, including the 24B-A2B models. Each model has GGUF artifacts (LiquidAI official and unsloth) and MLX artifacts (mlx-community, or LiquidAI's own where mlx-community has none). Every repo id and size was read from the Hugging Face API on 2026-10-28. The capabilities registry adds
lfm2.5-24b-a2band the repo aliases.test_the_lfm_families_are_in_the_catalog_with_gguf_and_mlxis red against the previous assets.