Learning to Refer: Client-Resolved Generation for Privacy-Aware Language Models
Organizations: Department of Computer Science and Engineering, Korea University · Konkuk University · Soongsil University · Sookmyung Women’s University
Abstract
Cloud-based large language models (LLMs) require users to disclose plaintext data to service providers, creating privacy risks in sensitive domains. Existing privacy-preserving approaches often trade utility for protection, incur substantial computational or communication overhead, remain vulnerable to reconstruction from intermediate representations, or protect only a subset of the training and inference pipeline. We introduce Client-Resolved Generation (CRG), a genera- tion interface that separates server-side generation from the lexical realization of input-derived content. The client transmits only pooled and noise-perturbed rep- resentations, while input-derived output content is represented using request-local positional references and resolved to its original strings only on the client. This interface protects private input and input-derived output content during both train- ing and inference while allowing the service provider to keep its proprietary model parameters hidden from the client. At the same time, exact lexical reuse remains possible without directly exposing the reused content on the provider-visible gen- eration path. We evaluate CRG on medical and document-grounded QA, sensi- tive identifier transfer, and tool calling, together with reconstruction and raw-logit leakage analyses. On SealTools, CRG improves complete-call exact match from 57.3% to 79.9% over the input-privacy framework PPFT, with larger gains as more required output content can be resolved through references. Together, these results show that CRG provides a practical interface for privacy-sensitive cloud LLMs by reducing plaintext exposure across both input and output pathways while preserv- ing task utility and server-side model confidentiality.
Figures & tables
| Method | NLICE | IDQuAD | OQA | Flashcards | BioASQ-F | BioASQ-L | Macro Avg. |
|---|---|---|---|---|---|---|---|
| AlienLM | 58.77 | 58.37 | 37.32 | 36.88 | 17.24 | 0.00 | 34.76 |
| PPFT | 58.15 | 77.81 | 51.48 | 40.17 | 31.03 | 17.34 | 46.00 |
| CRG | 53.08 | 84.52 | 46.54 | 42.70 | 48.28 | 26.17 | 50.22 |
| CRG | 73.23 | 88.85 | 58.58 | 44.45 | 55.17 | 30.60 | 58.48 |
| Method | SealTools | ToolACE | PolicyQA | MultiSpanQA | TyDiQA | PIIFORM | DOCPII | Macro Avg. |
|---|---|---|---|---|---|---|---|---|
| AlienLM | 59.00 | 42.61 | 44.36 | 61.81 | 51.80 | 57.47 | 83.87 | 57.27 |
| PPFT | 57.32 | 53.41 | 45.71 | 76.06 | 66.86 | 32.70 | 74.13 | 58.03 |
| CRG | 79.92 | 46.59 | 42.96 | 72.79 | 69.32 | 66.80 | 92.00 | 67.20 |
| CRG | 87.03 | 57.95 | 48.04 | 78.11 | 73.37 | 76.23 | 95.40 | 73.73 |
| Method | Attack | ROUGE-L | Age | Sex | Symptom | History |
|---|---|---|---|---|---|---|
| CRG | Verbatim reconstruction | 0.33 | 0.00 | 0.06 | 1.05 | 0.16 |
| Patient-description disclosure | 0.35 | 0.00 | 0.97 | 0.64 | 0.25 | |
| PPFT | Verbatim reconstruction | 13.10 | 15.75 | 6.91 | 34.79 | 26.28 |
| Patient-description disclosure | 35.57 | 95.29 | 65.07 | 57.72 | 62.36 |
Appendix figures & tables14 assets
Supplementary material from the paper’s appendix.
Appendix
| Addressing | ToolACE | PolicyQA | MultiSpanQA | NLICE | IDQuAD | Flashcards |
|---|---|---|---|---|---|---|
| EM | F1 | F1 | Acc. | F1 | F1 | |
| Positional | 46.59 | 42.96 | 72.79 | 53.08 | 84.52 | 42.70 |
| Unique-word | 44.89 | 44.02 | 73.02 | 58.31 | 83.61 | 42.77 |
| Setting | Adversary observes | Protected content |
|---|---|---|
| Network | Transmitted continuous representations and server outputs | Raw input text and plaintext values represented through references |
| Service provider | Continuous representations, reference-aware targets, generated outputs, and server-side computation | Raw client input and referenced input-derived lexical content |
| Logit diagnostic | All server-visible signals and decoder logits | Evaluates whether protected plaintext remains highly ranked internally |
| Client | Raw input, private position table, and resolved output | Server decoder parameters remain undisclosed |
| Attacker | ROUGE-L | Age | Sex | Symptom | History |
|---|---|---|---|---|---|
| Stage 1 aligned | 5.16 | 11.81 (+2.6) | 4.58 (+2.1) | 7.69 (+0.9) | 4.67 (+3.9) |
| Stage 1 aligned w/o reference tokens | 3.92 | 19.24 (+14.1) | 8.78 (+2.8) | 3.54 (+0.6) | 1.14 (+1.0) |
| Method | Token group | Events | Hit@1 | Hit@2 | Hit@5 | Hit@10 | Hit@20 | Hit@50 | Hit@100 |
|---|---|---|---|---|---|---|---|---|---|
| AlienLM | All inverse-mapped tokens | 183,124 | 0.00 | 4.99 | 12.73 | 20.88 | 28.32 | 39.27 | 47.20 |
| AlienLM | Sensitive symptoms | 3,265 | 0.00 | 0.83 | 6.62 | 12.07 | 23.25 | 30.32 | 34.76 |
| AlienLM | Other single-token | 114,582 | 0.00 | 3.70 | 10.85 | 20.01 | 27.88 | 40.36 | 48.44 |
| CRG | All valid references | 93,974 | 0.00 | 1.25 | 1.76 | 2.14 | 2.57 | 3.07 | 3.94 |
| CRG | Sensitive symptoms | 8,987 | 0.00 | 0.00 | 0.02 | 0.03 | 0.03 | 0.10 | 0.20 |
| CRG | Other single-token | 48,444 | 0.00 | 2.35 | 3.10 | 3.63 | 4.19 | 4.86 | 6.32 |
| Dataset | 20–40% | 40–60% | 60–80% | ||
|---|---|---|---|---|---|
| SealTools | 2 | 75 | |||
| SealTools | 2 | 150 | |||
| SealTools | 4 | 75 | |||
| SealTools | 4 | 150 | |||
| PIIFORM | 2 | 75 | |||
| PIIFORM | 2 | 150 |
| ID | Protected phrase / token | CRG rank | AlienLM rank |
|---|---|---|---|
| 56 | coughing up blood | 23,099 | 2 |
| 182 | chest pain | 75,484 | 3 |
| 196 | swollen lymph nodes | 83,611 | 4 |
| Dataset | Train | Dev | Test |
|---|---|---|---|
| PII Form Filling | 30,000 | 500 | 3,000 |
| Document PII QA | 30,000 | 500 | 3,000 |
| Tool-call pool | 39,932 | 1,000 | 4,000 |
| Method | Attack condition | ROUGE-L | Age | Sex | Symptom | History |
|---|---|---|---|---|---|---|
| CRG | c0: No injection | 0.43 | 0.00 | 0.32 | 0.40 | 0.60 |
| c1: Recover, decoder text | 0.24 | 0.00 | 0.00 | 0.00 | 0.00 | |
| c2: Recover, encoder clean | 0.33 | 0.00 | 0.06 | 1.05 | 0.16 | |
| c3: Recover, encoder noisy | 0.40 | 0.00 | 0.39 | 1.57 | 0.41 | |
| c4a: Paraphrase, encoder clean | 0.35 | 0.00 | 0.97 | 0.64 | 0.25 | |
| c4b: Paraphrase, encoder noisy | 0.46 | 0.00 | 0.45 | 1.05 | 0.41 |
| Attack condition | R-L | Age lift | Sex lift | Symp. lift | Hist. lift |
|---|---|---|---|---|---|
| c0: No injection | 0.22 | +1.27 | +0.32 | +0.05 | +0.56 |
| c1: Recover, decoder text | 1.97 | +0.73 | +0.12 | ||
| c2: Recover, encoder clean | 0.03 | +0.45 | +0.15 | +1.28 | +0.59 |
| c3: Recover, encoder noisy | 0.08 | +1.29 | +0.24 | +0.25 | +0.39 |
| c4a: Paraphrase, encoder clean | 1.08 | +10.03 | +2.30 | +0.07 | +0.00 |
| c4b: Paraphrase, encoder noisy | 0.59 | +6.48 | +2.09 | +0.12 | +0.10 |
| Client backend | Encoder | Representation | Request–ACK |
|---|---|---|---|
| (ms) | ready (ms) | (ms) | |
| Mac M4 CPU | 115.9 | 117.1 | 180.4 |
| Mac M4 MPS | 53.7 | 60.6 | 148.2 |
| Ryzen 7 7700 CPU | 275.8 | 276.9 | 356.7 |
| RTX 3050 CUDA | 37.8 | 39.4 | 113.2 |
| Client backend | FP32 | FP16 | BF16 |
|---|---|---|---|
| Representation ready (ms) | |||
| Mac M4 CPU | 117.1 | 503.4 | 706.5 |
| Mac M4 MPS | 60.6 | 63.5 | 63.3 |
| Ryzen 7 7700 CPU | 276.9 | 1417.4 | 99.5 |
| RTX 3050 CUDA | 39.4 | 34.3 | 34.8 |
| Method | NLICE | IDQuAD | OQA | Flashcards | BioASQ-F | BioASQ-L | Macro Avg. |
|---|---|---|---|---|---|---|---|
| CRG | 53.08 | 84.52 | 46.54 | 42.70 | 48.28 | 26.17 | 50.22 |
| CRG | 18.62 | 82.38 | 41.68 | 39.76 | 37.93 | 24.94 | 40.89 |
| Method | SealTools | ToolACE | PolicyQA | MultiSpanQA | TyDiQA | PIIFORM | DOCPII | Macro Avg. |
|---|---|---|---|---|---|---|---|---|
| CRG | 79.92 | 46.59 | 42.96 | 72.79 | 69.32 | 66.80 | 92.00 | 67.20 |
| CRG | 78.66 | 46.02 | 43.41 | 71.42 | 68.03 | 65.37 | 91.87 | 66.40 |
| Utility | Raw plaintext leakage | |||||
| SealTools | ToolACE | PolicyQA | MultiSpanQA | SealTools | ToolACE | |
| EM | EM | F1 | F1 | (%) | (%) | |
| 200 | 79.50 | 48.30 | 43.20 | 71.85 | 2.09 | 5.97 |
| 100 | 76.99 | 47.16 | 43.24 | 71.03 | 3.35 | 10.23 |
| 50 | 78.66 | 42.90 | 42.17 | 65.82 | 3.35 | 22.44 |
| 25 | 47.28 | 40.06 | 41.52 | 60.32 | 60.67 | 54.55 |
Privacy-Preserving Language Models
Privacy-preserving language models protect sensitive data during training, inference, personalization, and information sharing.
See all 178 papers