基于python的问答对联生成系统 附完整代码 毕业设计

简介: 基于python的问答对联生成系统 附完整代码 毕业设计

软件标题:智能对联生成系统


b 系统概述


  • 使用项目:智能对联生成系统
  • 软件用途:通过网页端可以获取到根据已有上联只能生成的下联。
  • 开发历史:本项目未曾有前置版本。但在服务器搭建,Tensorflow 使用上已有经验。
  • 投资方:开发小组自费
  • 需方:西安电子科技大学计算机科学与技术学院软件工程课程
  • 用户:网页使用者
  • 开发方:开发小组,成员:张笑天,王重阳,王艺静,张震宇
  • 支持机构:西安电子科技大学计算机科学与技术学院软件工程
  • 当前运行现场:虚拟机 VMWare 中 Ubuntu 19.10,Windows 10 平台 Anaconda
  • 计划运行现场:阿里云 Ubuntu 18.04


c 文档概述


本文档为项目 智能对联生成系统 的软件设计说明,用于描述对计算机软件配置项 CSCI 的设计,它描述了 CSCI 级设计决策、CSCI 体系结构设计(概要设计)和实现该软件所需的详细设计。


保密性:该文档可以公开于网络,但应注意项目以及该文档本身均遵循 GPLv3 协议开源。

http://www.gnu.org/licenses/quick-guide-gplv3.html

d 基线

2 引用文件


GPLv3 协议:http://www.gnu.org/licenses/quick-guide-gplv3.html

3 软件综述


a 软件应用

用户可以在网页上方便地输入自自定义的上联得到下联,起到丰富精神生活作用。

b 软件清单

支持 HTML5 的浏览器,例如 Google Chrome。

c 软件环境

可以访问互联网。

d 软件组织和操作概述

i 软件逻辑部件

627dcbff60f9dcac3019ce431ff45846.png


自上而下为软件的标题,软件的输入提示,软件的输入文本框,软件的互动按钮和软件的使用提示。

在交互之后,得到的是



65a41b0b1dbe68978b86d40528870128.png

自上而下分别为软件的使用结果(或者错误提示),软件的使用提示,输入文本框,软件的互动按钮。


交互之后得到同上界面。


ii 用户期望的性能特性


可接受输入:根据提示为七个以下汉字。


输出类型:对应数量的汉字或者输入错误提示。


响应时间:10s 左右,同时也与服务器负载、用户网络状况有关系。


处理时间:10s 左右,取决于服务器 CPU 性能。


限制:使用用户过多,nginx 会触发保护机制,返回错误 504


预期的错误率:在高负载下 nginx 报错 504,但是不会造成服务器崩溃。


预期的可靠性:同上。


iii 组长负责服务器的购买与维护。

iv 监督措施:服务器的安全口令与提供商阿里云的安全措施。

e 意外事故以及运行的备用状态和方式。


在高负载下 nginx 报错 504

f 保密性与私密性

本文档根据 GPLv3 开源,保密性由开源协议保护。

安全性与私密性由 Nginx 反向代理和 Django 以及服务器提供商即阿里云的安全措施保护。

g 帮助和问题报告

在输入错误时给予用户正确输入提示。用户可以通过点击源代码按钮联系作者。

4 访问软件


a 软件的首次用户

i 熟悉设备

熟悉浏览器即可

ii 访问控制

任何连接互联网用户均可访问,用户自己访问内容由 HTTPS 加密协议保证,在服务器保密由服务器安全措施保证。

iii 安装和设置

同浏览器的安装与设置。

b 启动过程

在浏览器中输入网址:https://enigmazhang.tech/couplet/main/

iv 停止和挂起工作

关闭浏览器标签页即可。

5 软件使用指南


a 能力

用户根据提示在输入框中输入上联,通过提交按钮或者快捷键提交上联到服务器,等待页面跳转之后得到下联或者对于用户操作的提示;随后用户可以继续在输入框中输入上联。

b 约定

详见软件设计文档。

c 处理过程

用户根据提示在输入框中输入上联,通过提交按钮或者快捷键提交上联到服务器,等待页面跳转之后得到下联或者对于用户操作的提示;随后用户可以继续在输入框中输入上联。

d 相关处理位于浏览器端和服务器端

浏览器根据前端脚本和文件进行渲染并且与服务器交互;服务器根据前端信息得到上联向前端发送下联。

f 错误、故障和紧急情况时的恢复

当服务器负载过大时,由 nginx 报错 504,防止服务器崩溃。

如果服务器意外崩溃,必须由开发者手动重启服务。


g 消息


Nginx504 错误:提示用户当前负载过大超时,请稍后再尝试。

用户输入格式错误:提示用户“请输入七个及以下汉字”


6 注解


  • NLP:自然语言处理
  • 云服务器(ECS): 一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务
  • CPU:中央处理器,计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元
  • GPU:图形处理器,一种专门在个人电脑、工作站、游戏机和一些移动设备上做图像和图形相关运算工作的微处理器。
  • :一系列基于 Intel 8086 且向后兼容的中央处理器指令集架构
  • Linux:一套免费使用和自由传播的类 UNIX 操作系统。
  • Ubuntu:一个以桌面应用为主的 Linux 操作系统。
  • Windows:美国微软公司研发的一套操作系统
  • Python:一种跨平台的计算机程序设计语言
  • VMware Workstation:一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统
  • Anaconda:开源的 Python 包管理器
  • Tensorflow:TensorFlow 是一个基于数据流编程的符号数学系统
  • PyTorch:是一个开源的 Python 机器学习库
  • GPL:GNU General Public License,GNU 通用公共许可证
  • IDE:集成开发环境,Integrated Development Environment 是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具
  • PyCharm:一种 Python 集成开发工具
  • IDLE:Integrated Development and Learning Environment,集成开发和学习环境,是 Python 的集成开发环境
  • Visual Studio:美国微软公司的开发工具包系列产品
  • Visual Studio Code:跨平台源代码编辑器
  • VIM:功能强大、高度可定制的文本编辑器
  • Google Chrome:是一款由 Google 公司开发的网页浏览器
  • Firefox:是一个自由及开放源代码的网页浏览器
  • Microsoft Edge:是一款由 Microsoft 公司开发的网页浏览器
  • Git:一个开源的分布式版本控制系统
  • GitHub:一个面向开源及私有软件项目的托管平台
  • Nginx:一个高性能的 HTTP 和反向代理 Web 服务器
  • uWsgi:一个 Web 服务器与 Web 应用通信的规范实现
  • Django:一个开放源代码的 Web 应用框架
  • Flask:一个使用 Python 编写的轻量级 Web 应用框架
  • HTML5:超文本标记语言 5,构建 Web 内容的一种语言描述方式
  • CSS:层叠样式表,Cascading Style Sheets 是一种用来表现 HTML 或 XML 等文件样式的计算机语言
  • JavaScript:是一种具有函数优先的轻量级,解释型或即时编译型的编程语言
  • Tensor2Tensor:一套基于 TensorFlow 的深度学习系统

完整代码:https://download.csdn.net/download/qq_38735017/87382432

相关文章
|
5天前
|
机器学习/深度学习 数据采集 供应链
使用Python实现智能食品安全追溯系统的深度学习模型
使用Python实现智能食品安全追溯系统的深度学习模型
23 4
|
12天前
|
缓存 监控 测试技术
Python中的装饰器:功能扩展与代码复用的利器###
本文深入探讨了Python中装饰器的概念、实现机制及其在实际开发中的应用价值。通过生动的实例和详尽的解释,文章展示了装饰器如何增强函数功能、提升代码可读性和维护性,并鼓励读者在项目中灵活运用这一强大的语言特性。 ###
|
15天前
|
缓存 开发者 Python
探索Python中的装饰器:简化代码,增强功能
【10月更文挑战第35天】装饰器在Python中是一种强大的工具,它允许开发者在不修改原有函数代码的情况下增加额外的功能。本文旨在通过简明的语言和实际的编码示例,带领读者理解装饰器的概念、用法及其在实际编程场景中的应用,从而提升代码的可读性和复用性。
|
12天前
|
Python
探索Python中的装饰器:简化代码,提升效率
【10月更文挑战第39天】在编程的世界中,我们总是在寻找使代码更简洁、更高效的方法。Python的装饰器提供了一种强大的工具,能够让我们做到这一点。本文将深入探讨装饰器的基本概念,展示如何通过它们来增强函数的功能,同时保持代码的整洁性。我们将从基础开始,逐步深入到装饰器的高级用法,让你了解如何利用这一特性来优化你的Python代码。准备好让你的代码变得更加优雅和强大了吗?让我们开始吧!
19 1
|
17天前
|
设计模式 缓存 监控
Python中的装饰器:代码的魔法增强剂
在Python编程中,装饰器是一种强大而灵活的工具,它允许程序员在不修改函数或方法源代码的情况下增加额外的功能。本文将探讨装饰器的定义、工作原理以及如何通过自定义和标准库中的装饰器来优化代码结构和提高开发效率。通过实例演示,我们将深入了解装饰器的应用,包括日志记录、性能测量、事务处理等常见场景。此外,我们还将讨论装饰器的高级用法,如带参数的装饰器和类装饰器,为读者提供全面的装饰器使用指南。
|
12天前
|
存储 缓存 监控
掌握Python装饰器:提升代码复用性与可读性的利器
在本文中,我们将深入探讨Python装饰器的概念、工作原理以及如何有效地应用它们来增强代码的可读性和复用性。不同于传统的函数调用,装饰器提供了一种优雅的方式来修改或扩展函数的行为,而无需直接修改原始函数代码。通过实际示例和应用场景分析,本文旨在帮助读者理解装饰器的实用性,并鼓励在日常编程实践中灵活运用这一强大特性。
|
12天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
43 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
|
12天前
|
机器学习/深度学习 人工智能 算法
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
蔬菜识别系统,本系统使用Python作为主要编程语言,通过收集了8种常见的蔬菜图像数据集('土豆', '大白菜', '大葱', '莲藕', '菠菜', '西红柿', '韭菜', '黄瓜'),然后基于TensorFlow搭建卷积神经网络算法模型,通过多轮迭代训练最后得到一个识别精度较高的模型文件。在使用Django开发web网页端操作界面,实现用户上传一张蔬菜图片识别其名称。
52 0
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
|
14天前
|
机器学习/深度学习 数据采集 人工智能
探索机器学习:从理论到Python代码实践
【10月更文挑战第36天】本文将深入浅出地介绍机器学习的基本概念、主要算法及其在Python中的实现。我们将通过实际案例,展示如何使用scikit-learn库进行数据预处理、模型选择和参数调优。无论你是初学者还是有一定基础的开发者,都能从中获得启发和实践指导。
31 2
|
6天前
|
存储 数据挖掘 开发者
Python编程入门:从零到英雄
在这篇文章中,我们将一起踏上Python编程的奇幻之旅。无论你是编程新手,还是希望拓展技能的开发者,本教程都将为你提供一条清晰的道路,引导你从基础语法走向实际应用。通过精心设计的代码示例和练习,你将学会如何用Python解决实际问题,并准备好迎接更复杂的编程挑战。让我们一起探索这个强大的语言,开启你的编程生涯吧!
下一篇
无影云桌面