Model Card for Llama3-G2C

Llama-3-8B-Instruct fine-tuned on the Graph2Counsel dataset for mental health counseling dialogue generation. The model generates counselor response to a client dialogue in a multi-turn counseling dialogue.

Model Details

Base model: meta-llama/Meta-Llama-3-8B-Instruct

Input: A system prompt with a fixed counselor instruction, followed by the dialogue history and the client profile.

Output: The next counselor turn in the therapeutic dialogue.

Training data: Graph2Counsel โ€” a dataset of synthetic counseling sessions grounded in CPGs derived from real counseling sessions.

Fine-tuning method: QLoRA

Usage

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
 
model_id = "UKPLab/Llama3-G2C"
 
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype=torch.bfloat16,
    device_map="auto",
)
 
system_prompt = (
    "You are a professional counselor. Your task is to generate a natural, empathetic "
    "and therapeutic response to the client's most recent utterance while adhering to "
    "established psychological techniques. You are provided with the current dialogue "
    "history and the client profile. Please be mindful to only generate the counselor "
    "response for a single turn, and do not include extra text like \"here is the next "
    "counselor utterance\" or \"Here is a possible next utterance\" or anything mentioning "
    "or explaining the used technique."
)
 
history = (
    "Counselor: What brings you in today?\n"
    "Client: I've been feeling really anxious at work lately. "
    "It usually happens when I have to give feedback. "
    "I worry my comments won't be taken seriously."
)
 
profile = (
    "Client is a 28-year-old graphic designer who overthinks interactions "
    "with colleagues and struggles to articulate her feelings in stressful situations."
)
 
user_content = f"Dialogue History:\n{history}\nClient Profile:\n{profile}"
 
messages = [
    {"role": "system", "content": system_prompt},
    {"role": "user",   "content": user_content},
]
 
input_ids = tokenizer.apply_chat_template(
    messages,
    tokenize=True,
    add_generation_prompt=True,
    return_tensors="pt"
).to(model.device)
 
with torch.no_grad():
    output = model.generate(
        input_ids,
        max_new_tokens=256,
        do_sample=True,
        temperature=0.7,
        top_p=0.9,
    )
 
response = tokenizer.decode(output[0][input_ids.shape[-1]:], skip_special_tokens=True)
print(response)

Citation

Please cite this model using:

@inproceedings{mandal-etal-2026-graph2counsel,
    title = "{G}raph2{C}ounsel: Clinically Grounded Synthetic Counseling Dialogue Generation from Client Psychological Graphs",
    author = "Mandal, Aishik  and
      Arnaout, Hiba  and
      Ong, Clarissa W.  and
      Bockhorst, Juliet  and
      Sheehan, Kate  and
      Moldow, Rachael  and
      Chakraborty, Tanmoy  and
      Gurevych, Iryna",
    editor = "Lee, Hung-Yi  and
      Dev, Sunipa  and
      Li, Junyi Jessy  and
      Elliott, Desmond",
    booktitle = "Proceedings of the 2026 Conference on Empirical Methods in Natural Language Processing",
    month = oct,
    year = "2026",
    address = "Budapest, Hungary",
    publisher = "Association for Computational Linguistics",
    url = "https://aclanthology.org/2026.emnlp-main.85/",
    doi = "10.18653/2026.emnlp-main.85",
    pages = "1953--2012",
    ISBN = "979-8-89176-459-0",
    abstract = "Rising demand for mental health support has increased interest in using Large Language Models (LLMs) for counseling, but adapting them to this safety-critical domain is hindered by limited real-world data due to privacy constraints. Synthetic datasets provide a promising alternative, but existing approaches often rely on unstructured or semi-structured text inputs and overlook structural dependencies between a client{'}s cognitive, emotional, and behavioral states, leading to psychologically inconsistent and less realistic interactions. We introduce Graph2Counsel, a framework for generating synthetic counseling sessions grounded in Client Psychological Graphs (CPGs) that encode relationships among clients' thoughts, emotions, and behaviors. Graph2Counsel uses a structured prompting pipeline guided by counselor strategies and CPG, and explores prompting strategies including CoT and Multi-Agent Feedback. It produces 760 sessions from 76 CPGs across diverse client profiles. In expert evaluation, our dataset outperforms prior datasets on specificity, counselor competence, authenticity, conversational flow, and safety (Krippendorff{'}s $\alpha$ = 0.70). Fine-tuning an open-source model on this dataset improves performance on several metrics on CounselingBench and CounselBench, while matching baselines on others. We further introduce Therapy-Eval, a multi-turn evaluation framework, and demonstrate the effectiveness of our fine-tuned model in realistic therapeutic conversations. We make our code, data and fine-tuned model public."
}

Contact

For questions or feedback, please contact: aishik.mandal@tu-darmstadt.de

Downloads last month
41
Safetensors
Model size
8B params
Tensor type
F16
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for UKPLab/Llama3-G2C

Finetuned
(1,233)
this model

Dataset used to train UKPLab/Llama3-G2C

Collection including UKPLab/Llama3-G2C