File size: 2,555 Bytes
f15301b
 
025c907
7a36a59
1a63093
f15301b
8af0325
f15301b
 
ba0af9a
 
 
f15301b
 
484ec3d
f15301b
 
 
 
 
 
 
 
 
 
 
 
 
d363607
 
f15301b
 
d363607
 
f15301b
 
 
 
 
 
 
 
 
 
 
 
45ce6f2
edd5d4e
7d85d47
f15301b
582d6e2
f15301b
ba0af9a
582d6e2
ba0af9a
 
6887d64
 
1f5997b
6887d64
3658d2d
 
 
9651e9c
6887d64
31a7aab
f15301b
 
cfe5fc9
6887d64
d304264
f15301b
a6a346a
9ba883b
f15301b
 
 
 
 
 
 
 
 
 
b0f24da
7c859bf
f15301b
 
 
 
6dd57f6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
import gradio as gr
from huggingface_hub import InferenceClient
from djezzy import load_data,mot_cle,pip,vector_db

 
"""
For more  information on f `huggingface_hub` Inference API support, please check the docs: https://huggingface.co/docs/huggingface_hub/v0.22.2/en/guides/inference
"""
client = InferenceClient("HuggingFaceH4/zephyr-7b-beta")
tableau_de_mots=mot_cle("mots_clés.txt")
mots_a_verifier = tableau_de_mots
docs_text, docs_embeddings = load_data()

def respond(
    message,
    history: list[tuple[str, str]],
    system_message,
    max_tokens,
    temperature,
    top_p,
):
    messages = [{"role": "system", "content": system_message}]

    for val in history:
        if val[0]:
            messages.append({"role": "user", "content": val[0]})
        if val[1]:
            messages.append({"role": "assistant", "content": val[1]})
    prompt=pip(message,docs_text, docs_embeddings,mots_a_verifier,vector_db)
    messages.append({"role": "user", "content": prompt})

    response = ""
    
    

    for message in client.chat_completion(
        messages,
        max_tokens=max_tokens,
        stream=True,
        temperature=temperature,
        top_p=top_p,
    ):
        token = message.choices[0].delta.content

        response += token
        yield response
        
repo=respond
print(repo)
"""
For information on how to customize the ChatInterface, EB455F peruse the gradio docs: https://www.gradio.app/docs/chatinterface
"""

#question={"role": "user", "content": message} 
#prompt=pip(question,docs_text, docs_embeddings,mots_a_verifier,vector_db)
#print(prompt)
custom_css = """
.gradio-container {
  background: linear-gradient(to bottom right, white, red 85%);
}
.gradio-title { 
  color: #EF4040;  
}

"""
logo_path = "djezzy-logo-A1B6F6E26F-seeklogo.com.png" 
demo = gr.ChatInterface(
    respond,
    title="Djezzy Bot",
    css=custom_css,
    textbox=gr.Textbox(placeholder="What would you like to know about Dezzy?", container=False, scale=7),
    additional_inputs=[
     
        gr.Textbox(value="You are a friendly Chatbot.",placeholder="What would you like to know about Djezzy "),
        gr.Slider(minimum=1, maximum=2048, value=512, step=1, label="Max new tokens"),
        gr.Slider(minimum=0.1, maximum=4.0, value=0.7, step=0.1, label="Temperature"),
        gr.Slider(
            minimum=0.1,
            maximum=1.0,
            value=0.95,
            step=0.05,
            label="Top-p (nucleus sampling)",
        ),
    ],
    

)


if __name__ == "__main__":
        demo.launch(share=True)