Repository navigation
convert: pplx-decider v1.2 joint checkpoints - #5
Merged
Merged
Conversation
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.
Converts pplx-decider v1.2 checkpoints, which declare protocol v3 (
joint-question-inline-readout-v1) injoint_config.json, to GGUF. v1 conversion doesn't change.For a v1.2 checkpoint the converter writes:
qwen35.attention.causal = false. The full-attention layers see the whole sequence, asattention_mode: noncausal_full_attentionrequires. The runtime already reads this key and masks only the full-attention layers, so there's no runtime change.decision.type = pplx-decider-joint, plus the marker (<|fim_suffix|>), the 255 answer codes and the special tokens to escape in user text. The codes and escapes are stored as JSON strings because llama.cpp leaves array keys out of the model metadata it exposes.systemonetemplate, with one numbered question and one marker per question.It refuses other protocol versions, a non-zero
readout_offsetand other attention modes.Tested on
perplexity-ai/pplx-decider-flash-v1.2:The Q4_K_M is published at
runanywhere/decision-models-stable-fork(gguf/pplx-decider-4b, commitcb2ff56). runanywhere-sdks#1145 runs it.Summary by cubic
Adds GGUF conversion support for pplx-decider v1.2 joint checkpoints, which declare protocol v3 (
joint-question-inline-readout-v1) injoint_config.json. v1 conversion doesn't change.Details
systemonetemplate (one marker after each question), a padded LM-head readout, and metadata for the marker, answer codes, and escape tokens.qwen35.attention.causal = false; only the full-attention layers are affected, so runtime behavior is unchanged.readout_offset, and attention modes other thannoncausal_full_attention.perplexity-ai/pplx-decider-flash-v1.2; rendered prompts are byte-identical, BF16 logits match within 0.02, and Q4_K_M shows no flipped answers.Written for commit 7b290c4. Summary will update on new commits.