结合上述内容,为了证明博主没有吹!上图片!

项目概述

本文介绍了一个专为坚果派组织打造的智能问答助手,该助手基于Flask框架和DeepSeek API构建,专注于解答HarmonyOS/OpenHarmony等技术问题及组织相关信息。系统具有完整的会话管理、Markdown渲染和安全防护功能。

技术栈

  • 后端框架: Flask

  • AI引擎: DeepSeek API

  • 前端技术: HTML5 + CSS3 + JavaScript

  • 安全处理: Bleach + DOMPurify

  • Markdown渲染: marked.js + Highlight.js

  • 项目可以在云主机进行启动

├── app.py                # 主应用逻辑
├── config.py             # 配置文件
├── templates
│   └── index.html        # 前端界面
└── static
    ├── marked.min.js     # Markdown解析
    ├── highlight.min.js  # 代码高亮
    └── purify.min.js     # HTML净化

核心功能实现

1. Flask应用初始化 (app.py)

 

app = Flask(__name__)
app.config.from_object(Config)

# 安全会话配置
app.config.update(
    SESSION_PERMANENT=False,
    SESSION_USE_SIGNER=True
)

# Markdown过滤器
@app.template_filter('markdown')
def markdown_filter(text):
    html = markdown.markdown(text, extensions=['extra', 'codehilite'])
    return bleach.clean(html, tags=allowed_tags, attributes=allowed_attrs)
2. DeepSeek API集成
# 初始化OpenAI客户端
client = openai.OpenAI(
    api_key=app.config["DEEPSEEK_API_KEY"],
    base_url=app.config["DEEPSEEK_BASE_URL"]
)

@app.route("/chat", methods=["POST"])
def chat():
    # 调用DeepSeek API
    response = client.chat.completions.create(
        model="deepseek-chat",
        messages=session["messages"],
        temperature=0.7,
        max_tokens=1000
    )
    return jsonify({"status": "success", "response": response.choices[0].message.content})
3. 会话管理系统
# 初始化会话
if "messages" not in session:
    session["messages"] = [
        {"role": "system", "content": "角色名称:坚果派咨询助手..."},
        {"role": "assistant", "content": "您好!我是坚果派咨询助手..."}
    ]

# 清空会话
@app.route("/clear", methods=["POST"])
def clear_chat():
    session["messages"] = [初始消息]
    session.modified = True

前端关键技术

1. 响应式消息界面
<div class="message {{ 'user' if msg.role == 'user' else 'ai' }}">
    <div class="message-content">
        {{ msg.content | markdown | safe }}
    </div>
    <div class="message-time">{{ msg.time }}</div>
</div>
2. Markdown实时渲染
function renderMarkdown(content) 
{ const cleanContent = DOMPurify.sanitize(content); 
return marked.parse(cleanContent); }

部署与运行

# 安装依赖
pip install flask openai markdown bleach

# 创建会话存储目录
mkdir sessions

# 启动应用
python app.py

技术亮点与后续完善

  1. 领域专属知识库:针对坚果派组织定制系统角色设定

  2. 安全渲染管道:Markdown → Bleach净化 → DOMPurify二次防护

  3. 渐进式反馈机制:分阶段显示处理过程提升用户体验

  4. 技术提示系统:随机展示HarmonyOS开发技巧

  5. 响应式设计:完美适配桌面和移动设备


应用场景与后续场景预告

  • 坚果派新成员技术培训

  • HarmonyOS开发问题实时解答

  • 组织历史与成就查询

  • 技术文档智能检索

  • 开发者社区支持

 有兴趣随时私信依据坚果派咨询助手构筑自己的小demo!

云主机领取链接:PC端:https://developer.huaweicloud.com/space/devportal/desktop?utm_source=csdndspace&utm_adplace=csdncxlhdp3

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐