ll7098ll commited on
Commit
4dc53ae
·
verified ·
1 Parent(s): cabaea0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -9
app.py CHANGED
@@ -18,21 +18,20 @@ model = genai.GenerativeModel(
18
  generation_config=generation_config,
19
  )
20
 
21
- def generate_news_article(images, space_characteristic):
22
  """
23
- 학교 공간 혁신 사진 공간 특성 요소를 기반으로 기사문을 생성합니다.
24
  """
25
-
26
  image_descriptions = []
27
  for i, image in enumerate(images):
28
  try:
29
- image_description = genai.describe_image(image)
30
- image_descriptions.append(f"사진 {i+1} 설명: {image_description.description}")
31
  except Exception as e:
32
  print(f"Error describing image {i+1}: {e}")
33
  image_descriptions.append(f"사진 {i+1} 설명: 오류 발생")
34
 
35
-
36
  characteristic_description = ""
37
  if space_characteristic:
38
  characteristic_description = f"\n**공간 특성: {space_characteristic}**\n"
@@ -45,7 +44,25 @@ def generate_news_article(images, space_characteristic):
45
  elif space_characteristic == "특화하다":
46
  characteristic_description += "- 사용자가 원하는 유형의 활동(놀이, 학습, 실험, 표현 및 전시, 휴식 등)을 충분히 지원할 수 있도록 디자인\n"
47
 
48
- prompt = f"## 학교 공간 혁신 기사 작성\n\n{''.join(image_descriptions)}\n{characteristic_description}\n위 내용을 바탕으로 학교 공간 혁신에 대한 기사를 작성해주세요."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
 
50
  try:
51
  response = model.generate_text(prompt=prompt)
@@ -53,19 +70,20 @@ def generate_news_article(images, space_characteristic):
53
  except Exception as e:
54
  print(f"Error generating text: {e}")
55
  full_text = "기사 생성 오류"
56
-
57
  return full_text
58
 
59
 
60
  with gr.Blocks() as demo:
61
  image_inputs = gr.Gallery(label="학교 공간 사진 업로드", type="pil")
62
  space_characteristic = gr.Radio(["유연하다", "연결하다", "상상하다", "특화하다"], label="공간 특성")
 
63
  generate_btn = gr.Button("기사 생성")
64
  news_article = gr.Textbox(label="생성된 기사", lines=20)
65
 
66
  generate_btn.click(
67
  fn=generate_news_article,
68
- inputs=[image_inputs, space_characteristic],
69
  outputs=news_article,
70
  )
71
 
 
18
  generation_config=generation_config,
19
  )
20
 
21
+ def generate_news_article(images, space_characteristic, key_features):
22
  """
23
+ 학교 공간 혁신 사진, 공간 특성, 특징을 기반으로 기사문을 생성합니다.
24
  """
25
+
26
  image_descriptions = []
27
  for i, image in enumerate(images):
28
  try:
29
+ image_description = genai.describe_image(image)
30
+ image_descriptions.append(f"사진 {i+1} 설명: {image_description.description}")
31
  except Exception as e:
32
  print(f"Error describing image {i+1}: {e}")
33
  image_descriptions.append(f"사진 {i+1} 설명: 오류 발생")
34
 
 
35
  characteristic_description = ""
36
  if space_characteristic:
37
  characteristic_description = f"\n**공간 특성: {space_characteristic}**\n"
 
44
  elif space_characteristic == "특화하다":
45
  characteristic_description += "- 사용자가 원하는 유형의 활동(놀이, 학습, 실험, 표현 및 전시, 휴식 등)을 충분히 지원할 수 있도록 디자인\n"
46
 
47
+
48
+ prompt = f"""## 학교 공간 혁신 기사 작성
49
+
50
+ {''.join(image_descriptions)}
51
+
52
+ {characteristic_description}
53
+
54
+ **주요 특징:** {key_features}
55
+
56
+ 위 내용을 바탕으로 **{space_characteristic}** 공간 특성을 반영하여 다음과 같은 서식을 갖춘 학교 공간 혁신에 대한 기사를 작성해주세요.
57
+
58
+ **제목:** ({space_characteristic} 특성을 반영한 제목)
59
+
60
+ **소제목 1:** {space_characteristic} 공간의 특징을 잘 드러내는 소제목
61
+ ({space_characteristic} 특성을 반영한 내용)
62
+
63
+ **소제목 2:** {space_characteristic} 공간의 다른 특징을 잘 드러내는 소제목
64
+ ({space_characteristic} 특성을 반영한 내용)
65
+ """
66
 
67
  try:
68
  response = model.generate_text(prompt=prompt)
 
70
  except Exception as e:
71
  print(f"Error generating text: {e}")
72
  full_text = "기사 생성 오류"
73
+
74
  return full_text
75
 
76
 
77
  with gr.Blocks() as demo:
78
  image_inputs = gr.Gallery(label="학교 공간 사진 업로드", type="pil")
79
  space_characteristic = gr.Radio(["유연하다", "연결하다", "상상하다", "특화하다"], label="공간 특성")
80
+ key_features = gr.Textbox(label="주요 특징", lines=3)
81
  generate_btn = gr.Button("기사 생성")
82
  news_article = gr.Textbox(label="생성된 기사", lines=20)
83
 
84
  generate_btn.click(
85
  fn=generate_news_article,
86
+ inputs=[image_inputs, space_characteristic, key_features],
87
  outputs=news_article,
88
  )
89