Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -8,7 +8,6 @@ from langchain.schema import SystemMessage
|
|
8 |
from langchain_community.chat_models.gigachat import GigaChat
|
9 |
from openpyxl import load_workbook
|
10 |
import base64
|
11 |
-
import git
|
12 |
|
13 |
# Установка ключа API для OpenAI и GigaChat
|
14 |
openai_api_key = os.getenv('GPT_KEY')
|
@@ -269,38 +268,41 @@ def check_errors_with_yield(*personalized_messages):
|
|
269 |
yield error_check_prompt, error_message_gpt4o, error_message_gigachat_pro, error_message_gigachat_lite, error_message_gigachat_plus, "Все результаты проверки сгенерированы"
|
270 |
|
271 |
|
272 |
-
# Функция для сохранения сообщения в файл
|
273 |
def save_to_github(message, model_name):
|
274 |
# Формируем уникальное имя файла на основе текущего времени
|
275 |
timestamp = int(time.time())
|
276 |
file_name = f"file_{timestamp}.json"
|
277 |
-
|
278 |
-
|
279 |
# Данные для записи
|
280 |
-
|
|
|
|
|
|
|
281 |
|
282 |
-
#
|
283 |
-
|
284 |
-
json.dump(data, file, ensure_ascii=False, indent=4)
|
285 |
|
286 |
-
#
|
287 |
-
repo =
|
288 |
-
|
289 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
290 |
|
291 |
-
#
|
292 |
-
|
293 |
-
repo_url = f"https://{token}@github.com/fruitpicker01/Storage_1.git"
|
294 |
|
295 |
-
|
296 |
-
|
297 |
-
repo.create_remote('origin', repo_url)
|
298 |
else:
|
299 |
-
|
300 |
-
|
301 |
-
# Пушим изменения в main ветку
|
302 |
-
repo.remotes.origin.push(f"HEAD:main")
|
303 |
-
|
304 |
|
305 |
|
306 |
# Создание интерфейса Gradio
|
|
|
8 |
from langchain_community.chat_models.gigachat import GigaChat
|
9 |
from openpyxl import load_workbook
|
10 |
import base64
|
|
|
11 |
|
12 |
# Установка ключа API для OpenAI и GigaChat
|
13 |
openai_api_key = os.getenv('GPT_KEY')
|
|
|
268 |
yield error_check_prompt, error_message_gpt4o, error_message_gigachat_pro, error_message_gigachat_lite, error_message_gigachat_plus, "Все результаты проверки сгенерированы"
|
269 |
|
270 |
|
|
|
271 |
def save_to_github(message, model_name):
|
272 |
# Формируем уникальное имя файла на основе текущего времени
|
273 |
timestamp = int(time.time())
|
274 |
file_name = f"file_{timestamp}.json"
|
275 |
+
|
|
|
276 |
# Данные для записи
|
277 |
+
file_content = {
|
278 |
+
"Модель": model_name,
|
279 |
+
"Сообщение": message
|
280 |
+
}
|
281 |
|
282 |
+
# Преобразуем контент в JSON-строку и кодируем в base64
|
283 |
+
file_content_encoded = base64.b64encode(json.dumps(file_content).encode()).decode()
|
|
|
284 |
|
285 |
+
# Параметры для GitHub API
|
286 |
+
repo = "fruitpicker01/Storage_1"
|
287 |
+
path = file_name
|
288 |
+
url = f"https://api.github.com/repos/{repo}/contents/{path}"
|
289 |
+
headers = {
|
290 |
+
"Authorization": f"token {token}",
|
291 |
+
"Content-Type": "application/json"
|
292 |
+
}
|
293 |
+
data = {
|
294 |
+
"message": f"Добавлен новый файл {file_name}",
|
295 |
+
"content": file_content_encoded
|
296 |
+
}
|
297 |
|
298 |
+
# Отправка POST-запроса на GitHub API для создания файла в репозитории
|
299 |
+
response = requests.put(url, headers=headers, data=json.dumps(data))
|
|
|
300 |
|
301 |
+
if response.status_code == 201:
|
302 |
+
print(f"Файл {file_name} успешно добавлен в репозиторий.")
|
|
|
303 |
else:
|
304 |
+
print(f"Ошибка при добавлении файла: {response.status_code}")
|
305 |
+
print(response.json())
|
|
|
|
|
|
|
306 |
|
307 |
|
308 |
# Создание интерфейса Gradio
|