当前位置: 首页 > news >正文

怎样用手机建个人网站开发一个交友软件需要多少钱

怎样用手机建个人网站,开发一个交友软件需要多少钱,天猫商城上一年度市场份额,平台网站应该怎样做seo目前已经有很多类似GPT的大模型开源,可以提供类似ChatGPT的智能问答功能。我也基于这些开源模型,用Flask来建立一个智能问答网站,可以方便用户建立自己的ChatGPT系统。 这个网站需要提供用户登录功能,对已登录的用户,可以在网站上提出问题,并由大模型处理后返回答案。演…

目前已经有很多类似GPT的大模型开源,可以提供类似ChatGPT的智能问答功能。我也基于这些开源模型,用Flask来建立一个智能问答网站,可以方便用户建立自己的ChatGPT系统。

这个网站需要提供用户登录功能,对已登录的用户,可以在网站上提出问题,并由大模型处理后返回答案。演示效果如下:

chatbot_

FLASK APP配置

先定义一个config.py文件,里面定义Flask APP的secret key和数据库的配置,这里简单起见采用SQLITE作为数据库,用来存储用户数据:

import os
basedir = os.path.abspath(os.path.dirname(__file__))class Config:SECRET_KEY = "some words hard to guess"SQLALCHEMY_TRACK_MODIFICATIONS = False@staticmethoddef init_app(app):passclass DevelopmentConfig(Config):SQLALCHEMY_DATABASE_URI = "sqlite:///" + os.path.join(basedir, 'data.sqlite')config = {'dev': DevelopmentConfig,'default': DevelopmentConfig
}

定义Flask App

新建一个app目录,然后新建一个__init__.py文件,内容如下:

from flask import Flask
from flask_bootstrap import Bootstrap4 
from flask_moment import Moment
from flask_sqlalchemy import SQLAlchemy 
from flask_login import LoginManager
from flask_toastr import Toastr
from flask_wtf.csrf import CSRFProtect
from config import config bootstrap = Bootstrap4()
moment = Moment()
db = SQLAlchemy()
login_manager = LoginManager()
login_manager.login_view = 'auth.login'
toastr = Toastr()
csrf = CSRFProtect()def create_app(config_name):app = Flask(__name__)app.config.from_object(config[config_name])app.config.update(TOASTR_POSITION_CLASS = 'toast-top-center')bootstrap.init_app(app)moment.init_app(app)db.init_app(app)login_manager.init_app(app)toastr.init_app(app)csrf.init_app(app)from .main import main as main_blueprintapp.register_blueprint(main_blueprint)from .auth import auth as auth_blueprintapp.register_blueprint(auth_blueprint, url_prefix='/auth')return app

这里定义了我们需要用到的Flask扩展并进行实例化,然后也用到了blueprint来管理路由。

定义用户数据模型

在app目录新建一个models.py文件,定义用户数据模型,内容如下:

from flask_login import UserMixin
from werkzeug.security import generate_password_hash, check_password_hash
from . import db
from . import login_managerclass User(UserMixin, db.Model):__tablename__ = 'users'id = db.Column(db.Integer, primary_key=True)username = db.Column(db.String(64), unique=True, index=True)password_hash = db.Column(db.String(128))@propertydef password(self):raise AttributeError("password is not a readable attribute")@password.setterdef password(self, password):self.password_hash = generate_password_hash(password)def verify_password(self, password):return check_password_hash(self.password_hash, password)def __repr__(self):return '<User %r>' % self.username@login_manager.user_loader
def load_user(user_id):return User.query.get(int(user_id))

在这个文件里,定义了一张名为users的数据表,里面有用户名和password_hash这两个字段。用户的密码将通过werkzeug提供的功能来进行hash以提高安全性。这样即使数据库泄漏,其他人也无法通过password_hash来获取原密码。

用户登录功能

在app目录下新建一个auth目录,新建一个__init__.py文件,定义蓝图

from flask import Blueprint auth = Blueprint('auth', __name__)
from . import views

采用flask_wtf这个扩展来实现我们的登录表单和验证。在auth目录新建一个form.py文件,内容如下:

from flask_wtf import FlaskForm
from wtforms import StringField, PasswordField, BooleanField, SubmitField
from wtforms.validators import DataRequired, Length, Emailclass LoginForm(FlaskForm):username = StringField('Username', validators=[DataRequired(), Length(1, 64)], name="username")password = PasswordField('Password', validators=[DataRequired()], name="password")remember_me = BooleanField('Keep me logged in', name="remember_me")submit = SubmitField('Log In')

创建一个views

http://www.yayakq.cn/news/689714/

相关文章:

  • 做网站能带来什么问题搜索引擎平台有哪些
  • 组合图片可以用在网站做链接吗go网站开发
  • 德州万企互联网站制作网站建设结构设计
  • 做公司网站需要多长时间做网站 传视频 用什么笔记本好
  • 网站册数看房自己的网站建设多少钱
  • 工程建设业主官方网站wordpress速度好慢
  • 做设计找图有哪些网站有哪些金华网站制作价格
  • 在excel表里做网站模板盘锦注册公司
  • 网站百度收录是什么意思个人网页设计作品欣赏图片
  • 包头企业微网站开发个人网站备案备注
  • 昆明高端网站建设个人电子商务网站 制作
  • 白云手机网站建设深圳建科院公司网站
  • 九江市建设规划局网站标识标牌
  • 住房和城乡建设部网站八大员电子商务网站名称和网址
  • 中式建筑公司网站平台型网站建设方案
  • 自己做视频网站的流程河池网站seo
  • 国内外网站开发的现状住小帮装修效果图
  • 查询网站网站seo搜索
  • 网站外包多少人做毕业网站设计代做
  • 怎么让付费网站免费长沙公司网站制作
  • 大连建站平台中国交通建设监理协会官方网站
  • 四川省城乡建设信息网站证件查询中小互联网企业有哪些
  • 网站建设与设计ppt模板网页设计与制作教程的页数是
  • 装饰网站建设流程wordpress数据备份文件夹
  • 网站右侧浮动广告做公司网站排名
  • 合作网站建设网页设计与网页制作
  • 怎么给网站命名网站建设推荐华网天下
  • 校园网站建设的意见与建议商务网站建设ppt
  • 美容网站设计域名查询解析
  • 群晖做网站wordpress底部版权怎么添加