Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
|
@@ -38,14 +38,19 @@ def predict(image_input, question):
|
|
| 38 |
# 修正:使用 text 參數而不是直接傳遞 messages
|
| 39 |
result = pipe(text=messages)
|
| 40 |
|
| 41 |
-
#
|
| 42 |
-
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
if
|
| 46 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 47 |
|
| 48 |
-
#
|
| 49 |
if isinstance(result, list):
|
| 50 |
for message in result:
|
| 51 |
if isinstance(message, dict) and message.get("role") == "assistant":
|
|
|
|
| 38 |
# 修正:使用 text 參數而不是直接傳遞 messages
|
| 39 |
result = pipe(text=messages)
|
| 40 |
|
| 41 |
+
# 修正輸出格式:處理新的結果格式
|
| 42 |
+
# 檢查是否是新格式:包含 generated_text 的 dict
|
| 43 |
+
if isinstance(result, list) and len(result) > 0 and isinstance(result[0], dict):
|
| 44 |
+
first_result = result[0]
|
| 45 |
+
if "generated_text" in first_result:
|
| 46 |
+
generated_text = first_result["generated_text"]
|
| 47 |
+
# generated_text 是一個 list,找到 assistant 的回應
|
| 48 |
+
if isinstance(generated_text, list):
|
| 49 |
+
for message in generated_text:
|
| 50 |
+
if isinstance(message, dict) and message.get("role") == "assistant":
|
| 51 |
+
return message.get("content", "無法獲取回應")
|
| 52 |
|
| 53 |
+
# 備用:舊格式處理
|
| 54 |
if isinstance(result, list):
|
| 55 |
for message in result:
|
| 56 |
if isinstance(message, dict) and message.get("role") == "assistant":
|