WebUI可视化:第6章:项目实战:智能问答系统开发
第6章:项目实战:智能问答系统开发
学习目标
-
✅ 完整实现前后端分离的问答系统
-
✅ 掌握本地AI模型的集成方法
-
✅ 实现对话历史管理功能
-
✅ 完成系统部署与性能优化
6.1 项目整体设计
6.1.1 系统架构
graph TDA[用户界面] -->|输入问题| B(Web服务器)B -->|调用模型| C[本地AI模型]C -->|返回答案| BB -->|显示结果| AD[数据库] -->|存储记录| B
6.1.2 技术选型
模块 | 技术方案 | 说明 |
---|---|---|
前端界面 | Gradio | 快速搭建交互界面 |
后端逻辑 | FastAPI | 高性能API框架 |
AI模型 | ChatGLM-6B | 开源中文对话模型 |
数据存储 | SQLite | 轻量级本地数据库 |
部署工具 | Docker + Nginx | 容器化与反向代理 |
6.2 环境准备
6.2.1 硬件要求
-
CPU:Intel i7 10代以上
-
内存:至少16GB
-
GPU:NVIDIA RTX 3060(可选,加速推理)
6.2.2 软件安装
bash
# 创建虚拟环境 python -m venv qa_env source qa_env/bin/activate # Linux/Mac qa_env\Scripts\activate # Windows# 安装核心依赖 pip install fastapi uvicorn gradio sqlalchemy torch transformers
6.3 数据库设计
6.3.1 创建对话记录表
新建 database.py
:
python
from sqlalchemy import create_eng