AI-website / app.py
Rooobert's picture
Update app.py
53d08dc verified
import streamlit as st
import pandas as pd
from PIL import Image
from io import BytesIO
import base64
# 設置頁面配置
st.set_page_config(
page_title="AI助手介紹",
page_icon="🤖",
layout="wide"
)
# CSS 樣式
st.markdown("""
<style>
.header {
padding: 1.5rem 0;
text-align: center;
background-color: #4a6fa5;
color: white;
border-radius: 8px;
margin-bottom: 2rem;
}
.card {
background-color: white;
border-radius: 8px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
padding: 1.5rem;
height: 100%;
transition: transform 0.3s;
}
.card:hover {
transform: translateY(-5px);
}
.logo-placeholder {
height: 120px;
width: 120px;
background-color: #f1f1f1;
border-radius: 50%;
margin: 0 auto 15px;
display: flex;
align-items: center;
justify-content: center;
font-size: 24px;
font-weight: bold;
color: #4a6fa5;
}
.ai-name {
text-align: center;
margin: 15px 0;
color: #2c3e50;
font-size: 1.5rem;
}
.btn {
background-color: #4a6fa5;
color: white !important;
border: none;
padding: 10px 20px;
border-radius: 5px;
cursor: pointer;
text-decoration: none;
margin: 0 auto;
display: block;
width: fit-content;
text-align: center;
}
.footer {
text-align: center;
margin-top: 3rem;
padding: 1rem;
border-top: 1px solid #ddd;
color: #777;
}
h1, h2, h3 {
color: #4a6fa5;
}
h2 {
border-bottom: 2px solid #4a6fa5;
padding-bottom: 10px;
}
</style>
""", unsafe_allow_html=True)
# 頁面標題區
st.markdown('<div class="header"><h1>生成式AI工具介紹</h1><p>由伽碩職業訓練中心和黃朝健講師協力開發</p></div>', unsafe_allow_html=True)
# 介紹文字
st.markdown("""
## 認識主要AI助手
人工智能助手已經成為我們日常生活和工作中不可或缺的一部分。這些AI工具能夠理解並回應人類的問題,提供資訊,幫助完成各種任務。以下是當前最受歡迎的AI助手介紹。
""")
# AI 助手資料
ai_assistants = [
{
"name": "ChatGPT 4.0",
"logo": "GPT-4",
"developer": "OpenAI",
"description": "由OpenAI開發的大型語言模型,被廣泛認為是最強大的商業AI助手之一。",
"features": [
"多模態能力,能處理文字和圖像",
"強大的編程和推理能力",
"知識截止日期相對較新",
"提供API和插件生態系統"
],
"url": "https://chat.openai.com/",
"free_tier": "有限功能",
"paid_tier": "$20/月起",
"advantage": "全面的能力與廣泛的應用"
},
{
"name": "Claude AI",
"logo": "Claude",
"developer": "Anthropic",
"description": "由Anthropic開發的AI助手,以安全、有益和誠實的互動而著稱。",
"features": [
"超長上下文窗口(最多可達100K令牌)",
"優秀的文件分析和處理能力",
"更少的幻想內容,更高的準確性",
"在長篇創意寫作方面表現出色"
],
"url": "https://claude.ai/",
"free_tier": "基本功能",
"paid_tier": "$20/月起",
"advantage": "長上下文和文件處理"
},
{
"name": "Grok",
"logo": "Grok",
"developer": "xAI",
"description": "由xAI(Elon Musk的公司)開發的AI助手,帶有一點反叛精神和幽默感。",
"features": [
"實時網絡訪問",
"獨特的個性和幽默感",
"對當前事件的實時了解",
"提供較少的審查和更直接的回答"
],
"url": "https://grok.x.ai/",
"free_tier": "需訂閱X Premium+",
"paid_tier": "$16/月起",
"advantage": "實時網絡訪問和幽默"
},
{
"name": "Gemini",
"logo": "Gemini",
"developer": "Google",
"description": "由Google AI開發的多模態大型語言模型,前身為Bard。",
"features": [
"與Google搜索緊密集成",
"強大的多模態理解能力",
"實時網絡搜索功能",
"與Google Workspace集成"
],
"url": "https://gemini.google.com/",
"free_tier": "基本功能",
"paid_tier": "$20/月起",
"advantage": "Google生態系統集成"
},
{
"name": "Perplexity",
"logo": "Perplexity",
"developer": "Perplexity AI",
"description": "一個以回答問題為重點的AI搜索引擎,提供引用來源的答案。",
"features": [
"實時網絡搜索和引用",
"提供來源連結的答案",
"可以追問以獲取更深入的信息",
"專注於事實性查詢和研究"
],
"url": "https://www.perplexity.ai/",
"free_tier": "基本功能",
"paid_tier": "$20/月起",
"advantage": "引用來源的答案"
},
{
"name": "NotebookLM",
"logo": "NoteBook",
"developer": "Google",
"description": "由Google開發的專注於資料分析和筆記整理的AI工具。",
"features": [
"基於用戶上傳的文件生成答案",
"能夠處理多個文件並找出關聯",
"提供引用和頁碼的回答",
"適合研究和學習場景"
],
"url": "https://notebooklm.google.com/",
"free_tier": "完全免費",
"paid_tier": "暫無付費版",
"advantage": "基於用戶文件的精確答案"
}
]
# 顯示 AI 助手卡片
cols = st.columns(3) # 每行顯示3個卡片
for i, assistant in enumerate(ai_assistants):
with cols[i % 3]:
st.markdown(f"""
<div class="card">
<div class="logo-placeholder">{assistant['logo']}</div>
<h3 class="ai-name">{assistant['name']}</h3>
<p>{assistant['description']}</p>
<div>
<strong>主要特點:</strong>
<ul>
{"".join([f"<li>{feature}</li>" for feature in assistant['features']])}
</ul>
</div>
<a href="{assistant['url']}" class="btn" target="_blank">訪問網站</a>
</div>
<br>
""", unsafe_allow_html=True)
# 比較表格
st.markdown("## AI助手比較")
# 創建比較表格數據
comparison_data = {
'AI助手': [assistant['name'] for assistant in ai_assistants],
'開發商': [assistant['developer'] for assistant in ai_assistants],
'免費版': [assistant['free_tier'] for assistant in ai_assistants],
'付費版': [assistant['paid_tier'] for assistant in ai_assistants],
'主要優勢': [assistant['advantage'] for assistant in ai_assistants],
}
# 顯示比較表格
st.dataframe(pd.DataFrame(comparison_data), use_container_width=True)
# 添加互動功能 - 選擇比較
st.markdown("## 互動比較")
selected_assistants = st.multiselect(
"選擇要比較的AI助手",
[assistant['name'] for assistant in ai_assistants],
default=[assistant['name'] for assistant in ai_assistants[:2]] # 默認選擇前2個
)
# 如果有選擇的助手,顯示它們的比較
if selected_assistants:
selected_data = {
'AI助手': [],
'開發商': [],
'免費版': [],
'付費版': [],
'主要優勢': [],
}
for assistant in ai_assistants:
if assistant['name'] in selected_assistants:
selected_data['AI助手'].append(assistant['name'])
selected_data['開發商'].append(assistant['developer'])
selected_data['免費版'].append(assistant['free_tier'])
selected_data['付費版'].append(assistant['paid_tier'])
selected_data['主要優勢'].append(assistant['advantage'])
st.dataframe(pd.DataFrame(selected_data), use_container_width=True)
# AI 助手推薦
st.markdown("## AI助手推薦")
st.write("根據您的需求,我們可以推薦最適合的AI助手。")
use_case = st.selectbox(
"您主要用AI助手做什麼?",
[
"一般問答和聊天",
"編程和技術支持",
"創意寫作和內容生成",
"研究和資料整理",
"教育和學習",
"商業和專業分析"
]
)
if use_case:
recommended = None
reason = ""
if use_case == "一般問答和聊天":
recommended = "ChatGPT 4.0"
reason = "提供全面且平衡的回答,適合日常使用。"
elif use_case == "編程和技術支持":
recommended = "ChatGPT 4.0"
reason = "在程式碼生成和技術問題解答方面表現優異。"
elif use_case == "創意寫作和內容生成":
recommended = "Claude AI"
reason = "長文本處理能力強,創意寫作品質高。"
elif use_case == "研究和資料整理":
recommended = "Perplexity"
reason = "提供引用來源的詳細答案,適合研究使用。"
elif use_case == "教育和學習":
recommended = "NotebookLM"
reason = "可以基於您的學習資料提供個性化解答。"
elif use_case == "商業和專業分析":
recommended = "Claude AI"
reason = "可處理大量文件,分析能力強,適合商業場景。"
st.info(f"推薦使用: **{recommended}**\n\n原因: {reason}")
# 頁腳
st.markdown('<div class="footer"><p>© 2025 AI助手介紹網站 | 黃朝健製作</p><p>價格和功能可能隨時變更,請訪問各官方網站獲取最新信息</p></div>', unsafe_allow_html=True)