kramlion commited on
Commit
c11727f
·
1 Parent(s): 56892ea
Files changed (2) hide show
  1. .idea/workspace.xml +1 -0
  2. app.py +9 -19
.idea/workspace.xml CHANGED
@@ -5,6 +5,7 @@
5
  </component>
6
  <component name="ChangeListManager">
7
  <list default="true" id="7eeb9ad6-e30c-4a49-b03a-a9b6a48f7c76" name="Changes" comment="">
 
8
  <change beforePath="$PROJECT_DIR$/app.py" beforeDir="false" afterPath="$PROJECT_DIR$/app.py" afterDir="false" />
9
  </list>
10
  <option name="SHOW_DIALOG" value="false" />
 
5
  </component>
6
  <component name="ChangeListManager">
7
  <list default="true" id="7eeb9ad6-e30c-4a49-b03a-a9b6a48f7c76" name="Changes" comment="">
8
+ <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
9
  <change beforePath="$PROJECT_DIR$/app.py" beforeDir="false" afterPath="$PROJECT_DIR$/app.py" afterDir="false" />
10
  </list>
11
  <option name="SHOW_DIALOG" value="false" />
app.py CHANGED
@@ -1,3 +1,6 @@
 
 
 
1
  from huggingface_hub import hf_hub_download
2
  import tensorflow as tf
3
  import numpy as np
@@ -6,51 +9,38 @@ import pandas as pd
6
  import openpyxl
7
  from PIL import Image
8
 
9
- # Загрузка файла модели из Hugging Face Hub
10
  model_path = hf_hub_download(repo_id="neuronetties/money", filename="money.keras")
11
- # Загрузка модели
12
  model = tf.keras.models.load_model(model_path)
13
 
14
 
15
  def display_image(image_path):
16
- # Загрузка изображения из хранилища Hugging Face
17
- downloaded_image_path = hf_hub_download(repo_id="neuronetties/money", filename="image.png") # Замените на свой repo_id и имя файла
18
- image = Image.open(downloaded_image_path) # Открываем загруженное изображение
19
  return image
20
 
21
- # Функция для получения значений валют по дате
22
- def get_currency_values(file, date_input):
23
- # Чтение данных из Excel файла
24
  data = pd.read_excel(file)
25
  data.dropna(inplace=True)
26
-
27
- # Преобразование столбца даты в формат datetime
28
- data['Date'] = pd.to_datetime(data['Date'], dayfirst=True) # Убедитесь, что у вас есть столбец 'Date'
29
-
30
- # Поиск значений валют по введенной дате
31
  date = pd.to_datetime(date_input, dayfirst=True)
32
  row = data[data['Date'] == date]
33
-
34
  if not row.empty:
35
  values = row[['EUR_RUB', 'GBP_RUB', 'USD_RUB']].values.flatten()
36
  return f"На {date_input}: USD/RUB: {values[2]}, EUR/RUB: {values[0]}, GBP/RUB: {values[1]}"
37
  else:
38
  return f"Данные на {date_input} не найдены."
39
 
40
- # Интерфейс для получения значений валют
41
  app1 = gr.Interface(
42
  fn=get_currency_values,
43
  inputs=[gr.File(label="Загрузите файл Excel"), gr.Text(label="Введите дату (дд.мм.гггг):")],
44
  outputs=gr.Text(label="Результаты валют")
45
  )
46
 
47
- # Интерфейс для генерации графиков
48
  app2 = gr.Interface(
49
  fn=display_image,
50
- inputs=gr.File(label="Загрузите файл Excel"), # Изменено на текстовый ввод
51
  outputs="image"
52
  )
53
 
54
- # Создание табов с интерфейсами
55
  demo = gr.TabbedInterface([app1, app2], ["Вывод цены за дату", "Предсказания на 6 месяцев"])
56
- demo.launch()
 
1
+ #Изначальный код нейросети и создания графиков с выводом через Gradio - https://colab.research.google.com/drive/1gEu9nbQ-rB7-it6eednP5egf0eL7k1Rj#scrollTo=xbMowZBhdXDE
2
+ #На Hugging Face нет бесплатного GPU на котором выполняется наш код, а на CPU выполнение кода идёт больше часа, поэтому график вынесли так
3
+
4
  from huggingface_hub import hf_hub_download
5
  import tensorflow as tf
6
  import numpy as np
 
9
  import openpyxl
10
  from PIL import Image
11
 
 
12
  model_path = hf_hub_download(repo_id="neuronetties/money", filename="money.keras")
 
13
  model = tf.keras.models.load_model(model_path)
14
 
15
 
16
  def display_image(image_path):
17
+ downloaded_image_path = hf_hub_download(repo_id="neuronetties/money", filename="image.png")
18
+ image = Image.open(downloaded_image_path)
 
19
  return image
20
 
21
+
22
+ def get_currency_values(file, date_input): #доп.функционал: поиск значений по дате
 
23
  data = pd.read_excel(file)
24
  data.dropna(inplace=True)
25
+ data['Date'] = pd.to_datetime(data['Date'], dayfirst=True)#преобразование в тип datatime
 
 
 
 
26
  date = pd.to_datetime(date_input, dayfirst=True)
27
  row = data[data['Date'] == date]
 
28
  if not row.empty:
29
  values = row[['EUR_RUB', 'GBP_RUB', 'USD_RUB']].values.flatten()
30
  return f"На {date_input}: USD/RUB: {values[2]}, EUR/RUB: {values[0]}, GBP/RUB: {values[1]}"
31
  else:
32
  return f"Данные на {date_input} не найдены."
33
 
 
34
  app1 = gr.Interface(
35
  fn=get_currency_values,
36
  inputs=[gr.File(label="Загрузите файл Excel"), gr.Text(label="Введите дату (дд.мм.гггг):")],
37
  outputs=gr.Text(label="Результаты валют")
38
  )
39
 
 
40
  app2 = gr.Interface(
41
  fn=display_image,
42
+ inputs=gr.File(label="Загрузите файл Excel"),
43
  outputs="image"
44
  )
45
 
 
46
  demo = gr.TabbedInterface([app1, app2], ["Вывод цены за дату", "Предсказания на 6 месяцев"])