CoolFace
Datasetpublic

PeggyVallin/jfv-french-style-conditioning-dataset-v1.0

JFV French Paired Style-Conditioning Dataset At a Glance Item Value Language French Source Single-author blog corpus, 2005–2025 Public release v1.0 Aligned units in public release 1,484 Texts in public aligned release 7,420 Original experiment 1,492 aligned units / 7,460 texts Generated conditions Ministral baseline; profile; profile + five-shot examples Primary use Paired study of stylistic conditioning and evaluation-metric validity… See the full description on the dataset page: https://huggingface.co/datasets/PeggyVallin/jfv-french-style-conditioning-dataset-v1.0.

sourceHugging Facecc-by-4.0updated 8d agoView on Hugging Face
0likes59downloads
Dataset Card

JFV French Paired Style-Conditioning Dataset

At a Glance

ItemValue
LanguageFrench
SourceSingle-author blog corpus, 2005–2025
Public releasev1.0
Aligned units in public release1,484
Texts in public aligned release7,420
Original experiment1,492 aligned units / 7,460 texts
Generated conditionsMinistral baseline; profile; profile + five-shot examples
Primary usePaired study of stylistic conditioning and evaluation-metric validity
Important caveatThe public release is a curated subset of the original experiment; research results reported below were computed on the original 1,492-pair experiment unless explicitly stated otherwise

Dataset Summary

This dataset contains paired French texts from an experiment on stylometric conditioning of language-model generation, built around a single-author blog corpus identified in the project artifacts as JFV.

The public release contains 1,484 aligned units. For each unit, five related texts are available:

Text setDocumentsRole
Human JFV1,484Source-author reference text
DeepSeek topic-matched text1,484Independently generated article on the same topic; used as the immediate source text for the conditioned generation pipeline
Ministral baseline1,484Rewrite generated without the stylometric profile
Ministral + profile1,484Rewrite conditioned by an explicit stylometric profile
Ministral + profile + few-shot1,484Rewrite conditioned by the same profile plus five fixed examples

The complete public aligned release therefore contains 7,420 texts.

The accompanying research experiment originally used 1,492 aligned units, or 7,460 texts. Eight source-blog records were later confirmed by the source author to be full republications of La Voix du Nord articles rather than source-author prose. Those eight pair_ids were removed from all five aligned files for public release, preserving alignment. The historical experiment was not rerun or rewritten after this publication curation.

The exact public-release exclusions are recorded in:

jfv_release_exclusions_8_voix_du_nord.json

Accordingly, numerical results from the original project report and evaluation notebook should be interpreted as results for the historical N=1,492 experiment, not as recomputed results for the N=1,484 public subset.

Public Release Curation

The public release applies one publication-only filtering step to the historical experimental package:

  • —original experiment: 1,492 aligned units;
  • —public release: 1,484 aligned units;
  • —eight confirmed newspaper republications removed from the human file;
  • —the same eight pair_ids removed from the DeepSeek, baseline, profile, and profile + few-shot files;
  • —retained records are otherwise preserved from the historical experimental files.

The public filenames intentionally omit the historical row count so that the filenames remain valid for the curated release.

The stylometric profile, few-shot manifest, and generated outputs were not retrained or regenerated after this curation. The release should therefore be understood as a curated publication of a historical experiment, not as a newly executed 1,484-pair experiment.

Source Data

The human source material comes from a French-language personal blog published between 2005 and 2025. The corpus covers primarily political, European, cultural, historical, social, and intellectual topics, including European institutions, public policy, society, cinema, and book reviews.

JFV is the project identifier used for the source author, Jean-François Vallin.

The historical raw corpus contains 4,438 texts. A cleaned reference corpus of 2,981 texts was prepared before this experiment and used for stylometric profiling.

The historical evaluation set contained 1,492 human texts drawn from that 2,981-text reference corpus. The public human file is a curated 1,484-record subset of that historical evaluation set.

The corpus is temporally imbalanced: earlier publication years are more heavily represented than recent years. This matters for stylometric analysis because typographic and other formal writing practices changed over time.

The source author, Jean-François Vallin, has explicitly authorized publication of his source-author material in this dataset under the Creative Commons Attribution 4.0 International (CC BY 4.0) license, including reuse, adaptation, and commercial use subject to attribution. Full newspaper republications identified during the publication audit were excluded. Short quotations, references, names, or other third-party material may still occur inside source-author texts and are not independently relicensed by this dataset.

Pairing Protocol

Human–DeepSeek pairing is thematic, not a rewriting of the human text.

For each human JFV text, DeepSeek produced a distinct article on the same topic. The historical project documentation records that generation used the title and contextual elements from the upstream pairing process; the exact DeepSeek prompt template is not included in this paired dataset release. The human text itself was not supplied as text to rewrite. The human reference and DeepSeek text therefore address the same subject but are independently formulated.

The DeepSeek text then serves as the immediate input to Ministral under three generation conditions:

  1. 1.baseline, without a stylometric profile;
  2. 2.stylometric profile only;
  3. 3.the same stylometric profile plus five fixed few-shot examples.

Prompt traceability

The full generation prompt templates are not included in this paired dataset package; they belong to the accompanying code lineage rather than to the five released text configurations. The generated records nevertheless preserve the prompt-version metadata available at generation time. The recovered scripts identify:

  • —baseline: prompt_version = baseline_v3; the historical baseline records do not contain a separate prompt_template_version field;
  • —profile: prompt_version = profile_v3_1_no_fewshot and prompt_template_version = shared_rewrite_template_v3;
  • —profile + few-shot: prompt_version = profile_v3_1_fewshot_5 and prompt_template_version = shared_rewrite_template_v3_fewshot.

The absence of prompt_template_version from the baseline is therefore a historical metadata-schema difference, not evidence that the baseline prompt is unknown. The exact prompt-profile block used by the conditioned runs is preserved separately in jfv_prompt_profile.json, and the five injected examples are preserved in jfv_fewshot_manifest.json.

This structure supports document-level paired comparison among the three Ministral conditions, but the generation lineage contains two historical preprocessing differences that must be considered when interpreting the conditions. They are documented below.

Historical Preparation Lineage

DeepSeek cleaning and alignment

The recovered DeepSeek cleaning notebook produced a cleaned intermediate containing 1,494 records. A subsequent alignment step produced the historical 1,492-pair evaluation set. The retained lineage does not support describing this transition as a simple deletion of the two identifiers previously listed in this Dataset Card. In particular, 2007-07-26_p5 is present in the final aligned files, while 2009-05-26_p1 and 2007-03-21_p1 are absent from the final aligned release lineage. The public files preserve the final aligned set rather than reconstructing the intermediate 1,494-to-1,492 transition.

Baseline input-version difference

The recovered baseline generation script reads an earlier DeepSeek file:

auth_llm_jfv_deepseek_from_context.jsonl

The final profile and profile + few-shot scripts read the later cleaned file:

jfv_deepseek_drafts_1492.jsonl

The public jfv_deepseek_topic_matched.jsonl corresponds to this cleaned DeepSeek version: for all 1,484 public pairs, its word count reproduces the stored input_word_count in both profile-conditioned files. The earlier exact baseline input version is not included in the public release for the pairs affected by preprocessing differences.

The model family and core generation parameters are shared, but the exact DeepSeek input text is therefore not byte-identical across all three conditions.

For the 1,484 public pairs, direct comparison of the earlier and cleaned DeepSeek versions shows:

  • —373 pairs with a textual difference between the earlier and cleaned DeepSeek input versions;
  • —99 pairs where this difference changes the recorded input_word_count in the baseline relative to the two profile-conditioned conditions;
  • —for those 99 pairs, the baseline count is higher by 1 to 23 words.

Most of the recovered DeepSeek cleaning operations concern preambles, repeated titles, separators, or Markdown-style formatting. The conditioning level is therefore the main experimental manipulation, but it is not literally the only preprocessing difference between the historical baseline and the two profile-conditioned runs.

Baseline canonicalization after generation

The historical baseline was also canonicalized after generation to align it with the final human evaluation set. The recovered canonicalization notebook:

  • —removed five out-of-selection baseline generations;
  • —remapped 2007-03-21_p1 to 2007-01-15_p1;
  • —replaced five baseline title fields with the canonical human titles;
  • —removed a repeated leading title line from text_normalized for 20 records;
  • —retained the historical seeds, generation parameters, and Ollama metadata.

All 20 of those canonicalized records remain present in the 1,484-pair public release.

The baseline file continues to report normalization_version = markdown_light_v2, so users should be aware that its final text_normalized field includes this additional historical canonicalization step. The profile and profile + few-shot files did not undergo the same repeated-title removal step.

Models

DeepSeek topic-matched texts are recorded in the historical artifacts with the Ollama tag:

deepseek-r1:8b

No immutable model digest or pull timestamp was preserved in the released records. Because this is a floating tag, the exact historical DeepSeek weight revision cannot be reconstructed from the tag alone.

The three Ministral rewrite conditions use:

ministral-3:8b-instruct-2512-q4_K_M

Data Files and Schema

The YAML metadata at the top of this Dataset Card defines five explicit Hugging Face configurations so that the five JSONL files are loaded separately. The JSON traceability artifacts are intentionally not part of a dataset configuration.

In the public human file, source is normalized to human_blog. In generated files, source contains the model identifier. The generated files also contain label = llm.

Record identifiers generally follow the pattern YYYY-MM-DD_pN, where the date corresponds to the source publication date and pN distinguishes multiple records associated with the same date. A small number of identifiers also carry a __2 suffix; these denote distinct records and should not be treated as duplicates.

Quick join by pair_id

The human file uses id as the pairing key, while the four generated files expose the same key as pair_id.

python
import pandas as pd

human = pd.read_json("jfv_human.jsonl", lines=True).rename(columns={"id": "pair_id", "text": "human_text"})
draft = pd.read_json("jfv_deepseek_topic_matched.jsonl", lines=True).rename(columns={"text": "deepseek_text"})
baseline = pd.read_json("jfv_ministral_baseline.jsonl", lines=True)
profile = pd.read_json("jfv_ministral_profile_no_fewshot.jsonl", lines=True)
fewshot = pd.read_json("jfv_ministral_profile_fewshot.jsonl", lines=True)

paired = human.merge(draft[["pair_id", "deepseek_text"]], on="pair_id")
paired = paired.merge(baseline[["pair_id", "text_normalized"]].rename(columns={"text_normalized": "baseline_text"}), on="pair_id")
paired = paired.merge(profile[["pair_id", "text_normalized"]].rename(columns={"text_normalized": "profile_text"}), on="pair_id")
paired = paired.merge(fewshot[["pair_id", "text_normalized"]].rename(columns={"text_normalized": "fewshot_text"}), on="pair_id")

assert len(paired) == 1484

jfv_human.jsonl

Fields:

id, source, title, text

jfv_deepseek_topic_matched.jsonl

Fields:

id, pair_id, source, label, title, text

jfv_ministral_baseline.jsonl

Fields:

id, pair_id, draft_id, draft_source, source, label, condition, prompt_version, normalization_version, title, seed, generation_parameters, length_metadata, ollama_metadata, text_raw, text_normalized

Condition value:

baseline_no_profile

jfv_ministral_profile_no_fewshot.jsonl

Fields:

id, pair_id, draft_id, draft_source, source, label, condition, prompt_version, prompt_template_version, profile_version, prompt_profile_hash_sha256, manifest_hash_sha256, few_shot_count, normalization_version, title, seed, generation_parameters, length_metadata, ollama_metadata, text_raw, text_normalized

Condition value:

profile_no_fewshot

jfv_ministral_profile_fewshot.jsonl

Fields:

id, pair_id, draft_id, draft_source, source, label, condition, prompt_version, prompt_template_version, profile_version, prompt_profile_hash_sha256, profile_manifest_hash_sha256, fewshot_manifest_version, fewshot_manifest_sha256, fewshot_example_ids, few_shot_count, normalization_version, title, seed, generation_parameters, length_metadata, ollama_metadata, text_raw, text_normalized

Condition value:

profile_fewshot

Generation Metadata

The three Ministral JSONL files preserve generation-time metadata in addition to generated text.

generation_parameters records:

  • —temperature: 0.7
  • —top_p: 0.9
  • —repeat_penalty: 1.05
  • —num_predict: 1600
  • —num_ctx: 8192
  • —length_tolerance: 0.1

The ±10% target window was calculated from the DeepSeek input available to each generation script at generation time. Because the baseline used an earlier DeepSeek text version for some pairs, the target window is not identical across all three conditions for those pairs.

length_metadata records the generation-time input word count, target bounds, raw and normalized output word counts, and whether the raw output fell inside the requested range.

The generation scripts count words using the regular expression:

text
\b[\wÀ-ÖØ-öø-ÿ’'-]+\b

This convention treats many elided or hyphenated forms as a single match and therefore does not necessarily reproduce descriptive word counts computed by whitespace splitting or another tokenizer.

Recounting the published text_raw with this same regular expression reproduces the stored raw-output word count for all Profile and Profile + Few-Shot records and for 1,475 of 1,484 baseline records. Nine baseline records differ by 1 to 19 words (2008-07-16_p3, 2019-03-08_p4, 2009-05-21_p2, 2013-08-29_p3, 2021-01-12_p2, 2015-07-23_p5, 2016-03-22_p1, 2017-03-22_p5, and 2010-07-29_p3). None of these differences changes the stored length_within_target result. This is a historical text/count representation mismatch in the released baseline artifact; the stored historical counts are preserved.

ollama_metadata contains done, done_reason, prompt_eval_count, eval_count, and total_duration. total_duration is expressed in nanoseconds. The historical Ollama application version was not preserved in the released records and cannot be reconstructed from this package. Failed calls could be retried up to three times; empty outputs and outputs interrupted by the token limit were rejected rather than included as valid generations.

Both text_raw and text_normalized are retained. See Baseline canonicalization after generation above for the additional baseline-specific canonicalization applied to 20 historical records.

Public-release length compliance

Using the stored length_within_target field in the 1,484 public records:

ConditionWithin requested length rangeRecords
Baseline34.9%518 / 1,484
Profile42.0%623 / 1,484
Profile + Few-Shot38.5%572 / 1,484

Seed Policy and One Recorded Exception

The generation protocol was designed to derive a deterministic seed from each pair_id so that matched conditions would use the same seed.

This correspondence holds for 1,483 of the 1,484 public pairs.

For 2007-01-15_p1, the baseline record contains seed 533479144, while the Profile and Profile + Few-Shot records contain seed 2009407582.

The intended seed formula recovered from the generation scripts is:

python
import hashlib
seed = int(hashlib.md5(pair_id.encode("utf-8")).hexdigest()[:8], 16) % (2**31 - 1)

For 2007-01-15_p1, that formula produces 2009407582. The baseline seed, 533479144, is exactly the value produced by the same formula for the pre-canonicalization identifier 2007-03-21_p1, which was later remapped to 2007-01-15_p1. The isolated seed discrepancy is therefore attributable to that identifier remapping; the historical record is preserved unchanged.

Analyses requiring strictly identical seeds across all three conditions can exclude this single pair.

Stylometric Profile Used for Generation

The profile-conditioned generations use the exact profile artifact available at generation time:

jfv_prompt_profile_v3_1

The SHA-256 of the injected prompt_block is:

45783c61379f5831d6bed2779f373293b1160475b30e75938eb4df24ad7b2f6f

This is the value stored in the generated records as prompt_profile_hash_sha256. It identifies the injected text block, not the JSON file as a whole.

The file-level SHA-256 of jfv_prompt_profile.json in this release is:

bc823fcb3306f30c5559a25da5100afeb9e62d27c8158b9b0c2726ac021a174a

The underlying stylometric profiling defined 45 active numerical features. The full per-feature reference values are not contained in jfv_prompt_profile.json and are not included in this paired release. Instead, jfv_prompt_profile.json is the generation-time prompt-profile artifact derived from an earlier version of that profiling work: it records the feature names and roles, and translates 22 of the 45 active features into six natural-language generation instructions.

To avoid ambiguity, this Dataset Card uses numerical profile for the feature-value representation produced by the profiling analysis, prompt-profile artifact for jfv_prompt_profile.json, and Profile condition for the Ministral generation condition that uses that prompt-profile artifact.

This artifact predates the final revision of the profiling notebook. In particular, the injected prompt-profile asks for sentences averaging approximately 20 words, whereas the final numerical profile uses a 14.45-word reference for the author's 2018–2025 period.

The release preserves the prompt-profile artifact that actually produced the historical generations instead of replacing it with a later reconstruction.

The underlying profiling was constructed from the historical 2,981-text reference corpus, before the eight publication exclusions were applied. The public release therefore does not represent a freshly re-profiled experiment after curation.

Few-Shot Selection

The Profile + Few-Shot condition uses five fixed examples recorded in:

jfv_fewshot_manifest.json

The manifest preserves their identity, order, full texts, stylistic scores, semantic-diversity measurements, model revisions, source-pool identity, and selection metadata.

The file-level SHA-256 of the included manifest is:

88429c395efa2c6490ec8401a53618535023690ba5e06c60fbdf75874a871473

The same value is stored in all public Profile + Few-Shot records as fewshot_manifest_sha256.

The historical candidate pool contains 1,489 texts. Its fingerprint is recorded in the manifest as a provenance trace. The candidate-pool JSONL itself is not included in this paired release.

The historical partition was 1,492 evaluation texts + 1,489 candidate-pool texts = 2,981 reference texts. The eight public-release exclusions were removed from the published evaluation subset; they were not reassigned to the few-shot pool.

Hash Terminology

The profile-conditioned generation files contain two similarly named internal fields:

  • —prompt_profile_hash_sha256: SHA-256 of the injected prompt_block text;
  • —manifest_hash_sha256 or profile_manifest_hash_sha256: internal hash of the canonical JSON content of jfv_prompt_profile.json, excluding its own manifest_hash_sha256 field.

The latter is not the hash of jfv_fewshot_manifest.json. Its value in the historical generation records is:

e53cf8bee35a432531e0b6cd8715b973d881d91ec8c157d025e54d1e378ffc4b

It can be reproduced from jfv_prompt_profile.json with the exact serialization used during generation:

python
import hashlib
import json

with open("jfv_prompt_profile.json", "r", encoding="utf-8") as f:
    profile = json.load(f)

profile_for_hash = dict(profile)
profile_for_hash.pop("manifest_hash_sha256", None)

payload = json.dumps(
    profile_for_hash,
    ensure_ascii=False,
    sort_keys=True,
    separators=(",", ":"),
)

manifest_hash_sha256 = hashlib.sha256(
    payload.encode("utf-8")
).hexdigest()

The few-shot manifest has its own field:

fewshot_manifest_sha256

Relationship to the Profiling Corpus

The 1,492 human texts from the historical experiment are part of the same 2,981-text corpus used to construct the stylometric profile. They are therefore not an independent human holdout relative to profile construction.

The 1,484 public human texts are a subset of those historical 1,492 records and inherit the same limitation.

This overlap limits interpretation of absolute human-to-profile distances. It does not prevent paired comparison of historical generated conditions, but users should not treat the human side as an unseen author holdout.

Results from the Original 1,492-Pair Experiment

The following evaluation results are retained for traceability to the accompanying research project. They were computed on the historical N=1,492 experiment and have not been recomputed after the eight-record public-release curation.

BGE-M3 ceiling effect

Mean similarity between the original human text and its DeepSeek draft was 0.714.

Mean similarity between each Ministral generation and its immediate DeepSeek input was:

ConditionMean BGE-M3 similarity to draft
Baseline0.914
Profile0.917
Profile + Few-Shot0.910

For all 1,492 historical pairs, the generation was at least as close to the DeepSeek draft as the corresponding human text was.

In this task structure, BGE-M3 primarily captures proximity to the immediate generated input. It should not by itself be treated as proof of preservation of named entities, numbers, factual propositions, argumentative relations, or fine-grained stance.

Length as a confounding variable

In the historical evaluation pipeline, human texts averaged approximately 342 words, DeepSeek drafts approximately 453 words, and the three Ministral conditions approximately 510–520 words under the descriptive counting convention used by that analysis.

Document length was found to confound centroid-based stylistic similarity. The final historical evaluation therefore used a regression-based length correction for the lexicosyntactic measure.

Temporal variation

In the historical negative control, surface-space discrimination differed substantially by publication period:

  • —surface AUC, 2005–2008: 0.124
  • —surface AUC, 2018–2025: 0.350

The historical 1,492-text evaluation set contained 273 texts from 2018–2025 and 376 texts from 2005–2008. The public 1,484-text subset contains 273 and 368 respectively.

The corpus also exhibits a break in several typographic conventions around 2015, affecting punctuation, spacing, and graphical organization. Surface representations are especially sensitive to these shifts.

Negative controls and metric validation

The historical negative control compares the 1,492 human texts with their thematically matched DeepSeek texts.

MetricHuman / DeepSeek AUCInterpretation
Raw surface similarity0.258Reversed orientation: DeepSeek is ranked closer to the human reference centroid
Raw lexicosyntactic similarity0.376Reversed orientation
Length-corrected lexicosyntactic residual0.603Weak discrimination, correct direction
Corrected residual, 2018–2025 only0.695Better discrimination in the centroid reference period

An AUC of 0.5 corresponds to chance-level discrimination. Values below 0.5 indicate reversed orientation; values above 0.5 indicate discrimination in the intended direction.

Only the length-corrected lexicosyntactic residual discriminated globally in the expected direction and was therefore retained as the primary stylistic metric in the historical study. On that metric, explicit profile conditioning produced a small measurable improvement over the baseline, while adding the five few-shot examples reduced part of that gain.

These historical results are included to document the research context of the files, not to claim that the same numerical values have been re-estimated for the 1,484-pair public subset.

Known Generation Artifacts

The release preserves several historical model-output artifacts rather than silently correcting them:

  • —2011-06-02_p4 in jfv_ministral_profile_no_fewshot.jsonl is entirely in English.
  • —20 records in jfv_deepseek_topic_matched.jsonl contain one or more Chinese characters or short Chinese insertions inside otherwise French text. Eight Ministral outputs also contain Chinese characters: baseline 2011-07-15_p3, 2007-05-04_p3, and 2009-04-04_p4; Profile 2007-10-18_p1, 2011-06-28_p3, 2018-11-25_p4, and 2007-05-04_p3; Profile + Few-Shot 2024-10-19_p1. In five of these eight cases, the corresponding DeepSeek draft contains no Chinese characters, so the characters were introduced during the Ministral rewrite. The baseline record 2009-04-04_p4 also contains a Cyrillic character.
  • —Four generated records contain parenthetical word-count notes in the text itself: 2012-03-15_p5 in the DeepSeek set ((453 mots)), 2011-10-29_p4 in the DeepSeek set ((Environ 420 mots)), 2014-12-27_p3 in the baseline ((478 mots)), and 2025-08-12_p3 in the Profile + Few-Shot condition ((372 mots)).

The dataset metadata retains language: fr because French is the intended and overwhelmingly dominant language of the corpus and generation task. The exceptions above are preserved as generation artifacts and should not be interpreted as separate multilingual subsets.

Personal and Third-Party Information

The source material spans twenty years of political, cultural, historical, social, and personal blog writing. Individual records may mention public figures or other named third parties.

The dataset is not intended to provide verified personal profiles of those third parties. Full newspaper republications identified during the publication audit were excluded from the public aligned release.

Intended Uses

Potential uses include research on personalized text generation, stylometric conditioning, paired prompting experiments, style-transfer evaluation, human-versus-generated text analysis, evaluation-metric validation, negative controls, content-preservation analysis, and longitudinal stylistic variation.

The dataset should not be treated as a general benchmark for French writing, as a representative sample of French speakers, or as evidence that the measured characteristics exhaustively describe an author's writing practices.

Responsible Use

The conditioning artifacts and generated records should not be used to falsely attribute model-generated text to the source author or to create deceptive representations of the source author's authorship or views. Generated outputs should be identified as model-generated when attribution could otherwise be ambiguous.

Relationship to EPICdemic

The profile and related conditioning artifacts released with this dataset were used in a version of the EPICdemic MVP.

This statement refers to the versioned artifacts included here. Later EPICdemic versions may use different profile, retrieval, generation, or evaluation artifacts.

Included Traceability Artifacts

jfv_prompt_profile.json

Exact prompt-profile artifact used for the historical profile-conditioned generations.

jfv_fewshot_manifest.json

Historical manifest documenting the five fixed few-shot examples and their selection lineage.

jfv_release_exclusions_8_voix_du_nord.json

Publication-curation manifest recording the eight aligned units removed from the public release and the reason for removal.

SHA256SUMS

Checksums for the eight release data and traceability files. README.md and SHA256SUMS itself are intentionally excluded so that the Dataset Card can be updated with the final Hugging Face repository URL without invalidating the data-file checksums.

License

The dataset is released under the Creative Commons Attribution 4.0 International (CC BY 4.0) license for material the source author and releaser are authorized to license.

Third-party quotations, names, referenced works, or other embedded third-party material remain subject to any rights that apply to that material and are not separately relicensed by this dataset.

Citation

If you use this dataset, please cite:

Vallin, Peggy. (2026). JFV French Paired Style-Conditioning Dataset (Version 1.0) [Dataset]. Harvard Dataverse. https://doi.org/10.7910/DVN/KVFDXF

Hugging Face mirror: https://huggingface.co/datasets/PeggyVallin/jfv-french-style-conditioning-dataset-v1.0

bibtex
@misc{vallin2026jfv,
  author    = {Vallin, Peggy},
  title     = {JFV French Paired Style-Conditioning Dataset},
  year      = {2026},
  publisher = {Harvard Dataverse},
  note      = {Dataset, Version 1.0},
  doi       = {10.7910/DVN/KVFDXF},
  url       = {https://doi.org/10.7910/DVN/KVFDXF}
}