Instructions to use StanfordSCALE/assertion_is_a_declarative_statement with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- setfit
How to use StanfordSCALE/assertion_is_a_declarative_statement with setfit:
from setfit import SetFitModel model = SetFitModel.from_pretrained("StanfordSCALE/assertion_is_a_declarative_statement") preds = model.predict(["i loved the spiderman movie!", "pineapple on pizza is the worst"]) print(preds) - Notebooks
- Google Colab
- Kaggle
Download README.md from StanfordSCALE/assertion_is_a_declarative_statement: direct link, hf CLI and curl.
- Browser
- Download file 4.2 kB
-
https://huggingface.co/StanfordSCALE/assertion_is_a_declarative_statement/resolve/main/README.md
- Command line
-
hf download hf://StanfordSCALE/assertion_is_a_declarative_statement/README.md
-
curl -L -o README.md https://huggingface.co/StanfordSCALE/assertion_is_a_declarative_statement/resolve/main/README.md
language: en
library_name: setfit
pipeline_tag: text-classification
base_model: sentence-transformers/paraphrase-mpnet-base-v2
datasets:
- StanfordSCALE/assertions_llm_annotated_talkmoves
metrics:
- f1
- precision
- recall
- roc_auc
tags:
- setfit
- text-classification
- education
- classroom-discourse
- edubehaviors
- assertion
model-index:
- name: assertion_is_a_declarative_statement
results:
- task:
type: text-classification
dataset:
name: assertions_llm_annotated_talkmoves
type: StanfordSCALE/assertions_llm_annotated_talkmoves
split: test
metrics:
- type: f1
value: 0.8986
name: F1 (positive class, test)
- type: precision
value: 0.8877
name: Precision (positive class, test)
- type: recall
value: 0.9097
name: Recall (positive class, test)
- type: roc_auc
value: 0.9644
name: ROC-AUC (test)
Assertion: is a declarative statement
This classifier was trained for EduBehaviors: Assertion-based schemas for auditable dialogue coding and is usable through the Python package EduBehaviors-kit. This classifier was trained on an LLM-annotated subset of teacher utterances from the TalkMoves Dataset. See the Datasets section below for more information.
Training Details
Datasets
| Dataset | Split | Size |
|---|---|---|
| StanfordSCALE/assertions_llm_annotated_talkmoves | train | 13,179 (53.3%) |
| StanfordSCALE/assertions_llm_annotated_talkmoves | dev | 3,297 (13.3%) |
| StanfordSCALE/assertions_llm_annotated_talkmoves | test | 8,239 (33.3%) |
This model's columns are assertion_is_a_declarative_statement and split_is_a_declarative_statement.
Base rate (share of rows labeled as True): 43.8% overall — 43.5% train, 46.0% dev, 43.6% test.
Labels and annotation
Labels were generated with LLM annotators. Krippendorff's alpha for this assertion is 0.801.
Hyperparameters
| Parameter | Value |
|---|---|
| Base model (body) | sentence-transformers/paraphrase-mpnet-base-v2 |
| Head | LogisticRegression |
| Body learning rate | 2e-05 |
| Head learning rate | 0.01 |
| Batch size | 16 (contrastive phase) / 32 (head) |
| Epochs | 10 |
| Max steps | 5000 (contrastive phase) |
| Eval max steps | 100 |
| Seed | 20260904 |
| Mixed precision | enabled on GPU |
Evaluation
Results
| Split | n | Base rate | Precision | Recall | F1 (positive class) | ROC-AUC | Average precision |
|---|---|---|---|---|---|---|---|
| dev | 3,297 | 46.0% | 0.889 | 0.899 | 0.894 | 0.962 | 0.951 |
| test | 8,239 | 43.6% | 0.888 | 0.910 | 0.899 | 0.964 | 0.946 |
Limitations
- Labels come from LLM annotators, not human coders. Agreement between annotators with Krippendorff's Alpha is 0.801.
- Trained on teacher utterances only. Behaviour on student speech is untested.
How to Use
Message Structure
The model was trained on text built as:
{utterance}
The utterance is passed through as-is.
Running instructions
pip install setfit
from setfit import SetFitModel
model = SetFitModel.from_pretrained("StanfordSCALE/assertion_is_a_declarative_statement")
text = 'I was thinking when I was looking at Marks model and I noticed many of you made models also for projects for another class'
model.predict([text]) # -> array([1]) when the assertion holds
model.predict_proba([text]) # -> [[P(no), P(yes)]]
Citation
@misc{assertion_is_a_declarative_statement,
author = {Stanford SCALE Initiative},
title = {Assertion classifier: is a declarative statement},
year = {2026},
url = {https://huggingface.co/StanfordSCALE/assertion_is_a_declarative_statement}
}