File size: 1,985 Bytes
5f5216b
25fca04
 
 
5f5216b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
25fca04
 
5f5216b
 
 
25fca04
 
5f5216b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import streamlit as st

from prompt import get_llm_response
from post_process import process_response

# 页面配置
st.set_page_config(
    page_title="EnglishMate - 你的英语学习助手",
    page_icon="⚡",
    layout="wide"
)

# 页面标题
st.title("EnglishMate - 你的英语学习助手 ⚡")
st.markdown("输入中文,获取地道的英语表达!")

# 用户输入区域
example_text = "我昨天跟同学在西公园打篮球,我成功完成了一次暴扣。"
user_input = st.text_area("请输入你想用英语表达的内容:", value=example_text, height=150)

# 添加提交按钮
if st.button("翻译"):
    if user_input:
        with st.spinner('正在生成英语表达...'):
            # 调用LLM获取响应
            response = get_llm_response(user_input)

            english_translation, important_words = process_response(response)

            # 高亮重要单词
            for word in important_words:
                english_translation = english_translation.replace(
                    word['word_en'], f"<mark>{word['word_en']}</mark>")

            # 显示英语表达
            st.subheader("🔤 英语表达")
            st.markdown(f"<h2>{english_translation}</h2>",
                        unsafe_allow_html=True)

            # 显示重要单词
            st.subheader("📚 重要单词")
            for word in important_words:
                st.markdown(f"**{word['word_en']}** - {word['meaning_ch']}")
                st.markdown(f"{word['usage']}")

# 添加页面底部说明
st.markdown("---")
st.markdown("💡 提示:输入你想要用英语表达的中文内容,系统会帮你翻译成地道的英语表达,并分析重要词汇。")

# 添加侧边栏说明
st.sidebar.markdown("### 使用说明")
st.sidebar.markdown("1. 在文本框中输入你想要翻译的中文内容。")
st.sidebar.markdown("2. 点击“翻译”按钮。")
st.sidebar.markdown("3. 查看生成的英语表达和重要单词。")