datacipen commited on
Commit
5f181ac
·
verified ·
1 Parent(s): 3c6907b

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +30 -12
main.py CHANGED
@@ -55,21 +55,39 @@ async def set_starters():
55
  @cl.on_message
56
  async def on_message(message: cl.Message):
57
  await cl.Message(f"> SURVEYIA").send()
58
- model = await LLM()
59
 
60
- agent = create_csv_agent(
61
- model,
62
- "./public/ExpeCFA_LP_CAA.csv",
63
- verbose=True,
64
- allow_dangerous_code=True,
65
- agent_type=AgentType.ZERO_SHOT_REACT_DESCRIPTION
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
66
  )
67
 
68
  msg = cl.Message(content="")
 
 
69
 
70
- cb = cl.AsyncLangchainCallbackHandler()
71
- res = await agent.acall("Réponds en langue française à la question suivante :\n" + message.content + "\nDétaille la réponse en faisant une analyse complète en 2000 mots minimum.", callbacks=[cb])
72
  #res = await agent.ainvoke("D'après les informations fournies, réponds en langue française à la question suivante :\n" + message.content + "\nDétaille la réponse en faisant une analyse complète jusqu'à 2000 mots, si cela est nécessaire.")
73
- answer = res['output']
74
- print(res)
75
- await cl.Message(content=GoogleTranslator(source='auto', target='fr').translate(answer)).send()
 
55
  @cl.on_message
56
  async def on_message(message: cl.Message):
57
  await cl.Message(f"> SURVEYIA").send()
58
+ model = await LLMistral()
59
 
60
+ df = pd.read_csv("./public/ExpeCFA_LP_CAA.csv")
61
+
62
+ pandas_ai = PandasAI(model, enable_cache=False)
63
+ prompt = ChatPromptTemplate.from_messages(
64
+ [
65
+ (
66
+ "system",
67
+ "Answer the users question about some data. A data scientist will run some code and the results will be returned to you to use in your answer",
68
+ ),
69
+ ("human", "Question: {input}"),
70
+ ("human", "Data Scientist Result: {result}"),
71
+ ]
72
+ )
73
+
74
+ chain = (
75
+ {
76
+ "input": lambda x: x["input_question"],
77
+ "result": lambda x: pandas_ai(df, prompt=x["input_question"]),
78
+ }
79
+ | prompt
80
+ | model
81
+ | StrOutputParser()
82
  )
83
 
84
  msg = cl.Message(content="")
85
+
86
+
87
 
88
+ #cb = cl.AsyncLangchainCallbackHandler()
89
+ #res = await agent.acall("Réponds en langue française à la question suivante :\n" + message.content + "\nDétaille la réponse en faisant une analyse complète en 2000 mots minimum.", callbacks=[cb])
90
  #res = await agent.ainvoke("D'après les informations fournies, réponds en langue française à la question suivante :\n" + message.content + "\nDétaille la réponse en faisant une analyse complète jusqu'à 2000 mots, si cela est nécessaire.")
91
+ #answer = res['output']
92
+ #print(res)
93
+ #await cl.Message(content=GoogleTranslator(source='auto', target='fr').translate(answer)).send()