import requests from config import API_URL, HEADERS # 轉換英文分類為中文 def translate_sentiment(label): if "positive" in label.lower(): return "😃 **正向**" elif "neutral" in label.lower(): return "😐 **中立**" else: return "😡 **負向**" # 轉換信心度為更直觀的等級(加上百分比) def convert_confidence(score): percentage = round(score * 100) if score >= 0.90: return f"🌟 **極高信心** ({percentage}%)" elif score >= 0.75: return f"✅ **高信心** ({percentage}%)" elif score >= 0.50: return f"⚠️ **中等信心** ({percentage}%)" elif score >= 0.30: return f"❓ **低信心** ({percentage}%)" else: return f"❌ **極低信心(建議忽略)** ({percentage}%)" # 調用 Hugging Face API 進行情緒分析 def analyze_sentiment(text): try: response = requests.post(API_URL, headers=HEADERS, json={"inputs": text}) result = response.json() if isinstance(result, list) and len(result) > 0: sentiment = translate_sentiment(result[0]["label"]) confidence = result[0]["score"] confidence_label = convert_confidence(confidence) return f"**情緒分類**: {sentiment}\n**AI判斷的信心度為**: {confidence_label}" else: return "⚠️ **無法分析文本,請稍後再試**" except Exception as e: return f"❌ **錯誤**: {str(e)}"