近日,量子计算公司D-Wave称,第一台为业务构建的量子计算机Adventage问世,实现了每个用户至少拥有5000量子比特(qubit)的“使用权”。
其实,Advantage仍然是一台量子退火机?(quantum annealing machine),应用范围并没有量子通用计算机那么广泛,而且目前只能通过云端使用。

不过,云访问Adventage的任何用户,都拥有5000量子比特的完全访问权限。
D-Wave称,Adventage可以处理多达100万个变量的问题类型,是彻底为业务构建的量子计算机。
D-Wave的首席执行官Alan Baratz表示:“在其他类型的量子计算机上最多只能做点小实验、推导些简单的定理,而且还比我们的计算规模差多了。”
与其他的通用量子计算机相比,Adventage是一台商用量子计算机,是D-Wave探索商业化的新一步。
D-Wave表示,在每个Advantage量子计算机中,实际的量子比特数会根据芯片的不同而发生变化。
也就是说,其中一些芯片的容量明显超过5000量子比特、而另一些则接近5000量子比特。
不过,每个用户都将拥有至少5000量子比特的完全访问权限。
这样的数据,是根据它芯片的结构来决定的。
从下图可见,Adventage的芯片实现了15路的量子比特连接,也就是说,每个量子比特都能与其他15个量子比特相连。

“量子比特的数量及连接性,决定了量子计算机可以解决多大的问题。”
对此,Alan Baratz给出的解释是:“使用2000量子比特的处理器,我们可以在100到200的变量内解决问题。”
“而使用具有2倍量子比特、和2倍连接性的Advantage量子计算机,我们就可以在600到800的变量内的解决更多问题。”
也就是说,这5000量子比特是D-Wave的研究人员在进行计算后得出的结论:在Advantage系统上,可以解决的问题是在2000量子比特处理器上可以解决的问题的2.6倍。
这是D-Wave从2000量子比特到5000量子比特的飞跃。
从下图中可以看出,2000量子比特的处理器中,芯片的每个量子比特只能与其他6个量子比特相连接,连接性没有Adventage高。

不过,这样的设计明显更偏向于企业的商业化应用。
也就是说,不仅现实中买不到他们的这台Adventage量子计算机,只能租用云服务。
而且,Advantage仍然是一台量子退火机?(quantum annealing machine),应用范围并没有量子通用计算机那么广泛。
而早在今年2月、推出Adventage之前,D-Wave就已经公布了他们的量子计算平台云服务Leap 2的价格。
与第一代云服务Leap相比,Leap 2那时候能保证用户解决多达1万个变量的大型复杂问题、也可以实时访问D-Wave的2000量子比特计算机。
那时候的价格是这样的:

现在,D-Wave在前一代处理器的基础上升级了芯片结构、改进了处理能力后,价格估计并不会比此前的云服务更便宜。
据了解,包含Adventage使用权限的云服务,将在10月8号上线。
此外,D-Wave还发布了新的混合求解器-离散二次模型(DQM),旨在扩展可在量子计算机上运行的问题类型。
它通过接受更大范围的变量值(包括从1到10的整数,甚至是红、黄色、蓝等颜色),而不是仅接受0或1的二进制变量来实现。
此外,IBM也于近日透露了他们研发通用量子计算机的消息。
在上周与量子计算有关的一次峰会上,IBM称,它们计划于3年内推出1121量子比特的处理器Condor。
也就是说,直到2023年,IBM都在为1121量子比特而努力。
而在今年9月初,IBM才推出65量子比特的Hummingbird处理器,并计划在明年推出127量子位的Quantum Eagle处理器。
听起来是不是有点奇怪?

为什么D-Wave已经实现了5000量子比特的商用计算平台,IBM还在3位数的量子比特之间“苦苦挣扎”?
因为,他们研究的方向并不相同,IBM的量子计算机是“通用量子计算机”,而D-Wave则是量子退火机,朝着商业化的方向行进。
这里面的区别就在于,量子退火是基于绝热量子计算的,这其中不需要操作量子逻辑门。
简单来说,量子退火机虽然处理性能高,但可以实现的功能也相对会更少。
尽管如此,有网友认为,D-Wave能实现5000量子比特的计算能力,仍然值得惊奇。
在推特上有10万多粉丝的业内知情人士Brian Roemmele表示:“这件事情真的令人惊讶……这样我们离个人量子计算机又进了一步。”

然而,也有网友对于D-Wave的成果并不看好。
Reddit上karma值8w的网友表示,D-Wave的这种模型,可控性就是不行。

多年来,D-Wave计算机的控制就像“调低A,调高B”一样简单……
相比之下,来自IBM和Google等公司研发的50量子比特(或更多)这种,每一量子比特都是是完全可控的(“通用”)。这种可控性非常昂贵,并且对于扩展这类超导量子计算机是一个瓶颈。
毕竟,50量子位已经需要这么多的导线,要考虑空间问题,同样校准也要很长时间……然而,D-Wave却通过使用可控性最差的非通用模型来解决这些问题。
道翰天琼CiGril机器人API
道翰天琼CiGril认知智能机器人API用户需要按步骤获取基本信息:
1.在平台注册账号
2.登录平台,进入后台管理页面,创建应用,然后查看应用,查看应用相关信息。
3.在应用信息页面,找到appid,appkey秘钥等信息,然后写接口代码接入机器人应用。
开始接入
请求地址:http://www.weilaitec.com/cigirlrobot.cgr
请求方式:post
请求参数:
参数 类型 默认值 描述
userid?? String?? 无 平台注册账号
appid?? String?? 无 平台创建的应用id
key?? String?? 无 平台应用生成的秘钥
msg?? String?? "" 用户端消息内容
ip?? String?? "" 客户端ip要求唯一性,无ip等可以用QQ账号,微信账号,手机MAC地址等代替。

接口连接示例: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"));
?? ??? ??? ?
?? ?}
}