Model Card for Qwen2.5-7B-Instruct-action_solution
Model Description
Using the Qwen2.5-7B-Instruct model as a starting point, the Qwen2.5-7B-Instruct-impact Language Model is additionally fine-tuned on a 6k train dataset to detect whether a text contains an indication of a firm stating climate change adaptation actions or solutions (see also prompt).
I follow the unsloth fine-tuning setup in this work. The model is fine-tuned with the prompt template given below.
How to Get Started With the Model
You can use the model in the following way:
from vllm import LLM, SamplingParams
from unsloth.chat_templates import get_chat_template
from transformers import AutoTokenizer
# load model
model_name = "climate-adaptation/Qwen2.5-7B-Instruct-action_solution"
llm = LLM(model=model_name)
# load tokenizer with the correct chat template
tokenizer = AutoTokenizer.from_pretrained(model_name) # "Qwen/Qwen2.5-7B"
tokenizer = get_chat_template(tokenizer, chat_template="qwen-2.5")
# prompt template
prompt_template_impact = """You are an expert in analyzing firms' disclosure towards sustainability. You are presented with a <text> relating to a firm's climate change adaptation from its disclosure. Your task is to decide whether it contains evidence of a firm's climate change adaptation actions or solutions.
<text>:
-----
{text}
-----
Definition of climate change adaptation actions and solutions:
- Adaptation actions are measures undertaken by a firm to adjust its operations, assets, supply chains, or decision-making processes to prepare for current or anticipated physical climate risks. These include risk assessments and financial measures like extreme weather (self-)insurance or reserves. The focus lies on the fact that the firm prepares ITSELF for these risks.
- Adaptation solutions are products, services, or technologies provided by a firm that enable customers or other actors to reduce their exposure or vulnerability to physical climate risks or to strengthen their resilience. The focus lies on the fact that the firm helps to prepare OTHERS for these risks.
Decide whether the text mentions adaptation actions, or solutions or both of them.
Output a single JSON object with the keys "action" and "solution". Use "yes"/"no" values only. Multi-label is allowed: "action" and "solution" may both be "yes".
Output only the JSON object (no markdown, no extra text):
"""
# some example texts
text_1 = "The most severe forward-looking risks for our firm are hurricanes and wildfires."
text_2 = "Last year, a large freeze in Texas resulted in the closure of our production facilities."
texts = [text_1, text_2]
prompt_1 = prompt_template_impact.format(text=text_1)
prompt_2 = prompt_template_impact.format(text=text_2)
# demo prompts
raw_prompts = [
[{'role': 'user', 'content': prompt_1}],
[{'role': 'user', 'content': prompt_2}]
]
# apply the correct chat template formatting
formatted_prompts = [
tokenizer.apply_chat_template(convo, tokenize=False, add_generation_prompt=True)
for convo in raw_prompts
]
# set sampling parameters
sampling_params = SamplingParams(temperature = 0.01, min_p = 0.1)
# run inference
outputs = llm.generate(formatted_prompts, sampling_params)
# print outputs
answers = []
for i, output in enumerate(outputs):
generated_text = output.outputs[0].text
answers.append(generated_text)
print(f"Text under investigation: {texts[i]!r}\nGenerated Answer (Impact?): {generated_text!r}\n")
More details can be found in the paper
@article{Schimanski26adaptation,
title={{Firm-level Climate Change Adaptation}},
author={Tobias Schimanski},
year={2026},
journal={Available on SSRN},
}
- Downloads last month
- 17
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support