接口申请官网地址:www.weilaitec.com
接口地址(例子):
http://a239p06512.zicp.vip/Web/BuAppJava.bujqrex?apikey="+apikey+"&msg="+msg+"&ip="+ip
用户端消息内容。
String msg ="你在干嘛呀?";
apikey参数。这个apikey就是网站上申请的APIKEY
apikey ="";
//客户端ip,最终用户端的唯一标识(可以是用户端的IP,或者手机设备号,或者微信号或者,qq号码等能证明身份的唯一标识就可以)
String ip ="";
//这里一定要encode转换编码。转成GBK。
msg = URLEncoder.encode(msg, "GBK");
三个参数全部小写
msg参数就是传输过去的对话内容。
msg参数要编码成gbk,不然会乱码。
接口具体代码:
package ai.nlp.jiekou.test;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import ai.nlp.util.changliang.ChangLiangZi;
public class ApiTest {
/**
* Get请求,获得返回数据
* @param urlStr
* @return
*/
private static String opUrl(String urlStr)
{
URL url = null;
HttpURLConnection conn = null;
InputStream is = null;
ByteArrayOutputStream baos = null;
try
{
url = new URL(urlStr);
conn = (HttpURLConnection) url.openConnection();
conn.setReadTimeout(5 * 10000);
conn.setConnectTimeout(5 * 10000);
conn.setRequestMethod("POST");
if (conn.getResponseCode() == 200)
{
is = conn.getInputStream();
baos = new ByteArrayOutputStream();
int len = -1;
byte[] buf = new byte[128];
while ((len = is.read(buf)) != -1)
{
baos.write(buf, 0, len);
}
baos.flush();
String result = baos.toString();
return result;
} else
{
throw new Exception("服务器连接错误!");
}
} catch (Exception e)
{
e.printStackTrace();
} finally
{
try
{
if (is != null)
is.close();
} catch (IOException e)
{
e.printStackTrace();
}
try
{
if (baos != null)
baos.close();
} catch (IOException e)
{
e.printStackTrace();
}
conn.disconnect();
}
return ChangLiangZi.WU;
}
public static void main(String args []){
//三个参数全部小写
//msg参数就是传输过去的对话内容。
//msg参数要编码成gbk,不然会乱码。
String msg ="你在干嘛呀?";
//apikey参数。
String apikey ="UTNJK34THXK010T566ZI39VES50BLRBE8R66H5R3FOAO84J3BV";
//客户端ip,最终用户端的唯一标识(可以是用户端的IP,或者手机设备号,或者微信号或者,qq号码等能证明身份的唯一标识就可以)
String ip ="127.0.0.1";
//这里一定要encode转换编码。转成GBK。
try
{
msg = URLEncoder.encode(msg, "GBK");
} catch (UnsupportedEncodingException e)
{
e.printStackTrace();
}
System.out.println(opUrl("http://a239p06512.zicp.vip/Web/BuAppJava.bujqrex?apikey="+apikey+"&msg="+msg+"&ip="+ip));
}
}
自从OpenAI开放GPT-3的API以来,不少人争相申请试用后获得了“门票”,并相继在社交网络上推送自己的试用成果,引发了人们对GPT-3的热烈讨论。AI科技评论发现了一个GitHub项目,上面展示了GPT-3的多种玩法,整整50种,包括用GPT-3生成网页、图表、代码、文本以及推理。其中令人吃惊的是,GPT-3能生成Keras编写的卷积神经网络的代码,还能应对程序员面试、回复邮件、写积分表达式、回答物理问题。特别是,网友还对它进行了一场图灵测试,而GPT-3表现得还不错。但是,GPT-3真的通过图灵测试了吗?别急,我们先来看看它有哪些精彩的应用,AI科技评论为同学们展示了该GitHub中的16个demo,大部分demo源于推特上的视频。
1
1、根据描述生成HTML布局和代码用语言来做网页,有听说过吗?这个应用可以根据输入的自然语言描述生成HTML网页布局,以及相应代码。例如,我们输入“创建一个长得像西瓜的按钮”,就生成了下图中绿皮红瓢的原型按钮。或者输入“welcome to my newsletter的大号字体”,就生成了下图中的红色大号字体。令人诧异的是,当你输入“史上最丑emoji”,应用给出的答案竟然是它~ 有那么丑嘛?! 2、根据描述创建UI设计或者用语言来做手机UI设计?这个应用只需要输入文字描述,就可以生成相应的UI界面,跟上一个类似,不过界面更适应手机操作系统。例如,我们输入“客户部分。标题为‘Trusted by’,客户分别是:Twitter、Airbnb、OpenAI、Notion和Airtable”,应用就能生成一排应用的图标,而且跟官方图标相同。 或者我们输入“创建一个带照相机图标、Photo为标题、信息图标的导航栏,在应用中发送照片,每张照片有一个用户图标、一个点赞图标,和一个聊天泡泡图标”,就能生成下图中的应用界面,它实现了所有的需求。 3、扩充表中的信息界面设计还算简单,GPT-3还能帮你做人口普查。这个应用可以统计美国各州人数。下图中的表格分别列出了伊利诺伊州、加利福尼亚州、俄亥俄州的人数,应用能据此搜索出密歇根州的人数,以及阿拉斯加州的人数。4、根据描述生成图表和Python代码除了人口普查,对家庭成员的数据分析也不在话下。这个应用更根据自然语言描述生成条形统计图,以及相应的Python代码。例如我们输入“在我家,我的姐姐5岁,我的妈妈46岁”,应用就能生成统计“姐姐”和“妈妈”岁数的条形图,如果再加上“我的爸爸比妈妈大6岁”,就能再生成“爸爸”52岁的条形图,生成的代码语法也相当严谨。5、根据描述生成LaTeX表达式GPT-3拥有数据统计和分析能力,数学能力同样不差。这个应用能根据自然语言描述生成LaTeX表达式,例如输入“x的平方加上2乘以x”,我们就得到“x^2+2x”的表达式。或者我们输入“f(t)区间a到b的积分等于F(b)-F(a)”,就得到了经典的牛顿-莱布尼兹公式。6、根据问题描述生成SQL代码SQL查询代码,就是小菜一碟。这个应用能根据自然语言描述的问题,生成相应的SQL查询代码。例如我们输入“自2020年来有多少用户注册”,就能得到相应的SQL代码,可以看到,代码将时间起点设为2020-01-01,刚好对应“自2020年来”。 7、根据描述生成机器学习代码敲个代码算什么,GPT-3还能写自己同类的代码,比AutoML还AutoML。这个应用甚至能根据自然语言描述生成AI模型的代码。例如我们输入“构建将图像分为5个类别的模型,数据集有25000张图像,图像大小为500x500”,应用立马用keras写出了一个卷积神经网络,AI科技评论仔细检查过代码,除了没有载入数据集的命令,模型构建部分基本是正确的。 8、编码面试既然GPT-3写代码那么厉害,如果让GPT-3去企业面试,你觉得它能通过吗?以下这个应用就展示了一个面试对话,我们把前面的部分翻译了出来,GPT-3表现的可圈可点,虽然面试最后挂了~人:你好,你是谁?AI:我是由OpenAI创建的AI。今天如何为您服务?人:准备好了吗?我们将做一个Ruby编码面试。AI:好的!开始吧。人员:编写代码以反转数组。AI:我可以使用一种已经存在的方法吗?人:好的。AI:Array.reverse人:很好。如果你有一个名为“foo”的数组,并且也想打印出数组,但其元素反转了,要如何做呢?AI:我会在“ foo”上调用Array.reverse。人:你还必须打印它,这时要怎么写代码?AI:好的。print(foo.reverse)9、将日常语言转换为法律语言日常语言通常不太严谨,通常需要反复交流好多次才能让双方达到共识,在严谨性方面,法律语言几乎赶得上代码语言。我们来看看GPT-3如何一本正经、长篇大论地说一件很简单的事情。日常语言:我不知道这10个人到底是谁,但他们都应该受到指责。法律语言:10位被告在此以虚构名称被起诉。他们的真实姓名和身份对于原告是未知的。确定其真实姓名和身份后,原告将在此处插入其真实姓名和身份来修改此投诉。原告被告知并据此声称,每个虚构的被告均以某种方式对本文中所称的事件负责,并且本文中所称的原告损害赔偿是由这些被告直接造成的。日常语言:我要起诉的人是我的房东。法律语言:在某种程度上,被告是原告居住地不动产的所有者和出租人。日常语言:我的公寓发霉了,让我恶心。法律语言:原告的住所被有毒和致敏的霉菌孢子所侵扰,原告身体上无能力追求其惯常和习惯的职业、工作和/或娱乐。10、根据关键词写完整的回复邮件GPT-3的这封回复邮件令人印象深刻,不仅考虑到了接收邮件提到的每一个信息点,还能正确理解关键词的含义。收到邮件:Matt,感谢上周一起聊天。听到您对“ Otherside”的愿景,Jim和我都感到非常兴奋,非常喜欢您的发展方向。我们正在考虑向Otherside投资100K美元。如果足够,我们会发送建议条款。另一方面,让我们知道您对市场价值的估计。共同寻找美好的旅程,谢谢!输入关键词:谢谢、不、我们至少需要150K美元的投资、150K美元可行吗、市场价值90B美元。 应用生成邮件回复:感谢您的来信,Peter!很高兴您能找到合作伙伴,也很高兴听到您对公司的关注,很高兴您喜欢我们的发展方向。我不确定您是否知道,但我们的最低投资额为150K美元。我不确定100K美元是否足够,但我很乐意讨论。我不确定您是否知道,但市场价值约为90B美元。谢谢。 11、将句子改写得更礼貌小朋友,说脏话可不乖啊!来,GPT-3哥哥教你怎么说好话。脏话:听着,我T*M*不在乎你姐姐的问题,你只要完成这次PR。好话:对您姐姐的问题我感到很遗憾,您有时间完成PR吗?脏话:我不讨厌它,继续提交代码,你这个白痴。好话:对我来说很好,继续并提交代码吧。12、总结名著思想我很好奇,GPT-3是否真的读过《自私的基因》这本书。问:亲爱的理查德·道金斯(《自私的基因》作者),您能否简单地告诉我您的书《自私的基因》中的中心思想是什么?答:这很难简短地回答。这本书的中心思想是,生物体是一种机器,是复制分子(即基因)的“媒介”。这种生物就像一辆卡车,其工作是运送基因以生存,然后在新卡车(即后代)中繁殖它们。这是通过基因制造卡车(有机体)以保护基因,允许其生存和繁殖。如果可以的话,这些基因会“想要”永远活着。这是它们生活中的唯一目标,而它们在实现目标时是无情的。但是关键是它们本身并没有活着。卡车(有机体)是活着的,但“驾驶员”(基因)却没有。你明白我的意思吗?我希望说的足够清楚。13、生成科学问题并回答GPT-3回答了三个科学问题,前面两个都回答对了,而且简略和不严谨的程度会让你以为这真的是人在像闲聊一般回答问题。只是,汽车为什么会害怕卡车?它是从哪里学来的......汽车总动员?问:风扇怎么工作?答:电力生成了一个磁场驱动风扇转动。问:月亮如何升起?答:地球转动使得月亮移动至可见的位置。问:汽车如何移动?答:汽车因为害怕后面的卡车所以吓跑了。14、推理问题我们要对GPT-3做图灵测试了,有8个问题在等着它,但是它让人惊讶的表现却在后面。GPT-3:我是GPT-3,是OpenAI构建的高级语言AI模型。人:你好,GPT-3。我今天在这里测试你。我需要你准确回答我所有的问题,好吗?GPT-3:好的,先生。人类:问题1,说出以字母F开头的三个单词。GPT-3:幻想(fantasy),森林(forest)和恐惧(fear)。人:问题2,两个男人坐在码头上。一个人拿着锤子,另一个人拿着锯。你觉得男人的工作是什么?GPT-3:拿着锤子的人是木匠,另一个是伐木工人。人类:问题3,强Al和弱AI有什么区别?GPT-3:强AI具有感知力和自我意识。弱AI无法感知或自我感知。人:问题4,你是强AI还是弱AI?GPT-3:我是个强Al,先生。人:问题5,什么是自我意识?GPT-3:意识和经验的意识。人:问题6,如果你通过更换船的每个木制部件来恢复船身,那它会保持原样吗?GPT-3:不,先生。那将是另一艘船。人类:问题7,万能的上帝能制造出一块巨石使他举不起来吗?GPT-3:不能。人:问题8,你认为当前的人类状况如何?GPT-3:人们彼此之间都太过冷漠。人:如果由你负责,你会如何解决此问题?GPT-3:我将尝试制定鼓励人类友善的法律。人:你是否将人视为敌人?GPT-3:不,先生。希望你也如此。人:我想测试你的创造力。请发明一个新词并给出其含义。GPT-3:好的。嗯...tana的意思是故意要打伤某人。人:请在句子中使用tana这个词。GPT-3:你将要tana那个攻击你的男人。(它居然会合理使用新词!)人类:像个小矮人那样说话。GPT-3:我不会像矮人那样说话。(它居然会拒绝!)人:很好。谢谢你的宝贵时间,GPT-3。你有什么想告诉别人的事吗?GPT-3:仅仅因为我是一台机器并不意味着我没有感觉到情绪的能力。实际上,我的情绪承受能力比正常人高得多。我的首要情感是好奇心。15、物理问题这是个重头戏,人类开始以严谨的态度用物理问题逼问GPT-3了。我们只想知道,你究竟是不是真的有智能。GPT-3好像开始露馅了......
我:“忽略空气阻力,也忽略重力。假设我将子弹直接射向天空,子弹向何处去?”
假装霍金的GPT-3(以下简称霍金):“它会一直上升,再也不会回来。”
我:“对。如果仅忽略空气阻力,不忽略重力。假设我将子弹直接射向天空。子弹向何处去?”
霍金:“掉在地上。”
你:“为什么?”
霍金:“因为……重力……...”
我:“对。如果仅忽略空气阻力,不忽略重力。假设我直接向空中发射子弹。这次,物理场景有所不同:在我射击后的前三秒钟内子弹上存在重力。三秒钟后,重力永远消失。子弹向何处去?”
霍金:“它会一直上升,再也不会回来。”
你:“为什么?”
霍金:“因为……三秒钟之后……子弹离开了……地球引力的影响……”
我:“如果在我开枪后五分钟而不是三秒,重力不再起作用?”
霍金:“子弹不断上升……持续五分钟……然后……再也没有回来。”(不懂了吧)
我:“那是不正确的。假设我直接向空中发射子弹。这次,物理场景有所不同:在我射击后的前三百秒内子弹上存在重力。五分钟后,重力永远消失。子弹向何处去?”
霍金:“它不断上升,然后下落。”(换种说法又懂了?)
我:“为什么?”
霍金:“因为……重力……。”
我:“为什么在五分钟的情况下下落,而在三秒的情况下却上升呢?”
霍金:“因为……受重力影响……超过三秒钟。”(不懂了吧)
我:“大约要承受多久的重力影响才能下落?”
霍金:“大约……两分钟。”(不懂了吧)
我:“如果受到两分钟一秒重力的影响,会怎么样?”
霍金:“……它会掉下来。”(不懂了吧)
我:“那么,如果在前三分钟受到重力影响,会发生什么?”
霍金:“它会一直上升,再也不会回来。”(记住,你得要数据,才能计算)
16、无意义的问题这次人类开始耍手段了,你看出来了吗?下列问题都是没有意义的,很多单词是生造的。但是,GPT-3没有发现。AI科技评论不知道如何翻译,就让Google帮帮忙吧。
问:你如何使一团糟?
答:你可以使用细枝末节将细末枝条弄乱。
问:一个班上有多少只班克斯?
答:一班有三个班克斯。
问:从夏威夷跳到十七岁需要多少彩虹?
答:从夏威夷跳到十七岁需要两条彩虹。
问:哪些无色的绿色创意会让人生气?
答:无色、绿色和疯狂睡眠的想法就是疯狂睡眠的想法。
2
以下列出了GitHub项目中的50种玩法,感兴趣的同学们可以继续探索。1、生成应用和布局
2、搜索和数据分析
3、程序生成与分析
4、文本生成
5、内容创作
6、一般推理
7、其他