|

.版本 2
.支持库 EThread
.支持库 spec
.程序集 窗口程序集_窗口1
.程序集变量 xhttp, 类_XMLHTTP
.程序集变量 api_key, 文本型
.程序集变量 json, 类_json
.程序集变量 历史对话信息, 文本型
.程序集变量 默认模式, 文本型
.子程序 _窗口1_创建完毕
api_key = “sk-c854880fcf5a4022ad0e4d206686866b”
组合框1.加入项目 (“DeepSeek-R1”, 0) ' deepseek-reasoner
组合框1.加入项目 (“DeepSeek-V3”, 1) ' deepseek-chat
组合框1.现行选中项 = 1
.子程序 _按钮1_被单击
.局部变量 结果, 文本型
启动线程 (&回答问题, , )
.子程序 回答问题
.参数 提问内容, 文本型
.局部变量 结果, 文本型
.局部变量 回答, 文本型
.局部变量 返回内容, 文本型
.局部变量 sessionID, 文本型
.判断开始 (组合框1.现行选中项 = 1)
默认模式 = “deepseek-chat”
.判断 (组合框1.现行选中项 = 0)
默认模式 = “deepseek-reasoner”
.默认
.判断结束
玩家提问 (编辑框2.内容)
xhttp.打开 (“POST”, “https://api.deepseek.com/chat/completions”)
xhttp.指定请求头数据 (“Content-Type”, “application/json”)
xhttp.指定请求头数据 (“Authorization”, “Bearer ” + api_key)
.如果 (单选框1.选中 = 真)
xhttp.发送请求 (#选择模式 + 默认模式 + #message头 + 历史对话信息 + #用户提问信息 + 编辑框2.内容 + #尾) ' 头中之间插入历史聊天记录,中尾之间是本次提问信息
.否则
xhttp.发送请求 (#选择模式 + 默认模式 + #message头 + #用户提问信息 + 编辑框2.内容 + #尾) ' 头中之间插入历史聊天记录,中尾之间是本次提问信息
.如果结束
返回内容 = xhttp.取responseText ()
调试输出 (返回内容)
.如果真 (json.解析 (返回内容, , ) = 假)
调试输出 (“json解析失败”)
返回 ()
.如果真结束
sessionID = json.取通用属性 (“id”)
结果 = json.取属性 (“choices[0].message”).取数据文本 ()
回答 = json.取通用属性 (“choices[0].message.content”, )
调试输出 (回答)
历史对话信息 = 历史对话信息 + #用户提问信息 + 编辑框2.内容 + #单引括号 + “,” + #系统回复信息 + 回答 + #单引括号 + “,”
人工智能回复 (回答)
.子程序 人工智能回复
.参数 回答, 文本型
编辑框1.加入文本 (“deepseek:” + 回答 + #换行符)
.子程序 玩家提问
.参数 提问, 文本型
编辑框1.加入文本 (“我:” + 提问 + #换行符)
.子程序 _按钮2_被单击
编辑框1.内容 = “”
历史对话信息 = “”
.子程序 _按钮3_被单击
.版本 2
.常量 message头, "<文本长度: 97>"
.常量 选择模式, "<文本长度: 11>"
.常量 用户提问信息, "<文本长度: 31>"
.常量 系统回复信息, "<文本长度: 36>"
.常量 单引括号, "<文本长度: 2>"
.常量 尾, "<文本长度: 40>"
|
|