Text Generation
Transformers
Safetensors
English
qwen3_5
image-text-to-text
user-representation
user-simulation
simulation
multi-turn
conversational
Instructions to use microsoft/UserRepGen-4B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use microsoft/UserRepGen-4B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="microsoft/UserRepGen-4B") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("microsoft/UserRepGen-4B") model = AutoModelForMultimodalLM.from_pretrained("microsoft/UserRepGen-4B", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = processor.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=256) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use microsoft/UserRepGen-4B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "microsoft/UserRepGen-4B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "microsoft/UserRepGen-4B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/microsoft/UserRepGen-4B
- SGLang
How to use microsoft/UserRepGen-4B with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "microsoft/UserRepGen-4B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "microsoft/UserRepGen-4B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "microsoft/UserRepGen-4B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "microsoft/UserRepGen-4B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use microsoft/UserRepGen-4B with Docker Model Runner:
docker model run hf.co/microsoft/UserRepGen-4B
Add UserRepGen-4B model card draft
Browse filesCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
README.md
ADDED
|
@@ -0,0 +1,383 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
language:
|
| 4 |
+
- en
|
| 5 |
+
base_model:
|
| 6 |
+
- Qwen/Qwen3.5-4B
|
| 7 |
+
pipeline_tag: text-generation
|
| 8 |
+
tags:
|
| 9 |
+
- user-representation
|
| 10 |
+
- user-simulation
|
| 11 |
+
- simulation
|
| 12 |
+
- multi-turn
|
| 13 |
+
---
|
| 14 |
+
|
| 15 |
+
# UserRepGen-4B
|
| 16 |
+
|
| 17 |
+
UserRepGen-4B is a fine-tuned Qwen3.5-4B language model that generates a
|
| 18 |
+
structured, natural-language user representation from a multi-turn
|
| 19 |
+
user-assistant conversation. Each representation contains a **task description**
|
| 20 |
+
and a **behavior description** for a user, and is intended to condition a
|
| 21 |
+
separate LLM-based user simulator.
|
| 22 |
+
|
| 23 |
+
Unlike [UserLM-8b](https://huggingface.co/microsoft/UserLM-8b) and
|
| 24 |
+
[UserLM-2.0](https://huggingface.co/microsoft/UserLM-2.0), which generate user
|
| 25 |
+
utterances, **UserRepGen-4B generates representations, not simulated user turns**.
|
| 26 |
+
It does not itself execute the user's task or serve as the simulator.
|
| 27 |
+
|
| 28 |
+
The model was trained with online supervised fine-tuning through hindsight
|
| 29 |
+
distillation, using feedback obtained by comparing simulated and original user
|
| 30 |
+
behavior. At inference time, it generates a representation directly from the
|
| 31 |
+
source conversation without requiring simulation rollouts or hindsight feedback.
|
| 32 |
+
|
| 33 |
+
## Model details
|
| 34 |
+
|
| 35 |
+
| Property | Description |
|
| 36 |
+
|---|---|
|
| 37 |
+
| Developed by | Microsoft Corporation |
|
| 38 |
+
| Model type | User-representation generator, 4B-class language model |
|
| 39 |
+
| Backbone | [Qwen3.5-4B](https://huggingface.co/Qwen/Qwen3.5-4B) |
|
| 40 |
+
| Adaptation | Rank-64 LoRA with online supervised fine-tuning |
|
| 41 |
+
| Language | English |
|
| 42 |
+
| Inputs | Text-only, multi-turn user-assistant conversations |
|
| 43 |
+
| Outputs | Text formatted as JSON with `task` and `user_behavior` fields |
|
| 44 |
+
| Training sequence length | 9,216 tokens: up to 8,192 prompt tokens and 1,024 completion tokens |
|
| 45 |
+
| Training dates | July-August 2026 |
|
| 46 |
+
| License | MIT |
|
| 47 |
+
| Repository | [microsoft/UserRepGen-4B](https://huggingface.co/microsoft/UserRepGen-4B) |
|
| 48 |
+
|
| 49 |
+
### Key capabilities
|
| 50 |
+
|
| 51 |
+
- Generates structured task and user-behavior descriptions from multi-turn
|
| 52 |
+
user-assistant conversations.
|
| 53 |
+
- Captures conversational behavior including communication style, request
|
| 54 |
+
formulation, incremental constraint disclosure, response patterns, feedback,
|
| 55 |
+
context provision, engagement, and termination behavior.
|
| 56 |
+
- Produces representations that improve conversation-reconstruction fidelity
|
| 57 |
+
when used with an unseen LLM-based simulation environment.
|
| 58 |
+
- Captures some user-specific behavioral patterns that transfer across
|
| 59 |
+
conversations and unseen tasks.
|
| 60 |
+
- Produces representations that can help simulated populations better preserve
|
| 61 |
+
the behavioral diversity of source conversations.
|
| 62 |
+
- Produces behavior descriptions that improve same-user conversation matching
|
| 63 |
+
in the accompanying research's re-identification evaluation. This capability
|
| 64 |
+
also presents a privacy risk; representations are not anonymized data.
|
| 65 |
+
|
| 66 |
+
## How to use
|
| 67 |
+
|
| 68 |
+
The intended workflow is:
|
| 69 |
+
|
| 70 |
+
1. Select a conversation that you are authorized to process, minimizing or
|
| 71 |
+
removing identifying and sensitive information.
|
| 72 |
+
2. Format the conversation using the model's inference prompt and chat template.
|
| 73 |
+
3. Generate a representation and validate it as JSON containing `task` and
|
| 74 |
+
`user_behavior` fields.
|
| 75 |
+
4. Review the descriptions for unsupported inferences, sensitive information,
|
| 76 |
+
and task-specific leakage.
|
| 77 |
+
5. Pass the reviewed representation to a separate LLM-based user simulator.
|
| 78 |
+
|
| 79 |
+
The following illustrates the output structure. It is not a measured model
|
| 80 |
+
output:
|
| 81 |
+
|
| 82 |
+
```json
|
| 83 |
+
{
|
| 84 |
+
"task": "Get help planning a vegetarian dinner for four people within 45 minutes.",
|
| 85 |
+
"user_behavior": "In the source conversation, the user makes a brief initial request, provides constraints incrementally when asked, and asks for concrete next steps."
|
| 86 |
+
}
|
| 87 |
+
```
|
| 88 |
+
|
| 89 |
+
### Inference requirements and release status
|
| 90 |
+
|
| 91 |
+
The reported inference setup uses Python, PyTorch, and a Qwen3.5-compatible
|
| 92 |
+
runtime such as Hugging Face Transformers or vLLM. The model was hosted with
|
| 93 |
+
vLLM on NVIDIA H100, A100, RTX A6000, and B200 GPUs. Other hardware and operating
|
| 94 |
+
systems, including CPU-only and mobile devices, have not been tested. No
|
| 95 |
+
optimized or device-specific UserRepGen-4B formats are currently available.
|
| 96 |
+
|
| 97 |
+
**The repository currently contains the model weights only, alongside Git
|
| 98 |
+
attributes. The model configuration, tokenizer/chat-template assets, and exact
|
| 99 |
+
inference prompt are not yet included.** The weights alone are not a complete
|
| 100 |
+
`from_pretrained` package. A runnable loading and generation example must be
|
| 101 |
+
validated with those assets before being added here.
|
| 102 |
+
|
| 103 |
+
The training limits were 8,192 prompt tokens and 1,024 completion tokens.
|
| 104 |
+
Extended-context use beyond the 9,216-token training sequence length is not
|
| 105 |
+
supported by this release, and long-context performance was not separately
|
| 106 |
+
benchmarked.
|
| 107 |
+
|
| 108 |
+
## Uses
|
| 109 |
+
|
| 110 |
+
### Direct intended uses
|
| 111 |
+
|
| 112 |
+
UserRepGen-4B is intended for research and development involving LLM-based user
|
| 113 |
+
simulation. Its primary use is to transform an authorized conversation into a
|
| 114 |
+
compact natural-language representation that can condition a separate user
|
| 115 |
+
simulator. This can support conversation reconstruction, simulator evaluation,
|
| 116 |
+
interactive training and evaluation of AI assistants, and research into
|
| 117 |
+
behavioral diversity in simulated user populations.
|
| 118 |
+
|
| 119 |
+
The model is most appropriate for English, multi-turn user-assistant
|
| 120 |
+
conversations similar to the seven evaluation datasets described below. The
|
| 121 |
+
intended audience includes academic and industry researchers, engineers, and
|
| 122 |
+
collaborators working on human-AI interaction, user simulation, or replication
|
| 123 |
+
and extension of the accompanying research.
|
| 124 |
+
|
| 125 |
+
### Downstream uses
|
| 126 |
+
|
| 127 |
+
The learned behavior component may be combined with a different task
|
| 128 |
+
description to study whether observed interaction patterns transfer to a new
|
| 129 |
+
scenario. Representations can also support research into population-level
|
| 130 |
+
behavioral diversity in simulations. Downstream fidelity depends on the
|
| 131 |
+
separate simulator and its environment, not just the representation.
|
| 132 |
+
|
| 133 |
+
### Out-of-scope uses
|
| 134 |
+
|
| 135 |
+
The model is not intended for non-consensual profiling, surveillance,
|
| 136 |
+
impersonation, deceptive automated engagement, identity discovery, or linking
|
| 137 |
+
records about a person without authorization. Representations must not be
|
| 138 |
+
treated as verified, exhaustive, stable, or clinically meaningful descriptions
|
| 139 |
+
of an individual. They must not be treated as anonymized data: the research
|
| 140 |
+
shows that learned behavior descriptions can increase the ability to link
|
| 141 |
+
conversations from the same user.
|
| 142 |
+
|
| 143 |
+
The model was not designed or evaluated for consequential decisions in areas
|
| 144 |
+
such as employment, education, housing, credit, insurance, healthcare, legal
|
| 145 |
+
services, law enforcement, or access to essential services. It was not evaluated
|
| 146 |
+
for non-English inputs, short or single-turn interactions, modalities other
|
| 147 |
+
than text, autonomous deployment, demographic inference, real-world identity
|
| 148 |
+
recovery, or faithful simulation outside user-assistant conversations.
|
| 149 |
+
|
| 150 |
+
Synthetic simulations should not replace research with real users or be
|
| 151 |
+
presented as genuine human feedback or evidence. The model must not be used to
|
| 152 |
+
operate deceptive automated accounts, manipulate online discussions or
|
| 153 |
+
engagement signals, contaminate datasets with interactions misrepresented as
|
| 154 |
+
human-generated, or fabricate research evidence.
|
| 155 |
+
|
| 156 |
+
## Risks and limitations
|
| 157 |
+
|
| 158 |
+
- **Inference from limited evidence:** A representation is inferred from one
|
| 159 |
+
conversation and may overgeneralize absence or a one-time behavior into a
|
| 160 |
+
stable rule about the user.
|
| 161 |
+
- **Unsupported interpretations:** Outputs may contain assumptions not grounded
|
| 162 |
+
in the source conversation. The analysis found that the trained model can
|
| 163 |
+
replace broad personality claims with behavioral rules that are still too
|
| 164 |
+
confident.
|
| 165 |
+
- **Privacy and linkability:** Representations may preserve sensitive or
|
| 166 |
+
identifying details and can facilitate cross-conversation linkage. They are
|
| 167 |
+
not anonymized data.
|
| 168 |
+
- **Task-specific leakage:** Behavior descriptions may include exact commands,
|
| 169 |
+
tool names, technical artifacts, or termination phrases from the source
|
| 170 |
+
conversation, which can reduce transfer and expose source content.
|
| 171 |
+
- **Redundancy and length:** Outputs are longer on average than base-model
|
| 172 |
+
outputs and may repeat similar instructions.
|
| 173 |
+
- **Simulator and pipeline dependence:** Downstream fidelity depends on the
|
| 174 |
+
separate user simulator, assistant, prompts, sampling procedure, and judge.
|
| 175 |
+
Performance may degrade when these differ from the research setup. A good
|
| 176 |
+
representation does not guarantee a faithful rollout.
|
| 177 |
+
- **Evaluation dependence:** The main fidelity metric is produced by an LLM
|
| 178 |
+
judge. Although an author annotation study found 88% preference agreement,
|
| 179 |
+
this does not establish agreement across a broader population.
|
| 180 |
+
- **Language and domain coverage:** Training retained safe English
|
| 181 |
+
conversations with at least four user turns. Performance is not established
|
| 182 |
+
for other languages, shorter interactions, other modalities, or sensitive
|
| 183 |
+
domains.
|
| 184 |
+
- **Fairness and representation:** Better aggregate behavioral diversity does
|
| 185 |
+
not establish equitable performance across demographic groups. Demographic
|
| 186 |
+
fairness was not evaluated.
|
| 187 |
+
- **Population coverage:** The selected datasets may overrepresent technical
|
| 188 |
+
users, AI-model evaluators, paid online study participants, public-repository
|
| 189 |
+
software developers, and users willing to interact through research
|
| 190 |
+
interfaces. Demographic and age distributions for the selected samples are
|
| 191 |
+
not reported.
|
| 192 |
+
- **Safety:** The fine-tune was not evaluated for standard generative-model
|
| 193 |
+
safety categories such as hateful, sexual, violent, or self-harm content,
|
| 194 |
+
jailbreak robustness, or copyright memorization.
|
| 195 |
+
|
| 196 |
+
### Alignment and safety evaluation
|
| 197 |
+
|
| 198 |
+
UserRepGen-4B was trained to generate user representations that optimize
|
| 199 |
+
downstream simulation fidelity. There was no explicit alignment objective.
|
| 200 |
+
The training pipeline retained safe English conversations and used
|
| 201 |
+
natural-language hindsight feedback from Qwen3.5-4B- and Gemma3-4B-based
|
| 202 |
+
simulation environments. These measures reduce exposure to unsafe training
|
| 203 |
+
examples but do not establish safety alignment, privacy protection, factual
|
| 204 |
+
grounding, or resistance to malicious use. The base model's alignment
|
| 205 |
+
properties may still apply, but were not independently characterized for this
|
| 206 |
+
fine-tune in the manuscript.
|
| 207 |
+
|
| 208 |
+
Training data was preprocessed to retain safe conversations, and model outputs
|
| 209 |
+
were manually analyzed for safety during development. Harmful outputs were not
|
| 210 |
+
observed when using known-safe inputs. However, the model was not specifically
|
| 211 |
+
trained to prevent the generation of harmful content, privacy and
|
| 212 |
+
sensitive-information disclosure, or reproduction of copyrighted or other
|
| 213 |
+
protected materials when such content is present in user-provided inputs.
|
| 214 |
+
Users should evaluate and select input datasets with this behavior in mind.
|
| 215 |
+
|
| 216 |
+
## Recommendations
|
| 217 |
+
|
| 218 |
+
Developers should process only conversations for which they have authorization
|
| 219 |
+
and a valid purpose, minimize or remove identifying and sensitive information,
|
| 220 |
+
and assess whether creating a persistent behavioral representation is necessary.
|
| 221 |
+
Generated descriptions should be reviewed for unsupported inferences,
|
| 222 |
+
sensitive-content retention, stereotyping, and task-specific leakage before
|
| 223 |
+
they are shared or reused. Access to source conversations, representations,
|
| 224 |
+
and simulated conversations should be restricted and audited.
|
| 225 |
+
|
| 226 |
+
The model is intended for research, batch-processing, and human-supervised
|
| 227 |
+
user simulation or evaluation workflows. For any consequential or high-risk
|
| 228 |
+
application, developers should perform application-specific legal and
|
| 229 |
+
responsible-AI review, evaluate performance with affected users, provide
|
| 230 |
+
meaningful human oversight, and avoid treating synthetic behavior as a
|
| 231 |
+
substitute for real-user evidence. Such review does not establish suitability
|
| 232 |
+
for the out-of-scope uses described above.
|
| 233 |
+
|
| 234 |
+
## Training details
|
| 235 |
+
|
| 236 |
+
### Training data
|
| 237 |
+
|
| 238 |
+
Training uses a fixed set of 3,200 English, multi-turn user-assistant
|
| 239 |
+
conversations drawn from seven datasets:
|
| 240 |
+
|
| 241 |
+
- **Real-world interactions:** WildChat, LMSYS-Chat-1M, PRISM, SWE-Chat, and
|
| 242 |
+
ThoughtTrace.
|
| 243 |
+
- **Simulated interactions:** WildChat Coding and WildChat Writing.
|
| 244 |
+
|
| 245 |
+
Approximately 500 conversations are used from each dataset, except
|
| 246 |
+
ThoughtTrace, from which 200 are used. Preprocessing removes near-duplicate
|
| 247 |
+
conversations based on n-gram overlap and retains safe English conversations
|
| 248 |
+
with at least four user turns. Training also uses AI-generated initial
|
| 249 |
+
representations, simulated conversations, hindsight feedback, and
|
| 250 |
+
improved-representation targets.
|
| 251 |
+
|
| 252 |
+
The source datasets differ materially in collection setting and population.
|
| 253 |
+
WildChat and LMSYS-Chat-1M contain opt-in interactions from publicly accessible
|
| 254 |
+
chatbot services; PRISM and ThoughtTrace were collected through paid Prolific
|
| 255 |
+
studies; SWE-Chat contains public-repository coding-agent sessions; and WildChat
|
| 256 |
+
Coding and WildChat Writing contain model-simulated interactions grounded in
|
| 257 |
+
goals extracted from real WildChat conversations. These differences should be
|
| 258 |
+
considered when assessing representativeness, consent, privacy, and fitness for
|
| 259 |
+
a downstream use.
|
| 260 |
+
|
| 261 |
+
### Training procedure
|
| 262 |
+
|
| 263 |
+
The model adapts Qwen3.5-4B using rank-64 LoRA and online supervised fine-tuning
|
| 264 |
+
(OSFT) through hindsight distillation:
|
| 265 |
+
|
| 266 |
+
1. The current policy generates a representation from a source conversation.
|
| 267 |
+
2. Fixed simulation environments use the representation to produce simulated
|
| 268 |
+
conversations.
|
| 269 |
+
3. Judges compare the simulated and original user behavior.
|
| 270 |
+
4. Natural-language hindsight feedback is used to generate an improved
|
| 271 |
+
representation.
|
| 272 |
+
5. The improved representation serves as the supervised target for an online
|
| 273 |
+
update.
|
| 274 |
+
|
| 275 |
+
Unlike approaches that optimize the simulator's policy, this method optimizes
|
| 276 |
+
the reusable representation on which a simulator is conditioned. Training used
|
| 277 |
+
up to 8,192 prompt tokens and 1,024 completion tokens.
|
| 278 |
+
|
| 279 |
+
## Evaluation
|
| 280 |
+
|
| 281 |
+
### Testing data and methodology
|
| 282 |
+
|
| 283 |
+
The primary evaluation uses a disjoint sample of 700 conversations, with 100
|
| 284 |
+
conversations from each of the seven datasets above. GPT-5.4 mini serves as the
|
| 285 |
+
user simulator, assistant, and fidelity judge, providing an evaluation
|
| 286 |
+
environment not used to produce training feedback.
|
| 287 |
+
|
| 288 |
+
Each representation generator receives the same source conversation. A
|
| 289 |
+
simulator conditioned on its representation interacts with an assistant until
|
| 290 |
+
termination or a maximum conversation length. A separate judging call compares
|
| 291 |
+
the original and simulated user behavior across communication style,
|
| 292 |
+
engagement, requests, responses, and context, assigning an overall fidelity
|
| 293 |
+
score from 1 to 10. Three rollouts are sampled per representation, and results
|
| 294 |
+
are reported as best-of-1 and best-of-3.
|
| 295 |
+
|
| 296 |
+
Human validation uses 100 pairs of simulations with unequal judge scores. An
|
| 297 |
+
expert annotator, blinded to model identity and presentation order, selects
|
| 298 |
+
the more faithful simulation; preference agreement with the judge is 88%.
|
| 299 |
+
|
| 300 |
+
### Simulation-fidelity results
|
| 301 |
+
|
| 302 |
+
Higher scores indicate better fidelity on the 1-10 judging scale.
|
| 303 |
+
|
| 304 |
+
| Representation generator / training method | Best-of-1 | Best-of-3 |
|
| 305 |
+
|---|---:|---:|
|
| 306 |
+
| Qwen3.5-4B base model | 3.41 | 4.42 |
|
| 307 |
+
| GPT-5.5 | 3.90 | 4.90 |
|
| 308 |
+
| Supervised fine-tuning (SFT) | 4.64 | 5.68 |
|
| 309 |
+
| OPSD | 4.46 | 5.60 |
|
| 310 |
+
| GRPO | 3.57 | 4.59 |
|
| 311 |
+
| **UserRepGen-4B (OSFT)** | **4.95** | **6.02** |
|
| 312 |
+
|
| 313 |
+
UserRepGen-4B improves on GPT-5.5, the strongest evaluated off-the-shelf model,
|
| 314 |
+
by 1.05 best-of-1 and 1.12 best-of-3 points.
|
| 315 |
+
|
| 316 |
+
Separately, applying iterative hindsight feedback to the base model at test
|
| 317 |
+
time raises fidelity from 3.41/4.42 initially to 6.10 best-of-1 after ten rounds
|
| 318 |
+
and a peak of 7.07 best-of-3 after nine rounds. These results use additional
|
| 319 |
+
test-time simulation and feedback, unlike direct UserRepGen-4B inference.
|
| 320 |
+
|
| 321 |
+
### Additional evaluations
|
| 322 |
+
|
| 323 |
+
- **Cross-task generalization:** Experiments use 147 ThoughtTrace users with
|
| 324 |
+
at least two conversations who do not appear in training. Task descriptions
|
| 325 |
+
come from target conversations, while behavior descriptions come from no
|
| 326 |
+
conversation, a different user, another conversation from the same user,
|
| 327 |
+
or the target conversation. Learned behavior descriptions improve fidelity
|
| 328 |
+
for unseen tasks from the same user.
|
| 329 |
+
- **Population diversity:** Learned behavior descriptions reduce population-level
|
| 330 |
+
Jensen-Shannon divergence and Self-BLEU relative to task-only conditioning,
|
| 331 |
+
indicating closer behavioral-distribution matching and less homogeneous
|
| 332 |
+
simulated conversations. Behavioral-distribution evaluation uses
|
| 333 |
+
Qwen3.5-122B-A10B-FP8 descriptions across six dimensions, Qwen3-Embedding-8B
|
| 334 |
+
embeddings, and k-means with 500 clusters.
|
| 335 |
+
- **Same-user re-identification:** Over 147 ThoughtTrace users, GPT-5.4 mini
|
| 336 |
+
selects which of four candidates comes from the same user as a query.
|
| 337 |
+
UserRepGen-4B behavior descriptions yield 51.02% accuracy, compared with
|
| 338 |
+
44.22% using full conversations and 25% for random selection. This result
|
| 339 |
+
demonstrates a linkability risk, not anonymization or suitability for
|
| 340 |
+
identity discovery.
|
| 341 |
+
|
| 342 |
+
## Environmental impact
|
| 343 |
+
|
| 344 |
+
Training compute totals and a carbon-emissions estimate are not provided in
|
| 345 |
+
this model card. The inference hardware listed above should not be interpreted
|
| 346 |
+
as a training-compute or emissions estimate.
|
| 347 |
+
|
| 348 |
+
## Citation
|
| 349 |
+
|
| 350 |
+
The paper link and BibTeX entry are pending confirmation and will be added
|
| 351 |
+
before the model card is finalized.
|
| 352 |
+
|
| 353 |
+
## Glossary
|
| 354 |
+
|
| 355 |
+
- **User representation:** A natural-language task description and behavior
|
| 356 |
+
description used to condition a separate user simulator.
|
| 357 |
+
- **OSFT:** Online supervised fine-tuning.
|
| 358 |
+
- **Hindsight distillation:** Learning from improved representations generated
|
| 359 |
+
using feedback on simulated versus original user behavior.
|
| 360 |
+
|
| 361 |
+
## Model card contact
|
| 362 |
+
|
| 363 |
+
This research was conducted by members of Microsoft Research. We welcome
|
| 364 |
+
feedback and collaboration. To share suggestions, ask questions, or report
|
| 365 |
+
unexpected or offensive behavior, contact:
|
| 366 |
+
|
| 367 |
+
- **Primary:** Michel Galley,
|
| 368 |
+
[mgalley@microsoft.com](mailto:mgalley@microsoft.com).
|
| 369 |
+
- **Secondary:** Philippe Laban,
|
| 370 |
+
[plaban@microsoft.com](mailto:plaban@microsoft.com).
|
| 371 |
+
|
| 372 |
+
If the team receives reports of undesired behavior or independently identifies
|
| 373 |
+
issues, this repository will be updated with appropriate mitigations.
|
| 374 |
+
|
| 375 |
+
Requests for additional information can also be directed to
|
| 376 |
+
[MSFTAIActRequest@microsoft.com](mailto:MSFTAIActRequest@microsoft.com).
|
| 377 |
+
|
| 378 |
+
**Authorized representative:** Microsoft Ireland Operations Limited,
|
| 379 |
+
70 Sir John Rogerson's Quay, Dublin 2, D02 R296, Ireland.
|
| 380 |
+
|
| 381 |
+
## Privacy
|
| 382 |
+
|
| 383 |
+
See the [Microsoft Privacy Statement](https://www.microsoft.com/en-us/privacy/privacystatement).
|