聊天机器人chatgpt如何使用 chatgpt机器人怎么用
淘宝搜:【天降红包222】领超级红包,京东搜:【天降红包222】
淘宝互助,淘宝双11微信互助群关注公众号 【淘姐妹】
这几天OpenAI公布的chatGPT项目非常火,大家都在和这个AI聊得十分开心。但是OpenAI没有中国开放注册,即使注册成功了,也需要全程挂代理才能使用,并不是十分方便。那么有没有什么好的解决方法呢?
我们可以利用Multi-Session ChatGPT API,这是一个基于ChatGPT且支持服务多个用户的API,只用一个OpenAI账号,一次部署就可以满足多人同时对话的需求。我们可以利用这个API制作一个简单的手机聊天机器人APP。
具体步骤十分简单,只需要2小时就可以做出一个自己的聊天机器人APP,下面先给大家看一下最后APP的效果视频:
首先我们进入OpenAI官网,使用邮箱注册账号。
在注册过程中会要求我们使用国外的手机号进行验证,如果自己没有国外的手机号的话推荐使用虚拟手机号进行注册。(如果您已经有可以使用的国外手机号便可以跳过这一步)
打开地址:在线接受短信的虚拟号码 - SMS-Activate
在左侧选择服务中输入OpenAI,选择一个最便宜的国家即可。
注意购买后的短信有效期是 20 分钟,我们需要尽快注册
Node版本大于14
Java Development Kit[JDK]11
- 前端环境搭建:
本文以Windows作为开发平台,Android作为目标平台。
环境搭建部分可以参考ReactNative中文文档,或我之前的文章Azem:我没有GPU也不懂AI,怎么做一个AI生成图片的APP?中关于环境搭建的部分,这里我们暂且略过。
2. 后端准备工作:
后端我们使用智源基于ChatGPT开发的支持服务多个用户的ChatGPT API。
首先我们将代码clone下来。
git clone --recurse-submodules https://github.com/shiyemin/ChatGPT-MS pip install -r requirements.txt
修改根目录下的config.json.example
,去掉.example
后缀并在文件中填入OpenAI的账户和密码。
之后我们需要准备一台可以访问openai服务的美国、日本、韩国或新加坡ip的VPS;部署ChatGPT-MS;用ChatGPT-MS暴露的API就可以搭自己自国内的服务了。
API的参数如下:
{"message":"Who are you?", "user": "Azem"}
进入一个空目录在命令行工具输入:
npx react-native init chatGPTApp --template react-native-template-typescript
等待项目初始化完成后,进入TextToImgAPP文件夹就可以看到初始化后的项目源代码了。此时请确保已经运行了模拟器或者连接了Android真机,在项目目录中输入以下命令:
yarn android // 或者 yarn react-native run-android
此命令会对项目的原生部分进行编译,如果配置没有问题,你应该可以看到应用自动安装到设备上并开始运行。注意第一次运行时需要下载大量编译依赖,耗时可能数十分钟。如果项目成功运行,你将在模拟器或者真机中看到如下画面。
在项目初始化并成功启动后,我们便可以开始我们的开发工作了。
我们制作的APP需要引入一些依赖库,接下来我来手把手的教大家安装
1. React Navigation
我们需要APP具备登录后转跳的功能,因此我们需要将React Navigation引入我们的项目。
详情请参阅React Navigation官方文档
在项目的根目录输入:
yarn add @react-navigation/native @react-navigation/native-stack react-native-screens react-native-safe-area-context
安装完后进入android/app/src/main/java/<your package name>/MainActivity.java 在MainActivity类中添加一下代码:
@Override protected void onCreate(Bundle savedInstanceState){ super.onCreate(null); }
并在文件顶部添加:
import android.os.Bundle;
2. react-native-gifted-chat 组件
在根目录中输入:
yarn add react-native-gifted-chat
3. zustand
zustand是一个轻量级的状态管理工具。相比于redux,它更加的简单易用,要编写的模板代码量更少。我们就使用zustand管理我们APP中的各种状态。
yarn add zustand
4. react-native-toast-message
yarn add react-native-toast-message
进入项目根目录的App.tsx
并将全部内容替换为以下代码:
import React from 'react' import {LoginScreen} from 'https://zhuanlan.zhihu.com/p/src/Screens/LoginScreen' import {ChatScreen} from 'https://zhuanlan.zhihu.com/p/src/Screens/ChatScreen' import {createNativeStackNavigator} from '@react-navigation/native-stack' import {NavigationContainer} from '@react-navigation/native' import {RootStackParamList} from 'https://zhuanlan.zhihu.com/p/src/Utils/RootStackParamListType' import Toast from 'react-native-toast-message' const Stack = createNativeStackNavigator<RootStackParamList>() const App = () => { return ( <NavigationContainer> <Stack.Navigator screenOptions={{ headerShown: false, }}> <Stack.Screen name="Login" component={LoginScreen} /> <Stack.Screen name="Chat" component={ChatScreen} /> </Stack.Navigator> <Toast /> </NavigationContainer> ) } export default App
在根目录下创建src
目录,并在src
目录下创建Screens
目录。在其中创建LoginScreen.tsx
文件并填入以下代码,登录页按钮所需的图标可以自行替换。
import React, {useState} from 'react' import {Image, StyleSheet, Text, TextInput, TouchableOpacity, View} from 'react-native' import {NativeStackScreenProps}
张俊林:ChatGPT会成为下一代搜索引擎吗
张俊林厨师,张俊林产品经理,张俊林深圳,张俊林 知乎本文转自深度学习自然语言处理公众号
文|张俊林@知乎
本文将从以下几个方面展开:
引言 ChatGPT的技术原理 ChatGPT能否取代Google、百度等传统搜索引擎
引言
作为智能对话系统,ChatGPT最近两天爆火,都火出技术圈了,网上到处都在转ChatGPT相关的内容和测试例子,效果确实很震撼。我记得上一次能引起如此轰动的AI技术,NLP领域是GPT 3发布,那都是两年半前的事了,当时人工智能如日中天如火如荼的红火日子,今天看来恍如隔世;多模态领域则是以DaLL E2、Stable Diffusion为代表的Diffusion Model,这是最近大半年火起来的AIGC模型;而今天,AI的星火传递到了ChatGPT手上,它毫无疑问也属于AIGC范畴。所以说,在AI泡沫破裂后处于低谷期的今天,AIGC确实是给AI续命的良药,当然我们更期待估计很快会发布的GPT 4,愿OpenAI能继续撑起局面,给行业带来一丝暖意。
说回ChatGPT,例子就不举了,在网上漫山遍野都是,我们主要从技术角度来聊聊。那么,ChatGPT到底是采用了怎样的技术,才能做到如此超凡脱俗的效果?既然chatGPT功能如此强大,那么它可以取代Google、百度等现有搜索引擎吗?如果能,那是为什么,如果不能,又是为什么?
本文试图从我个人理解的角度,来尝试回答上述问题,很多个人观点,偏颇难免,还请谨慎参考。我们首先来看看ChatGPT到底做了什么才获得如此好的效果。
ChatGPT的技术原理
整体技术路线上,ChatGPT在效果强大的GPT 3.5大规模语言模型(LLM,Large Language Model)基础上,引入“人工标注数据+强化学习”(RLHF,Reinforcement Learning from Human Feedback ,这里的人工反馈其实就是人工标注数据)来不断Fine-tune预训练语言模型,主要目的是让LLM模型学会理解人类的命令指令的含义(比如给我写一段小作文生成类问题、知识回答类问题、头脑风暴类问题等不同类型的命令),以及让LLM学会判断对于给定的prompt输入指令(用户的问题),什么样的答案是优质的(富含信息、内容丰富、对用户有帮助、无害、不包含歧视信息等多种标准)。
在“人工标注数据+强化学习”框架下,具体而言,ChatGPT的训练过程分为以下三个阶段: