Spaces:
Sleeping
Sleeping
Update main.py
Browse files
main.py
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
|
|
|
|
|
| 1 |
from langchain.prompts import ChatPromptTemplate, MessagesPlaceholder
|
| 2 |
from langchain.memory import ChatMessageHistory, ConversationBufferMemory
|
| 3 |
from langchain.schema import StrOutputParser
|
|
@@ -20,7 +22,7 @@ def library():
|
|
| 20 |
return "Exemple de requêtes sur les données des emplois'.\n\nQ1 : donne les 10 métiers principaux. Génère le résultat dans un tableau avec les compétences représentatives correspondant à chaque emploi.\nQ2 : donne les 10 compétences principales. Génère le résultat dans un tableau avec les emplois représentatifs correspondant à chaque compétence.\nQ3 : donne les 10 compétences principales. Génère le résultat dans un tableau avec les niveaux de qualification représentatifs correspondant à chaque compétence.\nQ4 : donne les 10 compétences principales. Génère le résultat dans un tableau avec les salaires représentatifs correspondant à chaque compétence.\nQ5 : donne les 10 compétences principales. Génère le résultat dans un tableau avec les contrats représentatifs correspondant à chaque compétence.\nQ6 : donne les 10 contrats principaux. Génère le résultat dans un tableau avec les emplois représentatifs correspondant à chaque contrat."
|
| 21 |
@cl.author_rename
|
| 22 |
def rename(orig_author: str):
|
| 23 |
-
rename_dict = {"AgentExecutor": "Agent conversationnel", "Error": "Réponse de l'assistant", "DatapccSkillStream": "Copilot", "load_memory_variables": "Historique de conversation 💬", "Retriever": "Agent conversationnel", "StuffDocumentsChain": "Chaîne de documents", "LLMChain": "Agent", "HuggingFaceEndpoint": "Réponse de
|
| 24 |
return rename_dict.get(orig_author, orig_author)
|
| 25 |
|
| 26 |
@cl.on_chat_start
|
|
@@ -59,8 +61,14 @@ async def on_chat_start():
|
|
| 59 |
content=f"Vous pouvez utiliser le COPILOT pour répondre à vos questions sur : \"{selectRome.get('label')}\", Codes ROME : \"{selectRome.get('value')}\"",
|
| 60 |
).send()
|
| 61 |
selectRomes = selectRome.get('value')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 62 |
agent = create_csv_agent(
|
| 63 |
-
|
| 64 |
"https://cipen.univ-gustave-eiffel.fr/typo3conf/ext/cipen_package/Resources/Public/Dataviz/datalab/crossfilterings/EmploisRome/" + selectRomes[1:] + ".csv",
|
| 65 |
verbose=False,
|
| 66 |
agent_type=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
|
|
|
|
| 1 |
+
from langchain_community.llms import HuggingFaceEndpoint
|
| 2 |
+
from langchain_core.prompts import PromptTemplate
|
| 3 |
from langchain.prompts import ChatPromptTemplate, MessagesPlaceholder
|
| 4 |
from langchain.memory import ChatMessageHistory, ConversationBufferMemory
|
| 5 |
from langchain.schema import StrOutputParser
|
|
|
|
| 22 |
return "Exemple de requêtes sur les données des emplois'.\n\nQ1 : donne les 10 métiers principaux. Génère le résultat dans un tableau avec les compétences représentatives correspondant à chaque emploi.\nQ2 : donne les 10 compétences principales. Génère le résultat dans un tableau avec les emplois représentatifs correspondant à chaque compétence.\nQ3 : donne les 10 compétences principales. Génère le résultat dans un tableau avec les niveaux de qualification représentatifs correspondant à chaque compétence.\nQ4 : donne les 10 compétences principales. Génère le résultat dans un tableau avec les salaires représentatifs correspondant à chaque compétence.\nQ5 : donne les 10 compétences principales. Génère le résultat dans un tableau avec les contrats représentatifs correspondant à chaque compétence.\nQ6 : donne les 10 contrats principaux. Génère le résultat dans un tableau avec les emplois représentatifs correspondant à chaque contrat."
|
| 23 |
@cl.author_rename
|
| 24 |
def rename(orig_author: str):
|
| 25 |
+
rename_dict = {"AgentExecutor": "Agent conversationnel", "Error": "Réponse de l'assistant", "DatapccSkillStream": "Copilot", "load_memory_variables": "Historique de conversation 💬", "Retriever": "Agent conversationnel", "StuffDocumentsChain": "Chaîne de documents", "LLMChain": "Agent", "HuggingFaceEndpoint": "Réponse de Mistral AI 🤖"}
|
| 26 |
return rename_dict.get(orig_author, orig_author)
|
| 27 |
|
| 28 |
@cl.on_chat_start
|
|
|
|
| 61 |
content=f"Vous pouvez utiliser le COPILOT pour répondre à vos questions sur : \"{selectRome.get('label')}\", Codes ROME : \"{selectRome.get('value')}\"",
|
| 62 |
).send()
|
| 63 |
selectRomes = selectRome.get('value')
|
| 64 |
+
os.environ['HUGGINGFACEHUB_API_TOKEN'] = os.environ['HUGGINGFACEHUB_API_TOKEN']
|
| 65 |
+
repo_id = "mistralai/Mixtral-8x7B-Instruct-v0.1"
|
| 66 |
+
|
| 67 |
+
llm = HuggingFaceEndpoint(
|
| 68 |
+
repo_id=repo_id, max_new_tokens=5000, temperature=0.7, task="text2text-generation"
|
| 69 |
+
)
|
| 70 |
agent = create_csv_agent(
|
| 71 |
+
llm,
|
| 72 |
"https://cipen.univ-gustave-eiffel.fr/typo3conf/ext/cipen_package/Resources/Public/Dataviz/datalab/crossfilterings/EmploisRome/" + selectRomes[1:] + ".csv",
|
| 73 |
verbose=False,
|
| 74 |
agent_type=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
|