alanchen1115 commited on
Commit
e4477cb
Β·
verified Β·
1 Parent(s): 754b9f8

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +38 -38
main.py CHANGED
@@ -84,13 +84,40 @@ def handle_image_message(event):
84
  user_id = event.source.user_id
85
  chat = chat_sessions.get(user_id) or model.start_chat(history=[])
86
  chat_sessions[user_id] = chat
 
87
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
88
  # ========
89
  # η”Ÿζˆεœ–η‰‡
90
  # ========
91
- user_text = event.message.text if event.message.type == "text" else None
92
- image_url = None
93
- if user_text and user_text.startswith("η”Ÿζˆεœ–η‰‡"):
94
  prompt = user_text.replace("η”Ÿζˆεœ–η‰‡", "").strip()
95
 
96
  # ε…ˆη«‹ε³ε›žθ¦†ιΏε…token過期
@@ -122,49 +149,22 @@ def handle_image_message(event):
122
  TextSendMessage(text="⚠️ εœ–η‰‡η”Ÿζˆε€±ζ•—οΌŒθ«‹η¨εΎŒε†θ©¦~")
123
  )
124
  return
125
-
126
- # ========
127
- # δΈŠε‚³εœ–η‰‡
128
- # ========
129
- if event.message.type == "image":
130
- image_path = get_image_url(event.message.id)
131
- if image_path:
132
- store_user_message(user_id, "image", image_path)
133
- line_bot_api.reply_message(event.reply_token, TextSendMessage(text="εœ–η‰‡ε·²ζŽ₯ζ”ΆζˆεŠŸε›‰οΌŒεΉ«ζˆ‘θΌΈε…₯δ½ ζƒ³θ©’ε•ηš„ε•ι‘Œε–”~"))
134
- else:
135
- line_bot_api.reply_message(event.reply_token, TextSendMessage(text="ζ²’ζœ‰ζŽ₯ζ”Άεˆ°εœ–η‰‡~"))
136
- return
137
-
138
- previous_message = get_previous_message(user_id)
139
- if previous_message and previous_message["type"] == "image" and event.message.type == "text":
140
- image_path = previous_message["content"]
141
- user_text = event.message.text
142
- store_user_message(user_id, "text", user_text)
143
- try:
144
- if not os.path.exists(image_path):
145
- raise FileNotFoundError(f"εœ–η‰‡θ·―εΎ‘η„‘ζ•ˆοΌš{image_path}")
146
- organ = PIL.Image.open(image_path)
147
- completion = chat.send_message([user_text, organ])
148
- out = completion.text
149
- except Exception as e:
150
- out = f"η™Όη”ŸιŒ―θͺ€: {e}"
151
 
152
  # ========
153
  # η΄”ζ–‡ε­—
154
  # ========
155
- else:
156
- if event.message.type != "text":
157
  line_bot_api.reply_message(event.reply_token, TextSendMessage(text="θ«‹θΌΈε…₯ζ–‡ε­—ζˆ–εœ–η‰‡~"))
158
  return
159
- if event.message.text == "再見":
160
  line_bot_api.reply_message(event.reply_token, TextSendMessage(text="Bye!"))
161
  return
162
- if working_status:
163
- try:
164
- prompt = event.message.text
165
- store_user_message(user_id, "text", prompt)
166
- completion = chat.send_message(prompt)
167
- out = completion.text if completion.text else "ζˆ‘δΈε€ͺζ‡‚δ»€ιΊΌζ„ζ€δΉŸ~"
168
  except:
169
  out = "εŸ·θ‘Œε‡ΊιŒ―!請換個θͺͺ法!"
170
 
 
84
  user_id = event.source.user_id
85
  chat = chat_sessions.get(user_id) or model.start_chat(history=[])
86
  chat_sessions[user_id] = chat
87
+ previous_message = get_previous_message(user_id)
88
 
89
+ user_text = event.message.text if event.message.type == "text" else None
90
+ image_url = None
91
+
92
+ if previous_message and previous_message["type"] == "image" and event.message.type == "text":
93
+ image_path = previous_message["content"]
94
+ user_text = event.message.text
95
+ store_user_message(user_id, "text", user_text)
96
+ try:
97
+ if not os.path.exists(image_path):
98
+ raise FileNotFoundError(f"εœ–η‰‡θ·―εΎ‘η„‘ζ•ˆοΌš{image_path}")
99
+ previous_img = PIL.Image.open(image_path)
100
+ completion = chat.send_message([user_text, previous_img])
101
+ out = completion.text
102
+ except Exception as e:
103
+ out = f"η™Όη”ŸιŒ―θͺ€: {e}"
104
+
105
+ # ========
106
+ # δΈŠε‚³εœ–η‰‡
107
+ # ========
108
+ elif event.message.type == "image":
109
+ image_path = get_image_url(event.message.id)
110
+ if image_path:
111
+ store_user_message(user_id, "image", image_path)
112
+ line_bot_api.reply_message(event.reply_token, TextSendMessage(text="εœ–η‰‡ε·²ζŽ₯ζ”ΆζˆεŠŸε›‰οΌŒεΉ«ζˆ‘θΌΈε…₯δ½ ζƒ³θ©’ε•ηš„ε•ι‘Œε–”~"))
113
+ else:
114
+ line_bot_api.reply_message(event.reply_token, TextSendMessage(text="ζ²’ζœ‰ζŽ₯ζ”Άεˆ°εœ–η‰‡~"))
115
+ return
116
+
117
  # ========
118
  # η”Ÿζˆεœ–η‰‡
119
  # ========
120
+ elif user_text and user_text.startswith("η”Ÿζˆεœ–η‰‡"):
 
 
121
  prompt = user_text.replace("η”Ÿζˆεœ–η‰‡", "").strip()
122
 
123
  # ε…ˆη«‹ε³ε›žθ¦†ιΏε…token過期
 
149
  TextSendMessage(text="⚠️ εœ–η‰‡η”Ÿζˆε€±ζ•—οΌŒθ«‹η¨εΎŒε†θ©¦~")
150
  )
151
  return
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
152
 
153
  # ========
154
  # η΄”ζ–‡ε­—
155
  # ========
156
+ elif event.message.type != "text" or event.message.type != "image":
 
157
  line_bot_api.reply_message(event.reply_token, TextSendMessage(text="θ«‹θΌΈε…₯ζ–‡ε­—ζˆ–εœ–η‰‡~"))
158
  return
159
+ elif event.message.text == "再見":
160
  line_bot_api.reply_message(event.reply_token, TextSendMessage(text="Bye!"))
161
  return
162
+ elif working_status:
163
+ try:
164
+ prompt = event.message.text
165
+ store_user_message(user_id, "text", prompt)
166
+ completion = chat.send_message(prompt)
167
+ out = completion.text if completion.text else "ζˆ‘δΈε€ͺζ‡‚δ»€ιΊΌζ„ζ€δΉŸ~"
168
  except:
169
  out = "εŸ·θ‘Œε‡ΊιŒ―!請換個θͺͺ法!"
170