Spaces:
Sleeping
Sleeping
Ilyas KHIAT
commited on
Commit
·
6db239f
1
Parent(s):
23f4488
delete docs
Browse files
rag.py
CHANGED
@@ -67,17 +67,29 @@ def get_vectorstore(text_chunks,filename, file_type,namespace,index):
|
|
67 |
print(e)
|
68 |
return False
|
69 |
|
70 |
-
def get_retreive_answer(enterprise_id,prompt,index):
|
71 |
try:
|
72 |
|
73 |
embedding = OpenAIEmbeddings(model="text-embedding-3-large")
|
74 |
vector_store = PineconeVectorStore(index=index, embedding=embedding,namespace=enterprise_id)
|
75 |
-
|
76 |
retriever = vector_store.as_retriever(
|
77 |
search_type="similarity_score_threshold",
|
78 |
search_kwargs={"k": 3, "score_threshold": 0.6},
|
79 |
)
|
80 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
|
82 |
return response
|
83 |
|
@@ -88,21 +100,8 @@ def get_retreive_answer(enterprise_id,prompt,index):
|
|
88 |
def generate_response_via_langchain(query: str, stream: bool = False, model: str = "gpt-4o-mini",context:str="",messages = [],style:str="formal",tonality:str="neutral"):
|
89 |
# Define the prompt template
|
90 |
template = "En tant qu'IA experte en marketing, réponds avec un style {style} et une tonalité {tonality} dans ta communcation, sachant le context suivant: {context}, et l'historique de la conversation: {messages}, {query}"
|
91 |
-
|
92 |
-
template = '''
|
93 |
-
Vous êtes un spécialiste de la communication marketing responsable avec une expertise en stratégie de communication numérique, en gestion des médias sociaux, en création de contenu, en notoriété de la marque et en engagement communautaire.
|
94 |
-
|
95 |
-
Je vous fournirai des détails concernant le {style}, la {tonality}, mon entreprise, les contextes spécifiques et les conversations passées afin d'assurer une intégration transparente dans nos projets. Vos tâches comprennent le développement de matériel de marketing numérique engageant et informatif tel que des tweets, des posts LinkedIn, et des newsletters alignés sur Vegetaelis 2024 - le Salon de l'Innovation Végétale et de la Transition Agroécologique qui aura lieu à Pau les 21 et 22 novembre 2024.
|
96 |
|
97 |
-
Pour chaque tâche, suivez les étapes suivantes :
|
98 |
|
99 |
-
Analyser les préférences des utilisateurs et les exigences du projet à partir des paramètres donnés.
|
100 |
-
Effectuer des recherches sur le sujet et intégrer les tendances actuelles si nécessaire.
|
101 |
-
Créer un contenu captivant adapté au format demandé (message sur Twitter, article sur LinkedIn ou lettre d'information).
|
102 |
-
Relire attentivement les textes pour s'assurer qu'ils respectent la grammaire, la ponctuation et la cohérence stylistique.
|
103 |
-
Livrer le document final en veillant à ce qu'il réponde à toutes les attentes et à toutes les lignes directrices.
|
104 |
-
Le résultat doit être attrayant, informatif, rédigé de manière professionnelle, cohérent avec le style et la tonalité spécifiés, doté des hashtags appropriés si nécessaire, et représentatif des valeurs de l'entreprise de l'utilisateur et des normes de l'industrie.
|
105 |
-
'''
|
106 |
prompt = PromptTemplate.from_template(template)
|
107 |
|
108 |
# Initialize the OpenAI LLM with the specified model
|
|
|
67 |
print(e)
|
68 |
return False
|
69 |
|
70 |
+
def get_retreive_answer(enterprise_id,prompt,index,common_id):
|
71 |
try:
|
72 |
|
73 |
embedding = OpenAIEmbeddings(model="text-embedding-3-large")
|
74 |
vector_store = PineconeVectorStore(index=index, embedding=embedding,namespace=enterprise_id)
|
75 |
+
|
76 |
retriever = vector_store.as_retriever(
|
77 |
search_type="similarity_score_threshold",
|
78 |
search_kwargs={"k": 3, "score_threshold": 0.6},
|
79 |
)
|
80 |
+
|
81 |
+
if common_id:
|
82 |
+
vector_store_commun = PineconeVectorStore(index=index, embedding=embedding,namespace=common_id)
|
83 |
+
|
84 |
+
retriever_commun = vector_store_commun.as_retriever(
|
85 |
+
search_type="similarity_score_threshold",
|
86 |
+
search_kwargs={"k": 3, "score_threshold": 0.6},
|
87 |
+
)
|
88 |
+
|
89 |
+
response = retriever.invoke(prompt) + retriever_commun.invoke(prompt)
|
90 |
+
|
91 |
+
else:
|
92 |
+
response = retriever.invoke(prompt)
|
93 |
|
94 |
return response
|
95 |
|
|
|
100 |
def generate_response_via_langchain(query: str, stream: bool = False, model: str = "gpt-4o-mini",context:str="",messages = [],style:str="formal",tonality:str="neutral"):
|
101 |
# Define the prompt template
|
102 |
template = "En tant qu'IA experte en marketing, réponds avec un style {style} et une tonalité {tonality} dans ta communcation, sachant le context suivant: {context}, et l'historique de la conversation: {messages}, {query}"
|
|
|
|
|
|
|
|
|
|
|
103 |
|
|
|
104 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
105 |
prompt = PromptTemplate.from_template(template)
|
106 |
|
107 |
# Initialize the OpenAI LLM with the specified model
|