Spaces:
Sleeping
Sleeping
import streamlit as st | |
from groq import Groq | |
import time | |
from datetime import datetime | |
# Thiết lập trang | |
st.set_page_config( | |
page_title="Chiến Lược Kinh Doanh Chuyên Nghiệp", | |
page_icon="📈", | |
layout="wide", | |
initial_sidebar_state="expanded" | |
) | |
# CSS tùy chỉnh nâng cao | |
st.markdown(""" | |
<style> | |
.stTextInput input, .stTextArea textarea, .stSelectbox select { | |
border-radius: 10px !important; | |
padding: 12px !important; | |
border: 1px solid #e0e0e0 !important; | |
} | |
.stButton button { | |
width: 100%; | |
border-radius: 10px; | |
padding: 12px; | |
background-color: #4a6fa5; | |
color: white; | |
font-weight: bold; | |
transition: all 0.3s; | |
border: none; | |
} | |
.stButton button:hover { | |
background-color: #3a5a80; | |
transform: translateY(-2px); | |
box-shadow: 0 4px 8px rgba(0,0,0,0.1); | |
} | |
.stMarkdown h1, .stMarkdown h2, .stMarkdown h3 { | |
color: #4a6fa5; | |
} | |
.stExpander { | |
border-radius: 10px !important; | |
border: 1px solid #e0e0e0 !important; | |
} | |
.stProgress > div > div > div { | |
background-color: #4a6fa5 !important; | |
} | |
.sidebar .sidebar-content { | |
background-color: #f8f9fa; | |
} | |
[data-testid="stSidebar"] { | |
background-color: #f8f9fa !important; | |
} | |
</style> | |
""", unsafe_allow_html=True) | |
# Khởi tạo Groq client | |
client = Groq(api_key=st.secrets["GROQ_API_KEY"]) | |
# Sidebar với thông tin công ty | |
with st.sidebar: | |
st.image("https://via.placeholder.com/150x50?text=Business+Strategy", width=150) | |
st.markdown(""" | |
### Công Cụ Chiến Lược Kinh Doanh | |
Phiên bản: 2.0 | |
Ngày cập nhật: """ + datetime.now().strftime("%d/%m/%Y") + """ | |
--- | |
""") | |
st.markdown(""" | |
**Hướng dẫn sử dụng:** | |
1. Điền đầy đủ thông tin doanh nghiệp | |
2. Chọn loại chiến lược cần tư vấn | |
3. Nhấn nút "Tạo Chiến Lược" | |
4. Xem và tải về kết quả | |
""") | |
st.markdown("---") | |
st.markdown(""" | |
**Hỗ trợ:** | |
📞 1900 1234 | |
✉️ [email protected] | |
""") | |
# Tiêu đề ứng dụng | |
st.title("📊 Công Cụ Xây Dựng Chiến Lược Kinh Doanh") | |
st.markdown(f""" | |
<div style="background-color:#f0f5ff;padding:20px;border-radius:10px;margin-bottom:20px"> | |
<h4 style="color:#4a6fa5">Giải pháp toàn diện cho chiến lược kinh doanh - Tối ưu hóa hiệu quả với AI</h4> | |
</div> | |
""", unsafe_allow_html=True) | |
# Tabs cho các loại chiến lược | |
tab1, tab2, tab3, tab4 = st.tabs([ | |
"📌 Thông Tin Doanh Nghiệp", | |
"🎯 Phân Tích Thị Trường", | |
"🚀 Chiến Lược Phát Triển", | |
"📅 Kế Hoạch Hành Động" | |
]) | |
with tab1: | |
# Phần nhập thông tin doanh nghiệp | |
with st.expander("🏢 THÔNG TIN DOANH NGHIỆP", expanded=True): | |
col1, col2 = st.columns(2) | |
with col1: | |
company_name = st.text_input("Tên doanh nghiệp") | |
company_age = st.selectbox("Thời gian hoạt động", | |
["Dưới 1 năm", "1-3 năm", "3-5 năm", "Trên 5 năm"]) | |
industry = st.selectbox("Ngành nghề kinh doanh", [ | |
"Bán lẻ", "Dịch vụ", "Sản xuất", "Công nghệ", | |
"Thực phẩm & Đồ uống", "Giáo dục", "Y tế", "Khác" | |
]) | |
with col2: | |
revenue = st.selectbox("Doanh thu hàng năm", [ | |
"Dưới 1 tỷ", "1-5 tỷ", "5-10 tỷ", "10-50 tỷ", "Trên 50 tỷ" | |
]) | |
employee_count = st.selectbox("Số lượng nhân viên", [ | |
"1-10", "11-50", "51-100", "101-500", "Trên 500" | |
]) | |
business_model = st.selectbox("Mô hình kinh doanh", [ | |
"B2B", "B2C", "B2B2C", "Marketplace", "Subscription", "Khác" | |
]) | |
# Phần nhập thông tin khách hàng | |
with st.expander("👥 KHÁCH HÀNG MỤC TIÊU"): | |
target_audience = st.text_area( | |
"Mô tả chi tiết khách hàng mục tiêu", | |
placeholder="Ví dụ: Nam/Nữ, độ tuổi, thu nhập, thói quen mua sắm, nhu cầu, pain points...", | |
height=120 | |
) | |
col1, col2 = st.columns(2) | |
with col1: | |
customer_location = st.text_input("Khu vực địa lý khách hàng") | |
with col2: | |
customer_channel = st.multiselect( | |
"Kênh tiếp cận khách hàng chính", | |
["Facebook", "Zalo", "Tiktok", "Website", "Cửa hàng", "Đại lý", "Khác"] | |
) | |
with tab2: | |
# Phần phân tích thị trường | |
with st.expander("🔍 PHÂN TÍCH SWOT", expanded=True): | |
col1, col2, col3, col4 = st.columns(4) | |
with col1: | |
strengths = st.text_area("Điểm mạnh (Strengths)", height=150) | |
with col2: | |
weaknesses = st.text_area("Điểm yếu (Weaknesses)", height=150) | |
with col3: | |
opportunities = st.text_area("Cơ hội (Opportunities)", height=150) | |
with col4: | |
threats = st.text_area("Thách thức (Threats)", height=150) | |
with st.expander("📊 ĐỐI THỦ CẠNH TRANH"): | |
competitors = st.text_area( | |
"Mô tả các đối thủ cạnh tranh chính", | |
placeholder="Liệt kê 3-5 đối thủ chính, điểm mạnh/yếu của họ...", | |
height=100 | |
) | |
competitive_advantage = st.text_area( | |
"Lợi thế cạnh tranh của bạn", | |
placeholder="Điểm khác biệt giúp bạn vượt trội so với đối thủ...", | |
height=100 | |
) | |
with tab3: | |
# Phần chiến lược phát triển | |
strategy_type = st.selectbox( | |
"Loại chiến lược cần tư vấn", | |
["Chiến lược Marketing", "Chiến lược Bán hàng", "Chiến lược Sản phẩm", | |
"Chiến lược Giá cả", "Chiến lược Phân phối", "Chiến lược Tăng trưởng"] | |
) | |
with st.expander("🎯 MỤC TIÊU CHIẾN LƯỢC"): | |
time_frame = st.selectbox("Khung thời gian", [ | |
"3 tháng", "6 tháng", "1 năm", "3 năm", "5 năm" | |
]) | |
goals = st.text_area( | |
"Mục tiêu cụ thể (SMART)", | |
placeholder="Ví dụ: Tăng doanh thu 30% trong 6 tháng tới, mở rộng thị phần lên 15%...", | |
height=100 | |
) | |
with st.expander("📈 CHỈ SỐ ĐO LƯỜNG (KPI)"): | |
kpis = st.text_area( | |
"Các chỉ số đánh giá hiệu quả", | |
placeholder="Ví dụ: Tỷ lệ chuyển đổi, Doanh thu, Số lượng khách hàng mới...", | |
height=100 | |
) | |
with tab4: | |
# Phần kế hoạch hành động | |
with st.expander("📅 KẾ HOẠCH TRIỂN KHAI"): | |
action_plan = st.text_area( | |
"Các bước triển khai chính", | |
placeholder="Liệt kê các hoạt động chính cần thực hiện...", | |
height=120 | |
) | |
budget = st.number_input( | |
"Ngân sách dự kiến (triệu đồng)", | |
min_value=0, | |
value=100 | |
) | |
with st.expander("🛠 NGUỒN LỰC CẦN THIẾT"): | |
resources = st.text_area( | |
"Nguồn lực cần chuẩn bị", | |
placeholder="Nhân lực, tài chính, công nghệ, đối tác...", | |
height=100 | |
) | |
# Nút tạo chiến lược ở vị trí cố định | |
st.markdown(""" | |
<style> | |
.fixed-button { | |
position: fixed; | |
bottom: 20px; | |
right: 20px; | |
z-index: 100; | |
} | |
</style> | |
""", unsafe_allow_html=True) | |
st.markdown('<div class="fixed-button"></div>', unsafe_allow_html=True) | |
if st.button('🚀 TẠO CHIẾN LƯỢC KINH DOANH', type="primary", key="generate_button"): | |
if not company_name: | |
st.warning("Vui lòng nhập tên doanh nghiệp") | |
st.stop() | |
if not target_audience: | |
st.warning("Vui lòng mô tả khách hàng mục tiêu") | |
st.stop() | |
with st.spinner("AI đang phân tích và xây dựng chiến lược tối ưu cho doanh nghiệp của bạn..."): | |
progress_bar = st.progress(0) | |
# Tạo prompt chuyên sâu cho chiến lược kinh doanh | |
prompt_text = f""" | |
Hãy xây dựng một chiến lược kinh doanh toàn diện cho công ty {company_name} hoạt động trong ngành {industry} với các yêu cầu sau: | |
1. Thông tin doanh nghiệp: | |
- Thời gian hoạt động: {company_age} | |
- Mô hình kinh doanh: {business_model} | |
- Doanh thu: {revenue} | |
- Số nhân viên: {employee_count} | |
2. Khách hàng mục tiêu: | |
- {target_audience} | |
- Khu vực địa lý: {customer_location} | |
- Kênh tiếp cận: {', '.join(customer_channel) if customer_channel else 'Chưa xác định'} | |
3. Phân tích SWOT: | |
- Điểm mạnh: {strengths} | |
- Điểm yếu: {weaknesses} | |
- Cơ hội: {opportunities} | |
- Thách thức: {threats} | |
4. Đối thủ cạnh tranh: {competitors} | |
Lợi thế cạnh tranh: {competitive_advantage} | |
5. Chiến lược {strategy_type} cho khung thời gian {time_frame}: | |
- Mục tiêu: {goals} | |
- KPI đo lường: {kpis} | |
6. Kế hoạch hành động: | |
- Các bước triển khai: {action_plan} | |
- Ngân sách: {budget} triệu đồng | |
- Nguồn lực cần thiết: {resources} | |
Yêu cầu chi tiết: | |
- Định dạng bằng tiếng Việt, rõ ràng, chuyên nghiệp | |
- Bao gồm các phần: | |
* Tóm tắt chiến lược | |
* Phân tích thị trường | |
* Chiến lược cụ thể | |
* Kế hoạch triển khai | |
* Ngân sách và ROI dự kiến | |
* Rủi ro và giải pháp | |
- Đưa ra các giải pháp sáng tạo, khả thi | |
- Kết hợp xu hướng mới nhất trong ngành | |
- Ưu tiên các giải pháp số hóa và tối ưu chi phí | |
- Đề xuất timeline cụ thể | |
""" | |
# Hiệu ứng loading | |
for i in range(10): | |
progress_bar.progress((i + 1) * 10) | |
time.sleep(0.2) | |
# Gọi API Groq để tạo chiến lược | |
try: | |
chat_completion = client.chat.completions.create( | |
messages=[ | |
{ | |
"role": "system", | |
"content": """ | |
Bạn là chuyên gia tư vấn chiến lược kinh doanh với 20 năm kinh nghiệm. | |
Bạn am hiểu sâu về tất cả các ngành nghề và có khả năng đưa ra các | |
chiến lược sáng tạo, khả thi và hiệu quả. Hãy phân tích kỹ lưỡng và | |
đưa ra các giải pháp tối ưu nhất cho doanh nghiệp, kết hợp giữa | |
phương pháp truyền thống và công nghệ số. | |
""" | |
}, | |
{ | |
"role": "user", | |
"content": prompt_text | |
} | |
], | |
model="meta-llama/Llama-4-Maverick-17B-128E-Instruct", | |
temperature=0.7, | |
max_tokens=4000 | |
) | |
business_strategy = chat_completion.choices[0].message.content | |
# Hiển thị kết quả | |
st.success("✅ Chiến lược kinh doanh đã sẵn sàng!") | |
st.balloons() | |
with st.expander(f"📋 CHIẾN LƯỢC KINH DOANH - {company_name.upper()}", expanded=True): | |
st.markdown(business_strategy) | |
# Tải về file | |
st.download_button( | |
label="📥 Tải về báo cáo đầy đủ", | |
data=business_strategy, | |
file_name=f"Chien_luoc_kinh_doanh_{company_name}_{datetime.now().strftime('%Y%m%d')}.docx", | |
mime="application/vnd.openxmlformats-officedocument.wordprocessingml.document" | |
) | |
# Thêm phần đánh giá | |
st.markdown("---") | |
st.subheader("Đánh giá chiến lược") | |
col1, col2, col3 = st.columns(3) | |
with col1: | |
st.select_slider("Mức độ khả thi", options=["Thấp", "Trung bình", "Cao"], value="Cao") | |
with col2: | |
st.select_slider("Tiềm năng hiệu quả", options=["Thấp", "Trung bình", "Cao"], value="Cao") | |
with col3: | |
st.select_slider("Mức độ sáng tạo", options=["Thấp", "Trung bình", "Cao"], value="Cao") | |
st.text_area("Nhận xét của bạn về chiến lược này", placeholder="Ghi lại các ý kiến đánh giá...") | |
except Exception as e: | |
st.error(f"⚠️ Có lỗi xảy ra khi tạo chiến lược: {str(e)}") | |
# Footer chuyên nghiệp | |
st.markdown("---") | |
st.markdown(""" | |
<div style="text-align: center; color: #4a6fa5; padding: 20px"> | |
<p style="font-size: 14px">© 2024 Business Strategy AI Tool - Phiên bản Pro</p> | |
<p style="font-size: 12px">Công cụ này sử dụng AI mạnh mẽ để phân tích và đề xuất chiến lược kinh doanh tối ưu</p> | |
</div> | |
""", unsafe_allow_html=True) |