Rooni commited on
Commit
ba5e8fe
·
1 Parent(s): b0d1091

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -13
app.py CHANGED
@@ -1,22 +1,24 @@
1
  import gradio as gr
2
- import huggingface
 
3
 
4
  # Загружаем модель
5
- model = huggingface.transformers.AutoModelForQuestionAnswering.from_pretrained("facebook/bart-base")
6
 
7
- # Функция для генерации ответа
8
- def generate_answer(image, prompt):
9
- # Получаем текст из изображения
10
- text = huggingface.vision.ImageCaptioner.from_pretrained("facebook/bart-base").generate(image)
11
 
12
- # Если был указан дополнительный prompt, добавляем его к тексту
13
- if prompt:
14
- text += f" {prompt}"
15
 
16
- # Генерируем ответ на вопрос
17
- answer = model.generate(text=text, max_length=100, do_sample=True)
18
 
 
19
  return answer
20
 
21
- # Создаем интерфейс gradio
22
- gr.Interface(generate_answer, inputs=[gr.Image(), gr.Text()], outputs=gr.Text(), title="Решение задач по фото")
 
1
  import gradio as gr
2
+ import torch
3
+ from transformers import AutoModelForVisualQuestionAnswering
4
 
5
  # Загружаем модель
6
+ model = AutoModelForVisualQuestionAnswering.from_pretrained("microsoft/visual-turing-nlg-question-answering")
7
 
8
+ # Создаем интерфейс gradio
9
+ def generate_answer(image, prompt=None):
10
+ # Преобразуем изображение в тензор
11
+ image = torch.as_tensor(image)
12
 
13
+ # Если указан дополнительный prompt, добавляем его к запросу
14
+ if prompt is not None:
15
+ prompt = f"{prompt} {image.shape[1]} {image.shape[0]}"
16
 
17
+ # Получаем ответ от модели
18
+ answer = model(image, prompt=prompt).logits[0].argmax(dim=-1)
19
 
20
+ # Возвращаем ответ
21
  return answer
22
 
23
+ # Создаем интерфейс
24
+ gr.Interface(generate_answer, inputs=[gr.Image(), gr.Text()], outputs=gr.Text())