华为云主机+AI大模型=?我用Python Flask打造了「坚果派」智能咨询助手!(下篇)

举报
yd_223013467 发表于 2025/08/03 19:16:57 2025/08/03
【摘要】 结合上述内容,为了证明博主没有吹!上图片!https://blog.csdn.net/sofaer/article/details/149884377?spm=1011.2124.3001.6209项目概述本文介绍了一个专为坚果派组织打造的智能问答助手,该助手基于Flask框架和DeepSeek API构建,专注于解答HarmonyOS/OpenHarmony等技术问题及组织相关信息。系统具...

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

https://blog.csdn.net/sofaer/article/details/149884377?spm=1011.2124.3001.6209

项目概述
本文介绍了一个专为坚果派组织打造的智能问答助手,该助手基于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)
AI生成项目
python
运行

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})
AI生成项目
python
运行

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
AI生成项目
python
运行

前端关键技术
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>
AI生成项目
python
运行
2. Markdown实时渲染
function renderMarkdown(content) 
{ const cleanContent = DOMPurify.sanitize(content); 
return marked.parse(cleanContent); }
AI生成项目
python
运行
部署与运行
# 安装依赖
pip install flask openai markdown bleach

# 创建会话存储目录
mkdir sessions

# 启动应用
python app.py
技术亮点与后续完善
领域专属知识库:针对坚果派组织定制系统角色设定

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

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

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

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

应用场景与后续场景预告
坚果派新成员技术培训

HarmonyOS开发问题实时解答

组织历史与成就查询

技术文档智能检索

开发者社区支持

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

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

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/sofaer/article/details/149884377

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。