File size: 2,017 Bytes
4813e28
 
4b29c75
4813e28
 
 
5c5ac6f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4b29c75
 
 
d3ce0ee
 
4813e28
5c5ac6f
 
 
 
 
 
 
 
4813e28
5c5ac6f
4813e28
5c5ac6f
4813e28
 
 
5c5ac6f
4813e28
 
 
 
 
5c5ac6f
 
4813e28
 
 
 
 
 
5c5ac6f
f1dc858
f2b121f
5c5ac6f
 
4813e28
 
 
5c5ac6f
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
import os
import gradio as gr
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain import LLMChain, PromptTemplate
from langchain.memory import ConversationBufferMemory

safety_settings = [
  {
    "category": "HARM_CATEGORY_HARASSMENT",
    "threshold": "BLOCK_NONE"
  },
  {
    "category": "HARM_CATEGORY_HATE_SPEECH",
    "threshold": "BLOCK_NONE"
  },
  {
    "category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
    "threshold": "BLOCK_NONE"
  },
  {
    "category": "HARM_CATEGORY_DANGEROUS_CONTENT",
    "threshold": "BLOCK_NONE"
  },
]

import getpass

token=os.environ.get("TOKEN")
os.environ["GOOGLE_API_KEY"] = token

# Read the content of dikota.txt
with open("dikota.txt", "r", encoding="utf-8") as f:
    dikota_content = f.read()

template = """Utillisez les éléments de contexte suivants pour répondre à la question à la fin. Si vous ne connaissez pas la réponse,traduissez ce que vous pouvez et reecriver les autre comme ca , n'essayez pas d'inventer une réponse. Je veux que tu agisses comme un traducteur dikota. Je parle en dikota ou en francais et tu reponds en dikota en te basant sur le contexte. Je ne veux aucune explication. Juste la réponse. cest une sorte de dialogue,
    
{dikota_content}

{chat_history}

User: {user_message}

Chatbot:"""

prompt = PromptTemplate(
    input_variables=["chat_history", "user_message", "dikota_content"], template=template
)

memory = ConversationBufferMemory(memory_key="chat_history")

llm_chain = LLMChain(
    llm=ChatGoogleGenerativeAI(model="gemini-1.5-flash-lastest"),
    safety_settings=safety_settings,
    prompt=prompt,
    verbose=True,
    memory=memory,
)

def get_text_response(user_message,history):
    response = llm_chain.predict(user_message = user_message)
    
    print(user_message) 
    #return "Non abonné"
    return response 

demo = gr.ChatInterface(get_text_response)

demo.launch() #To create a public link, set `share=True` in `launch()`. To enable errors and logs, set `debug=True` in `launch()`.