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

网站开发开始阶段的主要任务包括( )如何在建设银行网站查企业年金

网站开发开始阶段的主要任务包括( ),如何在建设银行网站查企业年金,江苏省建设执业网站,长沙招聘服务网#x1f525;博客主页#xff1a;真的睡不醒 #x1f680;系列专栏#xff1a;深度学习环境搭建、环境配置问题解决、自然语言处理、语音信号处理、项目开发 #x1f498;每日语录#xff1a;相信自己#xff0c;一路风景一路歌#xff0c;人生之美#xff0c;正在于… 博客主页真的睡不醒 系列专栏深度学习环境搭建、环境配置问题解决、自然语言处理、语音信号处理、项目开发 每日语录相信自己一路风景一路歌人生之美正在于此。 感谢大家点赞收藏⭐指正✍️ 前言本文章纯属是自己无聊调用了星火认知大模型的接口并封装成一个脚本。但测试感觉星火认知大模型也不算太智能但奈何人家提供了免费的token当然也可以根据自己的需要去调用国内的一些大模型。 目录 一、申请免费的token 二、设置UI界面         三、运行效果 四、封装成exe文件         一、申请免费的token 这里我使用的是星火认知大模型前往官网星火认知大模型 网上有很多的教程这里不再赘述。 申请后你需要保存的有三个 ① appid ② api_secret         ③ api_key 二、设置UI界面         需要用到wxpythonGUI图形库网上有很多安装wxpython的教程这里不再赘述。 wxpython依赖的whl文件网上下载很慢cp36对应python3.6下载地址 这里我直接把UI界面的代码附上。 需要更改① appid ②api_secret  ③ api_key import tkinter as tk from tkinter import scrolledtext, filedialog, messagebox import SparkApiclass ChatApp:def __init__(self, master):self.master mastermaster.title(是dream-星火大模型UI界面)self.dialog_text scrolledtext.ScrolledText(self.master, wraptk.WORD, width50, height20, font(Microsoft YaHei UI, 12))self.dialog_text.grid(row0, column0, padx10, pady10, stickynsew)self.dialog_text.grid_propagate(False) # 阻止自动调整大小self.label_input tk.Label(self.master, text请您在下方输入:, font(Microsoft YaHei UI, 12))self.label_input.grid(row1, column0, padx3, pady3, stickyw)input_frame tk.Frame(master)input_frame.grid(row2, column0, pady10, stickynsew)input_frame.grid_columnconfigure(0, weight3)self.input_entry tk.Entry(input_frame, bd2, relieftk.GROOVE, font(Microsoft YaHei UI, 12),borderwidth4, highlightthickness1, width20)self.input_entry.grid(row0, column0, padx10, pady10, stickynsew)self.input_entry.grid_propagate(False) # 阻止自动调整大小self.input_entry.bind(Return, self.send_on_enter)button_frame tk.Frame(master)button_frame.grid(row3, column0, pady10, stickynsew)self.send_button tk.Button(button_frame, text发送, commandself.send_message,font(Microsoft YaHei UI, 12))self.send_button.grid(row0, column0, padx5, stickynsew)self.file_button tk.Button(button_frame, text选择文本, commandself.load_file,font(Microsoft YaHei UI, 12))self.file_button.grid(row0, column1, padx5, stickynsew)self.save_button tk.Button(button_frame, text保存对话内容, commandself.save_to_text, font(Microsoft YaHei UI, 12))self.save_button.grid(row0, column2, padx5, stickynsew)button_frame.grid_columnconfigure(0, weight1)button_frame.grid_columnconfigure(1, weight1)button_frame.grid_columnconfigure(2, weight1)master.grid_rowconfigure(0, weight1)master.grid_rowconfigure(1, weight0)master.grid_rowconfigure(3, weight1)master.grid_columnconfigure(0, weight1)initial_text 提前告诉星火大模型的内容让其更关注你问的方向。# sparkAPI(initial_text) # 如果要提前送内容给模型请取消注释self.dialog_text.insert(tk.END,你好作者“是dream”CSDN主页https://blog.csdn.net/qq_63159704?spm1000.2115.3001.5343\n\n)def send_on_enter(self, event):self.send_message()def send_message(self):user_input self.input_entry.get()if user_input.strip():assistant_response sparkAPI(user_input)self.dialog_text.insert(tk.END, f你: {user_input}\n)self.dialog_text.insert(tk.END, f星火: {assistant_response}\n)self.input_entry.delete(0, tk.END)self.dialog_text.see(tk.END)else:messagebox.showinfo(提示, 请输入消息)def load_file(self):file_path filedialog.askopenfilename(filetypes[(Text files, *.txt), (All files, *.*)])if file_path:with open(file_path, r, encodingutf-8) as file:content file.read()self.input_entry.insert(tk.END, content)def save_to_text(self):content self.dialog_text.get(1.0, tk.END)file_path filedialog.asksaveasfilename(defaultextension.txt, filetypes[(Text files, *.txt), (All files, *.*)])if file_path:with open(file_path, w, encodingutf-8) as file:file.write(content)messagebox.showinfo(保存成功, 对话内容已保存为文本文件)def sparkAPI(input_text):text.clear()questions checklen(getText(user, input_text))SparkApi.answer SparkApi.main(appid, api_key, api_secret, Spark_url, domain, questions)assistant_answer SparkApi.answertext.append({role: assistant, content: assistant_answer})return assistant_answerdef getText(role, content):jsoncon {role: role, content: content}text.append(jsoncon)return textdef getlength(text):length 0for content in text:temp content[content]leng len(temp)length lengreturn lengthdef checklen(text):while getlength(text) 8000:del text[0]return textif __name__ __main__:appid api_secret api_key domain generalv2Spark_url ws://spark-api.xf-yun.com/v2.1/chattext []root tk.Tk()root.geometry(800x750)chat_app ChatApp(root)root.mainloop()还需要在相同目录下创建一个 SparkApi.py文件并将下面的代码复制进去。 import _thread as thread import base64 import datetime import hashlib import hmac import json from urllib.parse import urlparse import ssl from datetime import datetime from time import mktime from urllib.parse import urlencode from wsgiref.handlers import format_date_timeimport websocket # 使用websocket_clientanswer class Ws_Param(object):# 初始化def __init__(self, APPID, APIKey, APISecret, Spark_url):self.APPID APPIDself.APIKey APIKeyself.APISecret APISecretself.host urlparse(Spark_url).netlocself.path urlparse(Spark_url).pathself.Spark_url Spark_url# 生成urldef create_url(self):# 生成RFC1123格式的时间戳now datetime.now()date format_date_time(mktime(now.timetuple()))# 拼接字符串signature_origin host: self.host \nsignature_origin date: date \nsignature_origin GET self.path HTTP/1.1# 进行hmac-sha256进行加密signature_sha hmac.new(self.APISecret.encode(utf-8), signature_origin.encode(utf-8),digestmodhashlib.sha256).digest()signature_sha_base64 base64.b64encode(signature_sha).decode(encodingutf-8)authorization_origin fapi_key{self.APIKey}, algorithmhmac-sha256, headershost date request-line, signature{signature_sha_base64}authorization base64.b64encode(authorization_origin.encode(utf-8)).decode(encodingutf-8)# 将请求的鉴权参数组合为字典v {authorization: authorization,date: date,host: self.host}# 拼接鉴权参数生成urlurl self.Spark_url ? urlencode(v)# 此处打印出建立连接时候的url,参考本demo的时候可取消上方打印的注释比对相同参数时生成的url与自己代码生成的url是否一致return url# 收到websocket错误的处理 def on_error(ws, error):print(### error:, error)# 收到websocket关闭的处理 def on_close(ws, one, two):print( )# 收到websocket连接建立的处理 def on_open(ws):thread.start_new_thread(run, (ws,))def run(ws, *args):data json.dumps(gen_params(appidws.appid, domainws.domain, questionws.question))ws.send(data)# 收到websocket消息的处理 def on_message(ws, message):# print(message)data json.loads(message)code data[header][code]if code ! 0:print(f请求错误: {code}, {data})ws.close()else:choices data[payload][choices]status choices[status]content choices[text][0][content]print(content, end)global answeranswer content# print(1)if status 2:ws.close()def gen_params(appid, domain, question):通过appid和用户的提问来生成请参数data {header: {app_id: appid,uid: 1234},parameter: {chat: {domain: domain,temperature: 0.5,max_tokens: 2048}},payload: {message: {text: question}}}return datadef main(appid, api_key, api_secret, Spark_url, domain, question):# print(星火:)wsParam Ws_Param(appid, api_key, api_secret, Spark_url)websocket.enableTrace(False)wsUrl wsParam.create_url()ws websocket.WebSocketApp(wsUrl, on_messageon_message, on_erroron_error, on_closeon_close, on_openon_open)ws.appid appidws.question questionws.domain domainws.run_forever(sslopt{cert_reqs: ssl.CERT_NONE})注意调用星火大模型用到的是 websocket 0.57.0如果websocket的错请更改版本。 三、运行效果 效果如下 四、封装成exe文件         这里用到的是pyinstaller进行封装运行以下代码进行安装 pip install pyinstaller 运行下代码进行封装 pyinstaller -F -w GUI.py 在GUI.py相同目录下会新增dist文件夹内部放有GUI.exe文件。 GUI.py就是UI界面的代码封装前请保证代码能够正常运行。这样你就可以将这个exe文件发送给你的好盆友无需配置环境就可以对话。 感谢关注我的CSDN博客更多小技巧请持续关注
http://www.hkea.cn/news/14325921/

相关文章:

  • 江西建设厅特殊工种的网站wordpress 博客信息
  • 网站开发工程师证书有用吗wordpress修改页面标题显示
  • 建立自己的公司网站设计网页制作策划路程
  • 汽车网站建设公司哪家好哪个网站做外贸的
  • 创建网站并制作首页教案博创安泰网站建设
  • 外贸网站建设 联雅中国做外贸最好的网站
  • 广西网络公司网站建设深圳网站建设加盟
  • wordpress自动发货如何设置网站面向哪些地区做优化容易
  • 四川省建设厅官方网站做装修网站价格
  • c2c平台分类烟台企业网站怎么优化
  • 建站 手机网站百度收录软件
  • 沧州seo公司购物网站seo搜索引擎优化方案
  • angular适合 做 网站吗seo教程:外链优化方法和原理介绍
  • 石家庄网站开发公司注册费用多少
  • mvc 网站模板seo的作用
  • 企业网站关键词优化环保网站设计是什么
  • 网站qq临时会话代码网站为什么要备案
  • 德阳建设网站网站制作开发策划
  • 广州邮局网站东阳网站建设
  • 南昌做网站流程dedecms 做微网站
  • 做vue用哪个网站seo自然排名优化
  • 佛山专业网站设计公司域名注册和网站哪个好
  • 织梦网站被黑wordpress搜索页制作
  • 高端品牌网站建设建议网站产品展示代码
  • 左侧固定导航栏的网站南通启益建设集团有限公司网站
  • 营销型网站sem投放策略酒泉网站建设哪家好
  • 卖护肤在哪个网站做宣传好最大郑州网站建设公司
  • 用dw设计一个简单网页佛山搜索seo网络推广
  • 网站开发需要兼容到ie几游戏门户网站建设
  • 邯郸做网站公司一人开公司做网站创业