10 月 27 日,由传茂文化和创新工场共同打造,11 位作家首次发起的汉语科幻小说“人机联合写作实验”——《共生纪》正式启动。
在 2020 年最后两个月的时间里,人类作家将与人工智能一起,围绕环保、人机关系、性别、文化多样性等主题,协同创作多篇科幻文学作品。
参与实验的 11 位作家分别是:陈楸帆(世界华人科幻协会主席、18 次星云奖得主、中宣部文化名家)、小白(知名作家、鲁迅文学奖得主)、贾立元(星云奖得主、清华大学中文系副教授)、分形橙子(冷湖奖、晨星奖得主)、凌晨(银河奖得主)、顾适(星云奖得主)、王元(晋康奖得主)、吴霜(星云奖得主)、张凡(钓鱼城科幻创始人、科幻博士)、王迎(新生代科幻作者)、苏洁涵(新生代科幻译者)。
人类依旧是“现阶段”创作过程的 C 位
AI 进行艺术创作,并不是一件新鲜事。
从作词、作曲,到作图、作画,再到编写小说、剧本、创作诗词歌赋,人工智能都足以胜任,论及涉猎广度和产出速度,人类更是完全无法与之匹敌。
然而不可否认的是,现阶段人工智能在这类开放式任务面前的表现仍稍显稚嫩。强如 GPT-3 也被证明在推理逻辑方面有所欠缺,经常性会出现 “胡言乱语” 的情况。
即便有一些看似非常成功的例子,也离不开人类的支持。如今年 8 月美国某大学生利用 GPT-3 进行创作,冠以人类名字将内容发表在网络后大受欢迎,但终究难免被读者识破,作者本人也承认,AI 生成的内容并不完美,需要进行 “微调”。
地表上最强的语言模型表现尚且如此,其他相同类型 AI 的表现可想而知。所以越来越多的人开始认清现阶段 AI 的创作能力对于人类的定位——辅助。
银河奖得主凌晨在回答如何看待 AI 会不会取代作家这个问题的时候给出了相似的判断。
“刚刚看到 AI 生成的这几段文字,虽然还有一些逻辑不清晰和难以理解的地方,但的确也出现了一些很炫的句子,构思很奇异。但我认为现阶段 AI 无法取代人类作家。”
“或许将来每名作家都会配备一个 AI 小助手,通过与它对话来获取灵感以及让自身的思维变得更加敏锐和内涵丰富。”
“它可以创造一种自己的文学流派 ——AI 流派。根据算法的不同,开发人员甚至可以调制不同的口味。”
“未来,文字作品可能分为三类,纯人类创作、人类 + AI 创作以及纯 AI 创作,AI 不会让写作枯萎,而是让世界更加丰富。”
不管 “黑AI” 还是 “白AI”,产出优质内容就是好AI
据悉,本次人机写作实验使用的模型是由创新工场 AI 工程院的科研团队自主研发的。
它的预训练过程分为两个步骤,首先使用一个有效数据 300GB 左右的网络公开数据集进行基础训练,这个数据集包含了绝大多数可以见到的中文网络内容。
然后,使用科幻小说数据集进行微调。“整个训练过程调用了一千多块显卡。” 创新工场 AI 工程院执行院长王咏刚说。
它的模型参数规模与 OpenAI 的 GPT-2 Large 版相当。香港中文大学(深圳)数据科学学院副教授、创新工场大湾区研究院首席科学家宋彦博士主导了这一科研项目。
当 DeepTech 问及 AI 创作内容和人类创作内容如果不加区隔,“噪音” 数据是否会对之后新模型的训练造成影响,王咏刚这样回答。
“其实这种情况是一个典型的自循环过程,这个过程没那么可怕。举个例子,现在的机器翻译系统,其实在所难免将大量的机器翻译内容也作为训练数据放到了语料库里,但这并没有妨碍机器翻译的效果越来越好。”
“最关键的问题是,对于模型的优化目标是否正确,即我们控制结果即可。这样,不管有多少噪音数据,只要 AI 产出的内容符合预期,那么它就是一个合格的好 AI。”
道翰天琼CiGril认知智能机器人API用户需要按步骤获取基本信息:
请求地址:http://www.weilaitec.com/cigirlrobot.cgr
请求方式:post
请求参数:
参数 |
类型 |
默认值 |
描述 |
userid |
String |
无 |
平台注册账号 |
appid |
String |
无 |
平台创建的应用id |
key |
String |
无 |
平台应用生成的秘钥 |
msg |
String |
"" |
用户端消息内容 |
接口连接示例:http://www.weilaitec.com/cigirlrobot.cgr?key=UTNJK34THXK010T566ZI39VES50BLRBE8R66H5R3FOAO84J3BV&msg=你好&ip=119.25.36.48&userid=jackli&appid=52454214552
注意事项:参数名称都要小写,五个参数不能遗漏,参数名称都要写对,且各个参数的值不能为空字符串。否则无法请求成功。userid,appid,key三个参数要到平台注册登录创建应用之后,然后查看应用详情就可以看到。userid就是平台注册账号。
示例代码JAVA:
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
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 "";
}
public static void main(String args []){
//msg参数就是传输过去的对话内容。
System.out.println(opUrl("http://www.weilaitec.com/cigirlrobot.cgr?key=UTNJK34THXK010T566ZI39VES50BLRBE8R66H5R3FOAO84J3BV&msg=你好&ip=119.25.36.48&userid=jackli&appid=52454214552"));
}
}