3v324v23 commited on
Commit
3945713
·
1 Parent(s): d80b4ba
Files changed (1) hide show
  1. main.py +11 -3
main.py CHANGED
@@ -1,4 +1,5 @@
1
  # ===東吳大學資料系 2025 年 LINEBOT ===
 
2
 
3
  import io
4
  from PIL import Image
@@ -156,6 +157,13 @@ def handle_image_message(event):
156
  with ApiClient(configuration) as api_client:
157
  blob_api = MessagingApiBlob(api_client)
158
  content = blob_api.get_message_content(message_id=event.message.id)
 
 
 
 
 
 
 
159
 
160
  # 使用 Pillow 讀取圖像
161
  image = Image.open(io.BytesIO(content))
@@ -173,7 +181,6 @@ def handle_image_message(event):
173
  app.logger.info(f"Image URL: {image_url}")
174
 
175
  # === 以下是處理解釋圖片部分 === #
176
- '''
177
  response = client.responses.create(
178
  model="gpt-4o-mini",
179
  input=[{
@@ -182,13 +189,14 @@ def handle_image_message(event):
182
  {"type": "input_text", "text": "describe the image in traditional chinese"},
183
  {
184
  "type": "input_image",
185
- "image_url": image_url,
186
  },
187
  ],
188
  }],
189
  )
190
  app.logger.info(response.output_text)
191
- '''
 
192
 
193
  with ApiClient(configuration) as api_client:
194
  line_bot_api = MessagingApi(api_client)
 
1
  # ===東吳大學資料系 2025 年 LINEBOT ===
2
+ import base64
3
 
4
  import io
5
  from PIL import Image
 
157
  with ApiClient(configuration) as api_client:
158
  blob_api = MessagingApiBlob(api_client)
159
  content = blob_api.get_message_content(message_id=event.message.id)
160
+ image_bytes = content.data
161
+
162
+ # Step 2:轉成 base64 字串
163
+ base64_string = base64.b64encode(image_bytes).decode("utf-8")
164
+
165
+ # Step 3:組成 OpenAI 的 data URI 格式
166
+ data_uri = f"data:image/png;base64,{base64_string}"
167
 
168
  # 使用 Pillow 讀取圖像
169
  image = Image.open(io.BytesIO(content))
 
181
  app.logger.info(f"Image URL: {image_url}")
182
 
183
  # === 以下是處理解釋圖片部分 === #
 
184
  response = client.responses.create(
185
  model="gpt-4o-mini",
186
  input=[{
 
189
  {"type": "input_text", "text": "describe the image in traditional chinese"},
190
  {
191
  "type": "input_image",
192
+ "image_url": data_uri,
193
  },
194
  ],
195
  }],
196
  )
197
  app.logger.info(response.output_text)
198
+
199
+ # === 以下是回傳圖片部分 === #
200
 
201
  with ApiClient(configuration) as api_client:
202
  line_bot_api = MessagingApi(api_client)