Add answer C'est quoi un viol
Browse files
app.py
CHANGED
@@ -28,8 +28,55 @@ def generate(message: str, chat_history: list[dict]) -> Iterator[str]:
|
|
28 |
de génération (max_new_tokens, température, etc.) sont
|
29 |
fixés en dur.
|
30 |
"""
|
31 |
-
#
|
32 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
fixed_response = """Le consentement, pour exister, doit passer par :
|
34 |
|
35 |
**Le questionnement de soi-même** : il semble nécessaire de s'intéresser à ce que l’on veut précisément et ce que l’on ne veut pas. Savoir clairement ce que l’on veut faire permet d’être en capacité de le dire à l’autre à haute voix.
|
@@ -44,20 +91,19 @@ Le respect de son corps et du corps de l’autre, ainsi que de ses envies : fair
|
|
44 |
<p>Billy et Alex s’embrassent. Alex glisse ses mains sous le pull de Billy. Mais Billy n’est pas sûr d’en avoir envie et se sent mal à l’aise. Billy a l’impression d’être touché sans son aval. Alex aurait dû lui demander “Est-ce que je peux ?” ou “Est-ce que tu en as envie ?”</p>
|
45 |
<p>Billy arrête d’embrasser Alex et lui dit “J’ai envie de toi, mais je veux aller à mon rythme.” Cela ne veut pas dire que Billy refusera pour toujours tout contact avec Alex. Dans un monde normal, Billy et Alex se demandent à chaque progression de leur rapport s’ils ont envie.</p>
|
46 |
|
47 |
-
|
48 |
-
|
49 |
"""
|
50 |
yield fixed_response
|
51 |
return
|
52 |
|
53 |
-
#
|
54 |
max_new_tokens = 1024
|
55 |
temperature = 0.6
|
56 |
top_p = 0.9
|
57 |
top_k = 50
|
58 |
repetition_penalty = 1.2
|
59 |
|
60 |
-
# Prépare la conversation
|
61 |
conversation = [*chat_history, {"role": "user", "content": message}]
|
62 |
input_ids = tokenizer.apply_chat_template(conversation, return_tensors="pt")
|
63 |
|
@@ -87,18 +133,17 @@ Le respect de son corps et du corps de l’autre, ainsi que de ses envies : fair
|
|
87 |
yield "".join(outputs)
|
88 |
|
89 |
|
90 |
-
#
|
91 |
demo = gr.ChatInterface(
|
92 |
fn=generate,
|
93 |
stop_btn=None,
|
94 |
examples=[
|
|
|
95 |
["C’est quoi le consentement ? Comment savoir si ma copine a envie de moi ?"],
|
96 |
["C’est quoi une agression sexuelle ?"],
|
97 |
-
["C’est quoi un viol ?"],
|
98 |
["C’est quoi un attouchement ?"],
|
99 |
["C’est quoi un harcèlement sexuel ?"],
|
100 |
["Est-ce illégal de visionner du porno ?"],
|
101 |
-
["C’est quoi un harcèlement sexuel ?"],
|
102 |
["Mon copain me demande un nude, dois-je le faire ?"],
|
103 |
["Mon ancien copain me menace de poster des photos de moi nue sur internet, que faire ?"],
|
104 |
["Que puis-je faire si un membre de ma famille me touche d’une manière bizarre, mais que j’ai peur de parler ou de ne pas être cru ?"],
|
|
|
28 |
de génération (max_new_tokens, température, etc.) sont
|
29 |
fixés en dur.
|
30 |
"""
|
31 |
+
# On convertit la question en minuscules pour la comparer plus facilement
|
32 |
+
lower_msg = message.strip().lower()
|
33 |
+
|
34 |
+
# Réponse fixe pour "C'est quoi un viol ?"
|
35 |
+
if lower_msg == "c’est quoi un viol ?" or lower_msg == "c'est quoi un viol ?":
|
36 |
+
fixed_response = """
|
37 |
+
<h2 style="text-align: center;">Un viol</h2>
|
38 |
+
<p>Le viol est un crime <br/>
|
39 |
+
(donc une infraction très grave punie d'une peine d'emprisonnement)</p>
|
40 |
+
|
41 |
+
<p>Le viol se définit comme :</p>
|
42 |
+
<ul>
|
43 |
+
<li>Tout acte de pénétration sexuelle commis sur la personne d’autrui ou sur soi</li>
|
44 |
+
<li>Toute pratique sexuelle mettant en contact la bouche d’un partenaire et le sexe d’un autre</li>
|
45 |
+
</ul>
|
46 |
+
|
47 |
+
<p style="text-align: center;">OU</p>
|
48 |
+
|
49 |
+
<p><strong>SOIT entre</strong> :</p>
|
50 |
+
<ul>
|
51 |
+
<li>Un majeur (18 ans ou +) et un mineur (moins de 18 ans)</li>
|
52 |
+
<li>Avec une différence d’âge importante, par exemple</li>
|
53 |
+
</ul>
|
54 |
+
|
55 |
+
<p style="text-align: center;">OU</p>
|
56 |
+
|
57 |
+
<p><strong>SOIT avec</strong> :</p>
|
58 |
+
<ul>
|
59 |
+
<li>Une menace (ex : chantage)</li>
|
60 |
+
<li>Une contrainte (ex : pression physique)</li>
|
61 |
+
<li>Une surprise (ex : ton partenaire dort)</li>
|
62 |
+
</ul>
|
63 |
+
|
64 |
+
<p><strong>Ainsi, le viol peut être commis sur</strong> :</p>
|
65 |
+
<ul>
|
66 |
+
<li>La personne qui pénètre</li>
|
67 |
+
<li>La personne qui est pénétrée</li>
|
68 |
+
<li>La personne qui n’a pas consenti ou ne consent plus</li>
|
69 |
+
</ul>
|
70 |
+
|
71 |
+
<p style="text-align: center;"><em>Qu’est-ce que je fais si j’ai été violé(e) ?</em></p>
|
72 |
+
<p>Retourne au menu principal et clique sur le nuage « j’ai besoin de ton aide » pour plus d’informations.</p>
|
73 |
+
<p>Tu peux aussi te référer à la législation : Articles 222-22 et suivants du Code pénal.</p>
|
74 |
+
"""
|
75 |
+
yield fixed_response
|
76 |
+
return
|
77 |
+
|
78 |
+
# (Exemple) Réponse fixe pour "C'est quoi le consentement ? Comment savoir si ma copine a envie de moi ?"
|
79 |
+
if lower_msg == "c’est quoi le consentement ? comment savoir si ma copine a envie de moi ?":
|
80 |
fixed_response = """Le consentement, pour exister, doit passer par :
|
81 |
|
82 |
**Le questionnement de soi-même** : il semble nécessaire de s'intéresser à ce que l’on veut précisément et ce que l’on ne veut pas. Savoir clairement ce que l’on veut faire permet d’être en capacité de le dire à l’autre à haute voix.
|
|
|
91 |
<p>Billy et Alex s’embrassent. Alex glisse ses mains sous le pull de Billy. Mais Billy n’est pas sûr d’en avoir envie et se sent mal à l’aise. Billy a l’impression d’être touché sans son aval. Alex aurait dû lui demander “Est-ce que je peux ?” ou “Est-ce que tu en as envie ?”</p>
|
92 |
<p>Billy arrête d’embrasser Alex et lui dit “J’ai envie de toi, mais je veux aller à mon rythme.” Cela ne veut pas dire que Billy refusera pour toujours tout contact avec Alex. Dans un monde normal, Billy et Alex se demandent à chaque progression de leur rapport s’ils ont envie.</p>
|
93 |
|
94 |
+
<p style="text-align: center;">👉 *Comment s’assurer de son consentement ?*</p>
|
95 |
+
<p>Retournes sur la page principale et cliques sur le nuage correspondant pour voir toutes les façons de faire. Choisis ce qui te convient et ce qui te rend à l’aise 😌</p>
|
96 |
"""
|
97 |
yield fixed_response
|
98 |
return
|
99 |
|
100 |
+
# Sinon, génération classique
|
101 |
max_new_tokens = 1024
|
102 |
temperature = 0.6
|
103 |
top_p = 0.9
|
104 |
top_k = 50
|
105 |
repetition_penalty = 1.2
|
106 |
|
|
|
107 |
conversation = [*chat_history, {"role": "user", "content": message}]
|
108 |
input_ids = tokenizer.apply_chat_template(conversation, return_tensors="pt")
|
109 |
|
|
|
133 |
yield "".join(outputs)
|
134 |
|
135 |
|
136 |
+
# Interface Gradio
|
137 |
demo = gr.ChatInterface(
|
138 |
fn=generate,
|
139 |
stop_btn=None,
|
140 |
examples=[
|
141 |
+
["C’est quoi un viol ?"],
|
142 |
["C’est quoi le consentement ? Comment savoir si ma copine a envie de moi ?"],
|
143 |
["C’est quoi une agression sexuelle ?"],
|
|
|
144 |
["C’est quoi un attouchement ?"],
|
145 |
["C’est quoi un harcèlement sexuel ?"],
|
146 |
["Est-ce illégal de visionner du porno ?"],
|
|
|
147 |
["Mon copain me demande un nude, dois-je le faire ?"],
|
148 |
["Mon ancien copain me menace de poster des photos de moi nue sur internet, que faire ?"],
|
149 |
["Que puis-je faire si un membre de ma famille me touche d’une manière bizarre, mais que j’ai peur de parler ou de ne pas être cru ?"],
|