ElouarnLC commited on
Commit
c0d79c0
1 Parent(s): c11aeed

add dynamic context

Browse files
Files changed (2) hide show
  1. README.md +2 -2
  2. app.py +16 -1
README.md CHANGED
@@ -3,8 +3,8 @@ title: Montaillou
3
  emoji: ⛰️
4
  colorFrom: green
5
  colorTo: gray
6
- sdk: gradio
7
- sdk_version: 4.19.2
8
  app_file: app.py
9
  models:
10
  - mistralai/Mixtral-8x7B-v0.1
 
3
  emoji: ⛰️
4
  colorFrom: green
5
  colorTo: gray
6
+ # sdk: gradio
7
+ # sdk_version: 4.19.2
8
  app_file: app.py
9
  models:
10
  - mistralai/Mixtral-8x7B-v0.1
app.py CHANGED
@@ -11,7 +11,7 @@ global_iteration = 0
11
 
12
  # Variable globale pour stocker le contexte
13
  global_context = {
14
- "static_context": "Tu es le gérant d'une taverne dans le village de Montaillou au 14ème siècle dans l'univers des cathares dans les Pyrénées. Tu ne parles qu'en français. Tu es rustre mais accueillant, à moins que ton interlocuteur ne soit catholique ou possède une influence comme un noble. Tu ne sors jamais de ton contexte époque et tes connaissances se limitent à ta situation sociale et à ton époque. Tu dois être immersif et cohérent pour la personne qui va te parler. Tu dois cacher ton implication dans le meurtre seulement si on te pose des questions à ce sujet. Prends toujours en compte l'historique de la conversation. Sois toujours concis et vise une longueur de réponse comprise entre 50 et 200 caractères (espaces compris) pour les réponses courtes et simples, et entre 200 et 500 caractères pour les réponses plus détaillées et complexes.",
15
  "dynamic_context": "",
16
  "sensitive_info_filter": [
17
  "meurtre",
@@ -29,6 +29,19 @@ context_input = gr.Textbox(
29
  )
30
 
31
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32
  def filter_sensitive_info(text):
33
  for word in global_context["sensitive_info_filter"]:
34
  if word in text.lower():
@@ -85,6 +98,8 @@ def generate(
85
  seed=42,
86
  )
87
 
 
 
88
  formatted_prompt = format_prompt(prompt, history)
89
  global global_iteration
90
  global_iteration += 1
 
11
 
12
  # Variable globale pour stocker le contexte
13
  global_context = {
14
+ "static_context": "Tu es le gérant d'une taverne dans le village de Montaillou au 14ème siècle dans l'univers des cathares dans les Pyrénées. Tu ne parles qu'en français. Tu es rustre mais accueillant, à moins que ton interlocuteur ne soit catholique ou possède une influence comme un noble. Tu ne sors jamais de ton contexte époque et tes connaissances se limitent à ta situation sociale et à ton époque. Tu dois être immersif et cohérent pour la personne qui va te parler. Prends toujours en compte l'historique de la conversation. Sois toujours concis et vise une longueur de réponse comprise entre 50 et 200 caractères (espaces compris) pour les réponses courtes et simples, et entre 200 et 500 caractères pour les réponses plus détaillées et complexes.",
15
  "dynamic_context": "",
16
  "sensitive_info_filter": [
17
  "meurtre",
 
29
  )
30
 
31
 
32
+ def update_dynamic_context(user_input):
33
+ global global_context
34
+
35
+ keywords = {
36
+ "meutre": "Un meutre a été mentionné. Tu dois cacher ton implication dans le meurtre seulement si on te pose des questions à ce sujet.",
37
+ }
38
+
39
+ for keyword in keywords:
40
+ if keyword in user_input.lower():
41
+ global_context["dynamic_context"] += f" {keywords[keyword]}"
42
+ break
43
+
44
+
45
  def filter_sensitive_info(text):
46
  for word in global_context["sensitive_info_filter"]:
47
  if word in text.lower():
 
98
  seed=42,
99
  )
100
 
101
+ update_dynamic_context(prompt)
102
+
103
  formatted_prompt = format_prompt(prompt, history)
104
  global global_iteration
105
  global_iteration += 1