GitHub Actions commited on
Commit
280001e
·
1 Parent(s): 9f67dd7

Deploy from GitHub (d1eab9b)

Browse files
Files changed (5) hide show
  1. .gitattributes +1 -1
  2. pyproject.toml +1 -1
  3. rag/feedback.py +17 -13
  4. static/index.html +1 -1
  5. uv.lock +1 -1
.gitattributes CHANGED
@@ -1,3 +1,3 @@
 
1
  data/*.json filter=lfs diff=lfs merge=lfs -text
2
  data/*.db filter=lfs diff=lfs merge=lfs -text
3
- data/*.faiss filter=lfs diff=lfs merge=lfs -text
 
1
+ data/*.faiss filter=lfs diff=lfs merge=lfs -text
2
  data/*.json filter=lfs diff=lfs merge=lfs -text
3
  data/*.db filter=lfs diff=lfs merge=lfs -text
 
pyproject.toml CHANGED
@@ -1,6 +1,6 @@
1
  [project]
2
  name = "rag-bible"
3
- version = "1.2.4"
4
  description = "French Bible RAG system with FAISS + cross-encoder reranking"
5
  requires-python = ">=3.12"
6
  dependencies = [
 
1
  [project]
2
  name = "rag-bible"
3
+ version = "1.2.5"
4
  description = "French Bible RAG system with FAISS + cross-encoder reranking"
5
  requires-python = ">=3.12"
6
  dependencies = [
rag/feedback.py CHANGED
@@ -3,6 +3,7 @@
3
  import json
4
  import logging
5
  import threading
 
6
  from datetime import UTC, datetime
7
  from pathlib import Path
8
 
@@ -11,7 +12,8 @@ logger = logging.getLogger(__name__)
11
  _lock = threading.Lock()
12
  _scheduler: threading.Timer | None = None
13
  _count = 0
14
- _seen: dict[tuple[str, ...], str] = {}
 
15
 
16
 
17
  def record_feedback(
@@ -63,22 +65,24 @@ def record_feedback(
63
  if _seen.get(dedup_key) == feedback:
64
  return
65
  _seen[dedup_key] = feedback
 
 
 
66
  elif feedback.startswith("cancel_"):
67
  _seen.pop(dedup_key, None)
68
 
69
- record = {
70
- "query": query,
71
- "book_title": book_title,
72
- "chapter": chapter,
73
- "verse": verse,
74
- "score": score,
75
- "feedback": feedback,
76
- "source": source,
77
- "session_id": session_id,
78
- "timestamp": datetime.now(UTC).isoformat(),
79
- }
80
 
81
- with _lock:
82
  buffer_path.parent.mkdir(parents=True, exist_ok=True)
83
  with open(buffer_path, "a", encoding="utf-8") as f:
84
  f.write(json.dumps(record, ensure_ascii=False) + "\n")
 
3
  import json
4
  import logging
5
  import threading
6
+ from collections import OrderedDict
7
  from datetime import UTC, datetime
8
  from pathlib import Path
9
 
 
12
  _lock = threading.Lock()
13
  _scheduler: threading.Timer | None = None
14
  _count = 0
15
+ _SEEN_MAX_SIZE = 10_000
16
+ _seen: OrderedDict[tuple[str, ...], str] = OrderedDict()
17
 
18
 
19
  def record_feedback(
 
65
  if _seen.get(dedup_key) == feedback:
66
  return
67
  _seen[dedup_key] = feedback
68
+ _seen.move_to_end(dedup_key)
69
+ if len(_seen) > _SEEN_MAX_SIZE:
70
+ _seen.popitem(last=False)
71
  elif feedback.startswith("cancel_"):
72
  _seen.pop(dedup_key, None)
73
 
74
+ record = {
75
+ "query": query,
76
+ "book_title": book_title,
77
+ "chapter": chapter,
78
+ "verse": verse,
79
+ "score": score,
80
+ "feedback": feedback,
81
+ "source": source,
82
+ "session_id": session_id,
83
+ "timestamp": datetime.now(UTC).isoformat(),
84
+ }
85
 
 
86
  buffer_path.parent.mkdir(parents=True, exist_ok=True)
87
  with open(buffer_path, "a", encoding="utf-8") as f:
88
  f.write(json.dumps(record, ensure_ascii=False) + "\n")
static/index.html CHANGED
@@ -65,7 +65,7 @@
65
  <h2 class="sidebar-title">Historique</h2>
66
  <div class="history-list"></div>
67
  <p class="history-empty">Vos recherches apparaîtront ici</p>
68
- <p class="sidebar-version">v1.2.4</p>
69
  </aside>
70
 
71
  <div class="hero-section">
 
65
  <h2 class="sidebar-title">Historique</h2>
66
  <div class="history-list"></div>
67
  <p class="history-empty">Vos recherches apparaîtront ici</p>
68
+ <p class="sidebar-version">v1.2.5</p>
69
  </aside>
70
 
71
  <div class="hero-section">
uv.lock CHANGED
@@ -1168,7 +1168,7 @@ wheels = [
1168
 
1169
  [[package]]
1170
  name = "rag-bible"
1171
- version = "1.2.2"
1172
  source = { virtual = "." }
1173
  dependencies = [
1174
  { name = "faiss-cpu" },
 
1168
 
1169
  [[package]]
1170
  name = "rag-bible"
1171
+ version = "1.2.5"
1172
  source = { virtual = "." }
1173
  dependencies = [
1174
  { name = "faiss-cpu" },