Bonnes pratiques d'annotation de documents juridiques
Annotez des documents juridiques dans Potato, contrats, dépôts judiciaires et textes réglementaires, avec étiquetage de spans, extraction d'entités et déploiement auto-hébergé respectueux de la confidentialité.
Le texte juridique constitue un problème d'annotation à part entière. La structure est complexe, le vocabulaire est spécialisé, et une erreur d'étiquetage peut avoir de réelles conséquences juridiques. Ce guide explique comment bien l'annoter.
Ce qui rend l'annotation juridique difficile
Le jargon à lui seul impose de recourir à des annotateurs formés, et non à des contributeurs choisis au hasard. Les documents sont longs, les contrats s'étendant parfois sur des centaines de pages, et les sections renvoient sans cesse à d'autres sections. La précision compte plus que d'habitude, car un span imprécis peut changer le sens d'une clause. Et une grande partie de ce sens dépend du type de document et de la juridiction, si bien que le contexte n'est jamais optionnel.
Pour les mécanismes sous-jacents d'annotation de spans et de texte, consultez la documentation source.
Segmentation de documents
Découpage de documents longs
{
"id": "contract_001_section_3.2",
"text": "The Licensor grants to the Licensee a non-exclusive, non-transferable license...",
"section_number": "3.2",
"section_title": "License Grant",
"document_id": "contract_001"
}Annotation au niveau des sections
instance_display:
fields:
- key: section_title
type: text
- key: text
type: textReconnaissance d'entités juridiques
Entités spécifiques aux contrats
annotation_schemes:
- annotation_type: span
name: legal_entities
description: "Mark the parties, defined terms, dates, amounts and obligations."
labels:
- name: PARTY
color: "#FECACA"
tooltip: "Contracting parties, including Licensor, Licensee and named companies"
- name: DEFINED_TERM
color: "#FDE68A"
tooltip: "A term given a specific meaning by the definitions section"
- name: DATE
color: "#BBF7D0"
tooltip: "Dates and time periods, including notice and cure periods"
- name: MONETARY
color: "#C4B5FD"
tooltip: "Amounts, fees, penalties and caps"
- name: OBLIGATION
color: "#BFDBFE"
tooltip: "Language creating a duty, such as shall, must or agrees to"
- name: CONDITION
color: "#FED7AA"
tooltip: "Language making a duty conditional, such as if, unless or provided that"
- name: REFERENCE
color: "#E0E7FF"
tooltip: "A cross-reference to another section or document"Détection des obligations
- annotation_type: radio
name: clause_type
description: "What type of clause is this?"
labels:
- Definitions
- Grant of rights
- Consideration and payment
- Term and termination
- Representations and warranties
- Indemnification
- Limitation of liability
- Confidentiality
- Intellectual property
- Dispute resolution
- BoilerplateClassification des clauses
Types de clauses contractuelles
- annotation_type: multiselect
name: obligation_type
description: "Which kinds of obligation does this clause create?"
labels:
- Performance
- Payment
- Restriction
- Conditional obligation
- Warranty
- annotation_type: likert
name: risk
description: "How much risk does this clause carry for the receiving party?"
size: 5
min_label: "Low risk"
max_label: "High risk"
- annotation_type: text
name: risk_notes
description: "Explain the risk factors you identified."
rows: 4
min_chars: 20Évaluation des risques
annotation_schemes:
- annotation_type: span
name: case_entities
description: "Mark case metadata and the parties to the proceeding."
labels:
- name: CASE_NUMBER
tooltip: "The docket or case identifier"
- name: COURT
tooltip: "Court name and jurisdiction"
- name: JUDGE
- name: PLAINTIFF
- name: DEFENDANT
- name: ATTORNEY
- name: LEGAL_CITATION
tooltip: "Citations to cases, statutes and regulations"
- name: RULING
- annotation_type: span
name: argument_structure
description: "Mark the claim, its support, and the court's conclusion."
labels:
- name: CLAIM
color: "#FECACA"
- name: PREMISE
color: "#BBF7D0"
- name: EVIDENCE
color: "#BFDBFE"
- name: REBUTTAL
color: "#FED7AA"
- name: CONCLUSION
color: "#E0E7FF"Annotation de documents judiciaires
Extraction des informations de l'affaire
keyword,label,schema,color
shall,OBLIGATION,legal_entities,#FEE2E2
must,OBLIGATION,legal_entities,#FEE2E2
agrees to,OBLIGATION,legal_entities,#FEE2E2
may,permission,legal_entities,#D1FAE5
unless,CONDITION,legal_entities,#DBEAFE
provided that,CONDITION,legal_entities,#DBEAFE
notwithstand*,CONDITION,legal_entities,#DBEAFE
Structure de l'argumentation
keyword_highlights_file: data/legal_terms.csvSurlignage des termes juridiques
keyword_highlight_settings:
keyword_probability: 0.8 # show 80% of matched keywords
random_word_probability: 0.05 # highlight ~5% of other words as distractorsContrôle qualité pour le juridique
num_annotators_per_item: 3
gold_standards:
enabled: true
items_file: data/gold_clauses.json
mode: mixed
frequency: 20
accuracy:
min_threshold: 0.85
evaluation_count: 10
feedback:
show_correct_answer: true
show_explanation: trueConfiguration complète d'annotation juridique
annotation_task_name: "Contract Clause Analysis"
task_description: "Classify contract clauses and mark the entities they refer to."
data_files:
- data/contract_sections.json
item_properties:
id_key: id
text_key: text
instance_display:
fields:
- key: section_title
type: text
- key: text
type: text
annotation_schemes:
- annotation_type: radio
name: clause_type
description: "What type of clause is this?"
labels:
- Grant of rights
- Consideration and payment
- Term and termination
- Indemnification
- Limitation of liability
- Confidentiality
- Other
- annotation_type: span
name: legal_entities
description: "Mark the parties, defined terms, dates, amounts and obligations."
labels:
- name: PARTY
color: "#FECACA"
- name: DEFINED_TERM
color: "#FDE68A"
- name: MONETARY
color: "#C4B5FD"
- name: DATE
color: "#BBF7D0"
- name: OBLIGATION
color: "#BFDBFE"
- annotation_type: likert
name: risk
description: "How much risk does this clause carry for the receiving party?"
size: 5
min_label: "Low risk"
max_label: "High risk"
- annotation_type: text
name: issues
description: "Note any unusual or problematic language."
rows: 4
min_chars: 20
num_annotators_per_item: 3
gold_standards:
enabled: true
items_file: data/gold_clauses.json
mode: mixed
frequency: 20
accuracy:
min_threshold: 0.85
evaluation_count: 10
agreement_metrics:
enabled: true
min_overlap: 2
output_annotation_dir: annotation_outputRédiger les consignes pour les annotateurs
De bonnes consignes pour une tâche juridique précisent la portée (quels documents, quelles juridictions) et incluent un glossaire afin que les annotateurs interprètent les termes de la même façon que vous. Soyez explicite sur le langage ambigu et sur les cas où une référence croisée doit être annotée plutôt qu'ignorée. Et indiquez ce qui constitue une délimitation de span correcte, car « à peu près » suffit rarement dans ce domaine.
Bonnes pratiques
Faites appel à des annotateurs qui connaissent réellement le domaine, car l'étiquetage juridique ne fonctionne pas sans cela. Découpez les documents longs en sections que l'on peut garder à l'esprit. Surlignez le langage juridique qui pèse, pour qu'il ne soit pas survolé. Maintenez une redondance élevée, car le coût d'une erreur est élevé. Ajoutez une couche de révision experte où des avocats traitent les cas limites. Définissez chaque étiquette avec précision. Et donnez aux annotateurs la structure environnante et les sections connexes, car une clause isolée peut induire en erreur.
Documentation complète sur Schémas d'annotation.