datacipen commited on
Commit
30f4ce1
1 Parent(s): ab79a5f

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +26 -26
main.py CHANGED
@@ -62,16 +62,16 @@ async def start():
62
  cl.Text(content=contentPrompts, name=listPrompts_name, display="side")
63
  )
64
  await cl.Message(content="📚 " + listPrompts_name, elements=prompt_elements).send()
65
- settings = await cl.ChatSettings(
66
- [
67
- Select(
68
- id="Model",
69
- label="Publications de recherche",
70
- values=["---", "HAL", "Persée"],
71
- initial_index=0,
72
- ),
73
- ]
74
- ).send()
75
 
76
  cl.user_session.set("memory", ConversationBufferMemory(return_messages=True))
77
  memory = cl.user_session.get("memory")
@@ -89,27 +89,14 @@ async def start():
89
  repo_id=repo_id, max_new_tokens=8000, temperature=1.0, task="text2text-generation", streaming=True
90
  )
91
 
92
- os.environ['PINECONE_API_KEY'] = os.environ['PINECONE_API_KEY']
93
- embeddings = HuggingFaceEmbeddings()
94
- index_name = "all-venus"
95
- pc = Pinecone(
96
- api_key=os.environ['PINECONE_API_KEY']
97
- )
98
- index = pc.Index(index_name)
99
- xq = embeddings.embed_query(message.content)
100
- xc = index.query(vector=xq, filter={"categorie": {"$eq": "bibliographie-OPP-DGDIN"}},top_k=150, include_metadata=True)
101
- context_p = ""
102
- for result in xc['matches']:
103
- context_p = context_p + result['metadata']['text']
104
-
105
  prompt = ChatPromptTemplate.from_messages(
106
  [
107
  (
108
  "system",
109
- f"Contexte : Vous êtes un chercheur de l'enseignement supérieur et vous êtes doué pour faire des analyses d'articles de recherche sur les thématiques liées à la pédagogie. En fonction des informations suivantes et du contexte suivant seulement et strictement. Contexte : {context_p}, réponds à la question suivante de la manière la plus pertinente, la plus exhaustive et la plus détaillée possible. ",
110
  ),
111
  MessagesPlaceholder(variable_name="history"),
112
- ("human", "{question}, dans le contexte fourni."),
113
  ]
114
  )
115
  runnable = (
@@ -123,11 +110,24 @@ async def start():
123
 
124
  @cl.on_message
125
  async def main(message: cl.Message):
 
 
 
 
 
 
 
 
 
 
 
 
 
126
  memory = cl.user_session.get("memory")
127
  runnable = cl.user_session.get("runnable")
128
 
129
  msg = cl.Message(author="Assistant Reviewstream",content="")
130
- async for chunk in runnable.astream({"question": message.content},
131
  config=RunnableConfig(callbacks=[cl.AsyncLangchainCallbackHandler(stream_final_answer=True)])):
132
  await msg.stream_token(chunk)
133
 
 
62
  cl.Text(content=contentPrompts, name=listPrompts_name, display="side")
63
  )
64
  await cl.Message(content="📚 " + listPrompts_name, elements=prompt_elements).send()
65
+ #settings = await cl.ChatSettings(
66
+ # [
67
+ # Select(
68
+ # id="Model",
69
+ # label="Publications de recherche",
70
+ # values=["---", "HAL", "Persée"],
71
+ # initial_index=0,
72
+ # ),
73
+ # ]
74
+ #).send()
75
 
76
  cl.user_session.set("memory", ConversationBufferMemory(return_messages=True))
77
  memory = cl.user_session.get("memory")
 
89
  repo_id=repo_id, max_new_tokens=8000, temperature=1.0, task="text2text-generation", streaming=True
90
  )
91
 
 
 
 
 
 
 
 
 
 
 
 
 
 
92
  prompt = ChatPromptTemplate.from_messages(
93
  [
94
  (
95
  "system",
96
+ f"Contexte : Vous êtes un chercheur de l'enseignement supérieur et vous êtes doué pour faire des analyses d'articles de recherche sur les thématiques liées à la pédagogie. En fonction des informations suivantes et du contexte suivant seulement et strictement.",
97
  ),
98
  MessagesPlaceholder(variable_name="history"),
99
+ ("human", "Contexte : {context}, réponds à la question suivante de la manière la plus pertinente, la plus exhaustive et la plus détaillée possible. {question}."),
100
  ]
101
  )
102
  runnable = (
 
110
 
111
  @cl.on_message
112
  async def main(message: cl.Message):
113
+ os.environ['PINECONE_API_KEY'] = os.environ['PINECONE_API_KEY']
114
+ embeddings = HuggingFaceEmbeddings()
115
+ index_name = "all-venus"
116
+ pc = Pinecone(
117
+ api_key=os.environ['PINECONE_API_KEY']
118
+ )
119
+ index = pc.Index(index_name)
120
+ xq = embeddings.embed_query(message.content)
121
+ xc = index.query(vector=xq, filter={"categorie": {"$eq": "bibliographie-OPP-DGDIN"}},top_k=150, include_metadata=True)
122
+ context_p = ""
123
+ for result in xc['matches']:
124
+ context_p = context_p + result['metadata']['text']
125
+
126
  memory = cl.user_session.get("memory")
127
  runnable = cl.user_session.get("runnable")
128
 
129
  msg = cl.Message(author="Assistant Reviewstream",content="")
130
+ async for chunk in runnable.astream({"question": message.content, "context":context_p},
131
  config=RunnableConfig(callbacks=[cl.AsyncLangchainCallbackHandler(stream_final_answer=True)])):
132
  await msg.stream_token(chunk)
133