Spaces:
Paused
Paused
Commit
·
06cb4d9
1
Parent(s):
ed38779
update assistant script
Browse files- core/demorrha.py +32 -5
core/demorrha.py
CHANGED
|
@@ -22,6 +22,7 @@ class DemorrhaAssistant(object):
|
|
| 22 |
self.client = self.initialize_client() # OpenAI(api_key = getenv("OPENAI_API_KEY"))
|
| 23 |
self.vector_store = None
|
| 24 |
self.load_assistant()
|
|
|
|
| 25 |
|
| 26 |
def initialize_client(self):
|
| 27 |
# Initialiser le client OpenAI avec la clé API
|
|
@@ -149,19 +150,41 @@ class DemorrhaAssistant(object):
|
|
| 149 |
system_prompt: Optional[str] = ""):
|
| 150 |
self.system_prompt = system_prompt
|
| 151 |
return self
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 152 |
|
| 153 |
def use_assistant(self):
|
| 154 |
self.set_system_prompt(GlobalSystemPrompts.linguascribe())
|
| 155 |
# Utiliser l'assistant ici
|
| 156 |
-
|
| 157 |
assistant_id=self.assistant.id,
|
| 158 |
thread={
|
| 159 |
"messages": [
|
| 160 |
{"role": "system", "content": f"{self.system_prompt}"},
|
| 161 |
{"role": "user", "content": self.payload_content}
|
| 162 |
]
|
| 163 |
-
}
|
| 164 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 165 |
|
| 166 |
"""
|
| 167 |
|
|
@@ -176,12 +199,14 @@ class DemorrhaAssistant(object):
|
|
| 176 |
if __name__ == "__main__":
|
| 177 |
demorrha = DemorrhaAssistant()
|
| 178 |
vector_store = demorrha.load_vector_store().get_vector_store()
|
|
|
|
| 179 |
print(vector_store)
|
| 180 |
|
| 181 |
if vector_store.status == "completed":
|
| 182 |
if vector_store.file_counts.total > 0:
|
| 183 |
if vector_store.file_counts.completed == vector_store.file_counts.total:
|
| 184 |
print("Le chargement du vecteur est terminé.")
|
|
|
|
| 185 |
else:
|
| 186 |
file_paths = ["style.txt"]
|
| 187 |
file_batch = demorrha.add_file_to_vector_store(file_paths)
|
|
@@ -189,6 +214,8 @@ if __name__ == "__main__":
|
|
| 189 |
|
| 190 |
# Exemple d'utilsation de l'assistant
|
| 191 |
demorrha.load_assistant("Demorrha")
|
| 192 |
-
|
| 193 |
-
|
|
|
|
|
|
|
| 194 |
|
|
|
|
| 22 |
self.client = self.initialize_client() # OpenAI(api_key = getenv("OPENAI_API_KEY"))
|
| 23 |
self.vector_store = None
|
| 24 |
self.load_assistant()
|
| 25 |
+
self.list_vector_store_ids = []
|
| 26 |
|
| 27 |
def initialize_client(self):
|
| 28 |
# Initialiser le client OpenAI avec la clé API
|
|
|
|
| 150 |
system_prompt: Optional[str] = ""):
|
| 151 |
self.system_prompt = system_prompt
|
| 152 |
return self
|
| 153 |
+
|
| 154 |
+
def add_vector_store_to_ressource(self, vector_store_id):
|
| 155 |
+
self.list_vector_store_ids.append(vector_store_id)
|
| 156 |
+
return self
|
| 157 |
+
|
| 158 |
+
def get_vector_store_ids(self):
|
| 159 |
+
return self.list_vector_store_ids
|
| 160 |
+
|
| 161 |
+
def empty_vector_store_ids(self):
|
| 162 |
+
self.list_vector_store_ids = []
|
| 163 |
+
return self
|
| 164 |
+
|
| 165 |
+
def update_vector_store_ids(self):
|
| 166 |
+
self.assistant = self.client.beta.assistants.update(
|
| 167 |
+
assistant_id=self.assistant.id,
|
| 168 |
+
tool_resources={"file_search": {"vector_store_ids": self.list_vector_store_ids}},
|
| 169 |
+
)
|
| 170 |
|
| 171 |
def use_assistant(self):
|
| 172 |
self.set_system_prompt(GlobalSystemPrompts.linguascribe())
|
| 173 |
# Utiliser l'assistant ici
|
| 174 |
+
with self.client.beta.threads.create_and_run(
|
| 175 |
assistant_id=self.assistant.id,
|
| 176 |
thread={
|
| 177 |
"messages": [
|
| 178 |
{"role": "system", "content": f"{self.system_prompt}"},
|
| 179 |
{"role": "user", "content": self.payload_content}
|
| 180 |
]
|
| 181 |
+
},
|
| 182 |
+
stream=True
|
| 183 |
+
) as stream:
|
| 184 |
+
for event in stream:
|
| 185 |
+
# Print the text from text delta events
|
| 186 |
+
if event.type == "thread.message.delta" and event.data.delta.content:
|
| 187 |
+
print(event.data.delta.content[0].text)
|
| 188 |
|
| 189 |
"""
|
| 190 |
|
|
|
|
| 199 |
if __name__ == "__main__":
|
| 200 |
demorrha = DemorrhaAssistant()
|
| 201 |
vector_store = demorrha.load_vector_store().get_vector_store()
|
| 202 |
+
demorrha.empty_vector_store_ids()
|
| 203 |
print(vector_store)
|
| 204 |
|
| 205 |
if vector_store.status == "completed":
|
| 206 |
if vector_store.file_counts.total > 0:
|
| 207 |
if vector_store.file_counts.completed == vector_store.file_counts.total:
|
| 208 |
print("Le chargement du vecteur est terminé.")
|
| 209 |
+
demorrha.add_vector_store_to_ressource(vector_store.id)
|
| 210 |
else:
|
| 211 |
file_paths = ["style.txt"]
|
| 212 |
file_batch = demorrha.add_file_to_vector_store(file_paths)
|
|
|
|
| 214 |
|
| 215 |
# Exemple d'utilsation de l'assistant
|
| 216 |
demorrha.load_assistant("Demorrha")
|
| 217 |
+
demorrha.update_vector_store_ids()
|
| 218 |
+
demorrha.set_payload("Bonjour, comment ça va ?", "Traduit le texte en Anglais")
|
| 219 |
+
demorrha.use_assistant()
|
| 220 |
+
#print("Réponse de l'assistant:", response)
|
| 221 |
|