Baptiste Gaultier commited on
Commit
564ea08
·
1 Parent(s): 4e5b8b9

Roll back to Llama 3

Browse files
Files changed (1) hide show
  1. chatbot_as_block.py +44 -0
chatbot_as_block.py ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from huggingface_hub import InferenceClient
3
+ import os
4
+
5
+ HF_TOKEN = os.getenv('HF_TOKEN')
6
+
7
+ client = InferenceClient("meta-llama/Meta-Llama-3-8B-Instruct", token=HF_TOKEN)
8
+
9
+ def respond(
10
+ message,
11
+ history: list[tuple[str, str]],
12
+ code: str,
13
+ ):
14
+ messages = [{"role": "system", "content": "Tu es un assistant appelé Fabrice"}]
15
+
16
+ print(code)
17
+
18
+ for val in history:
19
+ if val[0]:
20
+ messages.append({"role": "user", "content": val[0] + ' \n' + code})
21
+ if val[1]:
22
+ messages.append({"role": "assistant", "content": val[1]})
23
+
24
+ messages.append({"role": "user", "content": message + ' \n' + code})
25
+
26
+ response = ""
27
+
28
+ for message in client.chat_completion(
29
+ messages,
30
+ max_tokens=512,
31
+ stream=True,
32
+ temperature=0.7,
33
+ top_p=0.4,
34
+ ):
35
+ token = message.choices[0].delta.content
36
+
37
+ response += token
38
+ yield response
39
+
40
+ with gr.Blocks(analytics_enabled=True) as demo:
41
+ code = gr.Code(language="python")
42
+ gr.ChatInterface(respond, additional_inputs=code)
43
+
44
+ demo.launch()