nicolasmery commited on
Commit
79a70b1
·
verified ·
1 Parent(s): 2d5c830

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +4 -5
app.py CHANGED
@@ -28,7 +28,7 @@ def embed(text):
28
  return outputs.hidden_states[-1][:,0,:].cpu().numpy()[0]
29
 
30
  # --- 3. Base documentaire pour la métallurgie ---
31
- # Remplacer par vos documents techniques
32
  docs = {
33
  "doc1": "L’acier X42 a une résistance à la traction de 415 MPa.",
34
  "doc2": "L’acier inoxydable 304 est résistant à la corrosion et à l’oxydation."
@@ -38,8 +38,8 @@ doc_embeddings = {k: embed(v) for k,v in docs.items()}
38
  def search_best_doc(question):
39
  q_emb = embed(question)
40
  def cosine(a,b): return np.dot(a,b)/(np.linalg.norm(a)*np.linalg.norm(b))
41
- best_doc = max(docs, key=lambda k: cosine(q_emb, doc_embeddings[k]))
42
- return docs[best_doc]
43
 
44
  # --- 4. Fonction de réponse avec GPT-OSS-20B ---
45
  def respond(
@@ -54,8 +54,7 @@ def respond(
54
  client = InferenceClient(token=hf_token.token, model="openai/gpt-oss-20b")
55
 
56
  # Récupérer le contexte pertinent avec SteelBERT
57
- best_doc = search_best_doc(message)
58
- context = docs[best_doc]
59
 
60
  # Construire le prompt
61
  messages = [{"role": "system", "content": system_message}]
 
28
  return outputs.hidden_states[-1][:,0,:].cpu().numpy()[0]
29
 
30
  # --- 3. Base documentaire pour la métallurgie ---
31
+ # Remplacez par vos documents techniques
32
  docs = {
33
  "doc1": "L’acier X42 a une résistance à la traction de 415 MPa.",
34
  "doc2": "L’acier inoxydable 304 est résistant à la corrosion et à l’oxydation."
 
38
  def search_best_doc(question):
39
  q_emb = embed(question)
40
  def cosine(a,b): return np.dot(a,b)/(np.linalg.norm(a)*np.linalg.norm(b))
41
+ best_key = max(docs, key=lambda k: cosine(q_emb, doc_embeddings[k]))
42
+ return docs[best_key] # retourne directement le texte du document
43
 
44
  # --- 4. Fonction de réponse avec GPT-OSS-20B ---
45
  def respond(
 
54
  client = InferenceClient(token=hf_token.token, model="openai/gpt-oss-20b")
55
 
56
  # Récupérer le contexte pertinent avec SteelBERT
57
+ context = search_best_doc(message)
 
58
 
59
  # Construire le prompt
60
  messages = [{"role": "system", "content": system_message}]