Scores every (session objective, assessment item) pair. The other direction
of the map: map_course_to_sessions() asks whether a session serves an
objective; this asks whether an assessment item measures one.
Usage
map_sessions_to_assessments(
session_objectives,
assessments,
course_id,
llmconfig,
scoring_system = "ioc",
block = c("pairwise", "joint"),
repeats = 1L,
rationale = TRUE,
verbosity = 1L,
outdir = NULL,
...
)Arguments
- session_objectives
List of character vectors: Session objectives, named by session.
- assessments
List of character vectors: Assessment items, named by assessment. Names become part of the ids, so "Midterm" and "Final" stay distinguishable in the long form.
- course_id
Character: Course identifier, used to build stable ids.
- llmconfig
rtemis.llm::LLMConfig: Model configuration, fromconfig_Ollama(),config_OpenAI()orconfig_Anthropic(). One object carries the model, temperature, endpoint and key handling, so an OpenAI-compatible gateway needs no special support here – see the OpenRouter example. Only the model name, backend, base URL and temperature are recorded inrun; an API key held on the config is never persisted.- scoring_system
Character or
ScoringSystem: Scoring system. Seelist_scoring_systems().- block
Character {"pairwise", "joint"}: Prompt block structure.
- repeats
Integer
[1, Inf): Independent raters per pair. IOC and CVI are panel instruments and are defined over several raters; withrepeats = 1they still work but their thresholds do not mean what they were calibrated to mean.- rationale
Logical: Whether to ask for a one-sentence justification per cell. Rationales are what make a mapping reviewable, so this defaults to
TRUE– but they dominate generation time under constrained decoding, since the free-text field is far longer than the label it explains. SetFALSEfor a fast pass when only the matrix is wanted.- verbosity
Integer
[0, Inf): Verbosity level.- outdir
Character: Directory to write resumable parts to, or
NULLfor a run that keeps nothing. Each criterion's scores are written as they are produced, and a later run over the same objectives with the same settings reads them back instead of scoring them again.- ...
Additional per-call arguments forwarded to
rtemis.llm::generate(), e.g.temperature,seed.
Details
The engine is shared – only the relation differs, which changes how the
prompt is worded and which scoring systems warn. Prefer a scoring system whose
recommended_for includes "session_to_assessment"; list_scoring_systems() shows
which. cvi is the closest to the published instrument for this direction,
since content validity was defined over exactly this judgement.
Reading the result
The criterion is the session objective and the candidate is the assessment
item, so in check_level_consistency() a negative delta means the item is
below the level of the objective it measures – the course taught analysis
and the exam asked for recall. That is the classic assessment misalignment,
and it is the one direction where "under" is nearly always a defect rather
than scaffolding.