Spaces:
Sleeping
Sleeping
fruitpicker01
commited on
Update app.py
Browse files
app.py
CHANGED
@@ -20,6 +20,7 @@ from transformers import AutoTokenizer, AutoModel
|
|
20 |
from utils import best_text_choice
|
21 |
import asyncio
|
22 |
import inspect
|
|
|
23 |
|
24 |
tokenizer = AutoTokenizer.from_pretrained("ai-forever/ru-en-RoSBERTa")
|
25 |
model = AutoModel.from_pretrained("ai-forever/ru-en-RoSBERTa")
|
@@ -33,6 +34,8 @@ MISTRAL_API_KEY_4 = os.getenv('MISTRAL_API_KEY_4')
|
|
33 |
MISTRAL_API_KEY_5 = os.getenv('MISTRAL_API_KEY_5')
|
34 |
token = os.getenv('GITHUB_TOKEN')
|
35 |
|
|
|
|
|
36 |
# Клиент для генерации сообщений
|
37 |
client_mistral_generate = Mistral(api_key=MISTRAL_API_KEY)
|
38 |
|
@@ -198,31 +201,19 @@ def clean_message(message):
|
|
198 |
# return f"Ошибка при обращении к GigaChat-Pro: {e}"
|
199 |
|
200 |
async def generate_message_mistral_generate(prompt, max_retries=5):
|
201 |
-
#def generate_message_mistral_generate(prompt):
|
202 |
-
# try:
|
203 |
-
# messages = [SystemMessage(content=prompt)]
|
204 |
-
# res = chat_pro(messages)
|
205 |
-
# cleaned_message = clean_message(res.content.strip())
|
206 |
-
# return cleaned_message
|
207 |
-
# except Exception as e:
|
208 |
-
# return f"Ошибка при обращении к GigaChat-Pro: {e}"
|
209 |
-
|
210 |
retries = 0
|
211 |
while retries < max_retries:
|
212 |
try:
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
{
|
220 |
-
"role": "user",
|
221 |
-
"content": prompt
|
222 |
-
},
|
223 |
-
]
|
224 |
)
|
225 |
-
|
|
|
|
|
226 |
return cleaned_message
|
227 |
except Exception as e:
|
228 |
error_message = str(e)
|
@@ -232,10 +223,48 @@ async def generate_message_mistral_generate(prompt, max_retries=5):
|
|
232 |
await asyncio.sleep(wait_time)
|
233 |
retries += 1
|
234 |
else:
|
235 |
-
print(f"Error calling
|
236 |
return None
|
237 |
-
print("Failed to get response from
|
238 |
return None
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
239 |
|
240 |
async def generate_message_mistral_check(prompt, max_retries=5):
|
241 |
#def generate_message_mistral_check(prompt):
|
|
|
20 |
from utils import best_text_choice
|
21 |
import asyncio
|
22 |
import inspect
|
23 |
+
from openai import AsyncOpenAI
|
24 |
|
25 |
tokenizer = AutoTokenizer.from_pretrained("ai-forever/ru-en-RoSBERTa")
|
26 |
model = AutoModel.from_pretrained("ai-forever/ru-en-RoSBERTa")
|
|
|
34 |
MISTRAL_API_KEY_5 = os.getenv('MISTRAL_API_KEY_5')
|
35 |
token = os.getenv('GITHUB_TOKEN')
|
36 |
|
37 |
+
client_openai = client = AsyncOpenAI()
|
38 |
+
|
39 |
# Клиент для генерации сообщений
|
40 |
client_mistral_generate = Mistral(api_key=MISTRAL_API_KEY)
|
41 |
|
|
|
201 |
# return f"Ошибка при обращении к GigaChat-Pro: {e}"
|
202 |
|
203 |
async def generate_message_mistral_generate(prompt, max_retries=5):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
204 |
retries = 0
|
205 |
while retries < max_retries:
|
206 |
try:
|
207 |
+
# Call to OpenAI's GPT-4o-mini model
|
208 |
+
chat_response = await client.chat.completions.create(
|
209 |
+
model="gpt-4o-mini",
|
210 |
+
messages=[{"role": "user", "content": prompt}],
|
211 |
+
temperature=1.1,
|
212 |
+
max_tokens=101
|
|
|
|
|
|
|
|
|
|
|
213 |
)
|
214 |
+
|
215 |
+
# Process and clean the response
|
216 |
+
cleaned_message = clean_message(chat_response.choices[0].message['content'].strip())
|
217 |
return cleaned_message
|
218 |
except Exception as e:
|
219 |
error_message = str(e)
|
|
|
223 |
await asyncio.sleep(wait_time)
|
224 |
retries += 1
|
225 |
else:
|
226 |
+
print(f"Error calling GPT-4o-mini: {e}")
|
227 |
return None
|
228 |
+
print("Failed to get response from GPT-4o-mini after maximum retries.")
|
229 |
return None
|
230 |
+
#def generate_message_mistral_generate(prompt):
|
231 |
+
# try:
|
232 |
+
# messages = [SystemMessage(content=prompt)]
|
233 |
+
# res = chat_pro(messages)
|
234 |
+
# cleaned_message = clean_message(res.content.strip())
|
235 |
+
# return cleaned_message
|
236 |
+
# except Exception as e:
|
237 |
+
# return f"Ошибка при обращении к GigaChat-Pro: {e}"
|
238 |
+
|
239 |
+
# retries = 0
|
240 |
+
# while retries < max_retries:
|
241 |
+
# try:
|
242 |
+
# chat_response = await client_mistral_generate.chat.complete_async(
|
243 |
+
# model="mistral-large-latest",
|
244 |
+
# temperature=1.0,
|
245 |
+
# min_tokens=81,
|
246 |
+
# max_tokens=106,
|
247 |
+
# messages=[
|
248 |
+
# {
|
249 |
+
# "role": "user",
|
250 |
+
# "content": prompt
|
251 |
+
# },
|
252 |
+
# ]
|
253 |
+
# )
|
254 |
+
# cleaned_message = clean_message(chat_response.choices[0].message.content.strip())
|
255 |
+
# return cleaned_message
|
256 |
+
# except Exception as e:
|
257 |
+
# error_message = str(e)
|
258 |
+
# if "Status 429" in error_message or "Server disconnected without sending a response" in error_message:
|
259 |
+
# wait_time = 3
|
260 |
+
# print(f"Rate limit exceeded or server did not respond. Waiting {wait_time} seconds before retrying...")
|
261 |
+
# await asyncio.sleep(wait_time)
|
262 |
+
# retries += 1
|
263 |
+
# else:
|
264 |
+
# print(f"Error calling Mistral: {e}")
|
265 |
+
# return None
|
266 |
+
# print("Failed to get response from Mistral after maximum retries.")
|
267 |
+
# return None
|
268 |
|
269 |
async def generate_message_mistral_check(prompt, max_retries=5):
|
270 |
#def generate_message_mistral_check(prompt):
|