隋唐演义

隋唐演义

matlab中strmatch用法 matlab中witch如何使用

双十一 0

淘宝搜:【天降红包889】领超级红包,京东搜:【天降红包889】
淘宝互助,淘宝双11微信互助群关注公众号 【淘姐妹】

matlab中strmatch函数,matlab中strmatch,matlab中strmatch在s2中查找与s1一致,matlab中strmatch函数用法
出chatgpt独享账号!内含5美元!仅需38元/个!独享永久使用!点击购买!

之前用matlab的appdesigner写了一个调用ChatGPT API的小工具,并作了上面的小视频分享在各个视频平台上,之后用不少伙伴找咱要这个代码。之前的分享的时候能调用的最高级模型也就是text-da【【微信】】,现在都已经更新到了gpt-3.5-turbogpt-3.5-turbo-0301。据说这个模型和现在大家用的那个官方网页版的效果非常接近,当然,咱是没有亲测过了。

新模型新气象,天下不会掉馅饼,调用新模型并不免费,而是按0.002美元/1000 tokens计费。

为了方便大家体验,新用户会有18美元的体验金,这个体验金是有效期的,在有效期之内才能。

想要调用gpt-3.5-turbo模型,首先就得要有一个可用的openapi账号并创建一个【【微信】】供调用时验证。

下面通过实例来看看如何在matlab中调用chatgpt的api,问它如何用matlab在区间x~[-pi, pi],y~[-pi, pi]上绘制z=sin(x)*cos(y)的三维图:

问题如下:

how to make a figure and plot z=sin(x)*cos(y) for x=-pi to + pi and y=-pi to +pi using matlab?

导入HTTP包:

import matlab.net.* import matlab.net.http.*

定义消息内容:

umesges="how to make a figure and plot z=sin(x)*cos(y) for x=-pi to + pi and y=-pi to +pi using matlab"; mesges=[struct('role',"system", ... 'content',"You are a helpful assistant."); struct('role',"user",'content',umesges)];

定义服务器链接和【【微信】】:

【【微信】】="https://api.openai.com/v1/chat/【【微信】】"; apikey="此处为你自己的【【微信】】";

定义请求头和请求方法:

% 定义请求消息 【【微信】】=struct('model',"gpt-3.5-turbo",... 'messages',mesges, ... 'max_tokens',1000,... 'temperature',0.75); % 请求头 headers=HeaderField('Content-Type', 'application/json',... 'Authorization', "Bearer " + apikey); % 请求消息 request=【【微信】】('post',headers,【【微信】】);

向服务器发送请求:

response=send(request, URI(【【微信】】));

处理反馈信息:

if response.StatusCode=="OK" responseText=response.Body.Data.choices(1).message; responseText=string(responseText.content); responseText=strtrim(responseText); disp(responseText); else responseText="Error "; responseText=responseText + response.StatusCode + newline; responseText=responseText + response.StatusLine.ReasonPhrase; end

反馈结果如下:

Sure, you can use the following code to create a figure and plot the function z=sin(x)*cos(y) in MATLAB: ``` % Define the range of x and y 【【微信】】=linspace(-pi, pi, 100); y=linspace(-pi, pi, 100); % Create a grid of x and y 【【微信】】 [X, Y]=meshgrid(x, y); % Compute the function z=sin(x)*cos(y) Z=sin(X).*cos(Y); % Create a new figure figure(); % Plot the function using surf function surf(X, Y, Z); % Set the color map to 'jet' colormap('jet'); % Add a color bar colorbar(); % Add labels for the axes and title xlabel('x'); ylabel('y'); zlabel('z'); title('z=sin(x)*cos(y)'); ``` This code will create a 3D plot of the function z=sin(x)*cos(y) for x=-pi to + pi and y=-pi to +pi, with x, y, and z axes labeled and a color bar indicating the 【【微信】】 of z. You can customize the plot further by adjusting the grid size, color map, and other plot properties as needed.

这样就完成了整个对ChatGPT API的调用过程,通过稍加改进完善就可以做成一个即时的ChatGPT聊天机器人。这里需要特别感谢Hans Scharler在matlab的官方问答论坛中首次给出了在matlab调用ChatGPT的解决方案。Duncan Carlsmith基于Hans Scharler的答案在File Exchange中分享了几个使用ChatGPT生成m文件的小工具。Toshiakit基于基于Hans Scharler的答案开发了一个专门用于调用ChatGPT API的chatGPT类。以上提到的内容都可在参考资料中找到,想进一步研究的伙伴可通过参考资料深入学习。

首发链接-《matlab调用ChatGPT保姆级教程》

参考资料:

[1] matlabcentral/answers/1894530-【【微信】】t-using-api

[2] http://github.com/toshiakit/chatgpt_matlab

[3] matlabcentral/fileexchange/124080-【【微信】】b-program

[4] http://github.com/OpsConfig/OpenAI_Lab/blob/main/chatgpt/ChatGPT%20Demo.ipynb

封面图片:由 Ruby Chen 在http://openai.com/blog/chatgpt上发布

【本文地址】

chatgpt 写代码功能演示 ChatGPT上下文对话怎么实现

chatgpt怎么下载,chatgpt国内能用吗,chatgpt怎么用,chatgpt在线
  • 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者😜
  • 📝 个人主页:馆主阿牛🔥
  • 🎉 支持我:点赞👍+收藏+留言📝
  • 📣 系列专栏:前端实用小demo🍁
  • 💬格言:迄今所有人生都大写着失败,但不妨碍我继续向前!🔥
    • 📋 个人简介
  • 前言
    • 最终效果
    • 页面布局
      • flex布局一
      • flex布局二(重点)
    • js部分
    • 完整代码
  • 结语

自从去年11月份chatgpt出圈之后,他的热度就居高不减,也出现了很多人借助接口开发的国内版本,那么本篇博客就从前端的角度来看看前端如何实现类似chatgpt的对话功能!

源码在文末获取!

因为这是我写在一个项目中的,单独提出来可能配色效果不同,但功能和做法只要我们掌握了,那么自己想怎么写就怎么写!

这一块比较简单,分析过chatgpt的页面的就会知道,他的页面布局方式是采用flex布局的,flex布局确实好用,那么我也是基于Bootsrap+jquery+flex布局完成了简易版的对话功能!主要有两个地方用到了flex布局!

这里的头像和文字采用的就是flex布局,并且文字和图片顶部对齐,防止文字较多依旧和图片中间对齐的bug。 需要设置css:

其中align-items: flex-start;的作用就是让文字与图片顶部对齐!

第二处用到flex布局的地方就是这个搜索框: 很多人觉得这个对话框很简单,flex布局实现输入框和按钮在同一行确实简单,但你要好好看看chatgpt的官网,都是有小细节的,这里面还是有很多知识点的。

首先,我要说的是这个输入框用的【【微信】】,而不是input,区别在于,input输入的内容是不能换行的,但【【微信】】文本框可以,但使用【【微信】】的问题是,参数rows设置为一行,这个文本框的高度会很低,达不到chatgpt的那个页面要求,rows设置大一点或者这个文本框的高度给高一点会有一个问题就是输入时他的光标不会在文本框的高度中间,而是在第一行,我们是没法通过其他方式让输入光标垂直居中的,因此这也不符合chatgpt页面的要求,所以这确实是个值的学习的一点!看了chatgpt页面的做法后,我悟了,下面一张图来说明chatgpt是如何做的:

如图,你只要将【【微信】】边框取消掉,然后focus伪类将边框效果也取消掉,外边再套一个div边框将【【微信】】文本框和按钮套在里面就好了!

最后,将这个输入框定位到页面底部就好!

首先,页面部分,我们添加消息到页面,包括用户的问题以及ai的回复,添加消息到页面时需要向上滚动:

这里消息添加带页面后,清空了输入框的内容,接下来还需要给输入框添加加一个键盘事件,也就是点击enter键也可以发送消息!

最后就是发送消息与获得消息的一部分了:

这些逻辑都很简单,我不再总结,需要注意的是,我在发送消息到后台等待相应的过程让按钮的状态是不可点击的,直到后台返回消息才可以进行下一次问答!但这里我没有处理键盘事件,也就是说你可以点击enter继续向后台发送消息,这也是一个bug,只不过我没有处理,你们不需要的可以去掉这个键盘事件就好了,当然也可以在发送消息到获得回答的这个时间段像禁用发送按钮一样,禁止enter键盘事件或者解绑这个键盘事件,这个你们自己去完成,这里我不在多说(总要留点东西让你们自己去思考去感悟!)

这里面用到的layer.js就是一个弹窗组件,百度可以搜到,common.js是我自己对layer.js方法的封装,这个页面其实你不这两个js文件也行,因为整个页面只有下面的代码用到了弹窗:

其实简陋点,一个alert就搞定了!

如果你觉得博主写的还不错的话,可以订阅下面的这个flask专栏,这是博主唯一的付费专栏,我做的这个页面也是最近项目的一部分,这个项目也是用flask做的,我会将他全部总结开源到这个flask专栏中。

【flask从入门到实战】专栏9.9火热订阅中,已包含两个项目,全站独一无二的脚手架搭建,直接复制简单无脑操作,项目结构类似Django,感兴趣的可以看看哦!

🏰系列专栏 👉flask框架快速入门

其他专栏请前往博主主页查看!