首页 > 其他分享 >uniapp对接ChatGPT 简单实现对话功能

uniapp对接ChatGPT 简单实现对话功能

时间:2023-02-22 12:13:56浏览次数:48  
标签:uniapp title text 对接 xhr let answer ChatGPT margin

最近很火的ChatGPT来了!我也是做了一个最最基础的模型,让大家更通俗易懂!

先看效果:

 

 

 

 接下来直接上代码:

<template>
	<view class="content">
		<view class="text-area">
			<textarea class="aa" placeholder-style="color:#F76260" placeholder="智能提问" v-model='title' />
			<button class="button" @click="getAi">提问</button>
		</view>
		<view class="answer">
			<textarea disabled class="aa cc" placeholder-style="color:#F76260" placeholder="回答" v-model='answer' />
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				title: '列举几条法律',
				answer: "",
			}
		},
		onLoad() {
			// this.getAi()
		},
		methods: {
			getAi() {
				let that = this
				console.log(this.title, 8888)
				if (!this.title) {
					uni.showToast({
						title: '请先输入问题!',
					});
					return
				}
				let answer = '正在思考请稍后...'
				let index = 0;
				that.answer = ''
				let interval = setInterval(function() {
						that.answer += answer[index];
						index++;
						// 当打印完成时,清除定时器
						if (index >= answer.length) {
							clearInterval(interval);
						}
					},
					150); // 每隔50毫秒打印一个字符

				let dataVal = JSON.stringify({
					"prompt": that.title,
					"max_tokens": 2048,
					"temperature": 0.5,
					"top_p": 1.0,
					"frequency_penalty": 0.8,
					"presence_penalty": 0.0,
					"model": "text-davinci-003"
				});
				// {
				//   "model": "text-davinci-003",
				//   "prompt": "",
				//   "temperature": 0.5,
				//   "max_tokens": 60,
				//   "top_p": 1.0,
				//   "frequency_penalty": 0.8,
				//   "presence_penalty": 0.0
				// }
				uni.request({
					url: 'https://api.openai.com/v1/completions', //仅为示例,并非真实接口地址。
					data: dataVal,
					method: "POST",
					header: {
						'Content-Type': 'application/json',
						'Authorization': 'Bearer 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', //自定义请求头信息
					},
					success: (xhr) => {
						if (xhr.statusCode === 200) {
							console.log('xhr', xhr)
							var json = xhr.data;
							var response = json.choices[0].text;

							// 将CHATGPT的返回值输出到文本框
							var indexxx = 0;
							that.answer = ''
							// 创建一个定时器,每隔一段时间打印一个字符
							var intervals = setInterval(function() {
									that.answer += response[indexxx];
									indexxx++;

									// 当打印完成时,清除定时器
									if (indexxx >= response.length) {
										clearInterval(intervals);
									}
								},
								50); // 每隔50毫秒打印一个字符
						}
						console.log(xhr);
					}
				});
			},
		}
	}
</script>

<style>
	.content {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}

	.logo {
		height: 200rpx;
		width: 200rpx;
		margin-top: 200rpx;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 50rpx;
	}

	.text-area {}

	.aa {
		border: solid 1px red;
	}
	.cc {
		height: 600rpx;
	}

	.button {
		width: 300rpx;
		height: 100rpx;
		margin: 30rpx auto;
		background: red;
		line-height: 100rpx;
	}


	.title {
		font-size: 36rpx;
		color: #8f8f94;
	}
</style>

最后附一个openAI的地址(科学):

https://platform.openai.com

还有不明白的欢迎留言,我会一一解答~

感兴趣的小伙伴去试试吧~

 

标签:uniapp,title,text,对接,xhr,let,answer,ChatGPT,margin
From: https://www.cnblogs.com/su-jing/p/17143896.html

相关文章

  • 用Python实现ChatGPT智能机器人
    最近,ChatGPT突然大火,说是十分的智能,可以写诗,写报告,甚至写论文,报着试试看的态度,我也研究了一下,找了很多资料,写了一个智能机器人的小demo。 因为ChatGPT依赖于OpenAI,所以,......
  • 有趣的数据_ChatGPT的多语种训练数据集
    为什么建议用英语和ChatGPT沟通为什么chatGPT中文对话时候偶尔会感觉到他在胡编瞎造为什么chatGPT中文提问专业问题时偶尔会出现英语回复​看openai公布的GPT-3训练数据集的......
  • 关于目前chatGPT写代码问题,随手测试了一下
    他们都说chatGPT写代码很厉害,我就随手一测,其实源码本身不太重要,我就不上源码了:  (源码:略)  (源码:略)  (源码:略)  (源码:略)  (源码:略)  (源码:略)到最终,其......
  • 微信公众号-chatgpt客服
    想体验的可以去微信上搜索【旅行的树】公众号,也可以扫描当前二维码体验。一、ChatGPT注册1.1短信手机号申请openai提供服务的区域,美国最好,这个解决办法是搞个FQ,或者买......
  • uniapp解决未配置appkey成功运行并离线打包apk的详细图文
    官方文档https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android.html一、将写好的uniapp右键→发行→原生app-本地打包→生成本地打包App资源(它会要求你登录账号)二......
  • ChatGPT is at capacity right now.ChatGPT Plus subscriber login Add your email fo
    原因你的ip地区用的人过多。解决办法在右侧页面填入邮箱,能收到邮件立刻就能登录,如果没有,就换地区试试,不行就等等吧邮件示例:......
  • uniapp安卓本地文件读取(html5+)
    plus.io.resolveLocalFileSystemURL(                "_www/static/caise.json",//static下路径                    functi......
  • 如何用chatGPT、爬虫IP和网络爬虫,打造一个智能有趣的聊天机器人?
    AI(人工智能)是指让机器具有感知、合成和推理信息的能力,与人类和非人类动物的智能相对应。AI可以实现从经验中学习、适应新的输入和执行类似人类的任务。我们今天听到的大多数......
  • chatGPT能做职业规划?看完之后发现3年软测白做了!
    “每天都是重复、单调的工作,收入不理想,想跳槽无力,学习又没有动力和方向,不知道未来的发展在哪里,甚至想转行·····”做测试久了,很多人都有诸如此类的疑惑,不想一直停留在......
  • 程序员即将失业?ChatGPT正在取代各位!
    最近OpenAI的ChatGPT真的是到处都在刷屏,我想你已经看过很多关于ChatGPT的文章或者视频了,我就不过多介绍了。不过你碰巧还不知道的话,可以先百度一下,然后再回来继续。......