alex-abb commited on
Commit
ce10f9a
1 Parent(s): 203b12e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +39 -36
app.py CHANGED
@@ -1,44 +1,47 @@
1
- import gradio as gr
 
 
2
  import requests
3
- import os
4
  import spaces
5
 
 
 
6
 
7
  API_URL = "https://api-inference.huggingface.co/models/meta-llama/Meta-Llama-3-8B-Instruct"
8
- api_token = os.environ.get("TOKEN")
9
  headers = {"Authorization": f"Bearer {api_token}"}
10
  @spaces.GPU
 
11
  def query(payload):
12
- response = requests.post(API_URL, headers=headers, json=payload)
13
- return response.json()
14
-
15
- def generate_response(prompt):
16
- payload = {
17
- "inputs": prompt,
18
- "parameters": {
19
- "max_new_tokens": 2000,
20
- "temperature": 0.7,
21
- "top_p": 0.95,
22
- "do_sample": True
23
- }
24
- }
25
-
26
- response = query(payload)
27
-
28
- if isinstance(response, list) and len(response) > 0:
29
- return response[0].get('generated_text', '')
30
- elif isinstance(response, dict) and 'generated_text' in response:
31
- return response['generated_text']
32
- return "Désolé, je n'ai pas pu générer de réponse."
33
-
34
- def chatbot(message, history):
35
- response = generate_response(message)
36
- return response
37
-
38
- iface = gr.ChatInterface(
39
- fn=chatbot,
40
- title="Chatbot Meta-Llama-3-8B-Instruct",
41
- description="Interagissez avec le modèle Meta-Llama-3-8B-Instruct."
42
- )
43
-
44
- iface.launch()
 
1
+
2
+ import torch
3
+ import os
4
  import requests
 
5
  import spaces
6
 
7
+ api_token = os.environ.get("TOKEN")
8
+
9
 
10
  API_URL = "https://api-inference.huggingface.co/models/meta-llama/Meta-Llama-3-8B-Instruct"
 
11
  headers = {"Authorization": f"Bearer {api_token}"}
12
  @spaces.GPU
13
+
14
  def query(payload):
15
+ response = requests.post(API_URL, headers=headers, json=payload)
16
+ return response.json()
17
+
18
+ output = query({
19
+ "inputs": " test ",
20
+ })
21
+ def analyze_sentiment(text):
22
+ # Construire le prompt
23
+ prompt = f"""Tu es un analyseur de sentiment. Ton rôle est d'évaluer le sentiment général du texte fourni. Réponds uniquement par 'positif' ou 'négatif'. N'ajoute aucune explication. Voici le texte à analyser :
24
+
25
+ {text}
26
+
27
+ Sentiment :"""
28
+
29
+ # Tokenizer le prompt
30
+ inputs = prompt
31
+
32
+ # Générer la réponse
33
+ with torch.no_grad():
34
+ outputs = headers.generate(
35
+ **inputs,
36
+ max_new_tokens=1,
37
+ num_return_sequences=1,
38
+ temperature=0.1,
39
+ top_p=0.9, # Ajuster le top_p pour contrôler la diversité
40
+ )
41
+
42
+ # Décoder et retourner la réponse
43
+ response = outputs[0]
44
+ return response.split("Sentiment :")[-1].strip()
45
+
46
+
47
+