龙空技术网

好饭不怕晚,Google人工智能对话模型Bard测试和API调用(Python3)

刘悦技术分享 59

前言:

而今看官们对“python调用api”可能比较关怀,看官们都想要分析一些“python调用api”的相关知识。那么小编也在网络上网罗了一些关于“python调用api””的相关资讯,希望同学们能喜欢,姐妹们快快来学习一下吧!

谷歌(Google)作为开源过著名深度学习框架Tensorflow的超级大厂,是人工智能领域一股不可忽视的中坚力量,旗下新产品Bard已经公布测试了一段时间,毁誉参半,很多人把Google的Bard和OpenAI的ChatGPT进行对比,Google Bard在ChatGPT面前似乎有些技不如人。

事实上,Google Bard并非对标ChatGPT的产品,Bard是基于LaMDA模型对话而进行构建的,Bard旨在构建一个对话式的AI系统,使其能够更好地理解人类语言,并且具备进行多轮对话的能力。而GPT的目标是生成自然语言文本。

在特征数据层面,Bard使用了像Gmail、Meet等Google社交产品线中的对话数据来进行训练,这些数据已经经过了严格的隐私保护措施。而GPT则是通过大规模的网页爬虫来获取数据,它的训练数据量比LaMDA要大得多。

模型结构层面,Bard采用了一种称为“Transformer”的神经网络结构,该结构可以处理长文本并保持信息连贯性。GPT也使用了Transformer结构,但它还采用了一种称为“自回归”的方式,即按照时间步骤一个接一个地生成文本。

说白了,在应用层面上,Bard适合开发智能助手、聊天机器人、虚拟客服等应用。而GPT更适用于自然语言生成任务,例如文章撰写、机器翻译等等。

Bard对话测试(英文/中文)

访问 bard.google.com ,随后输入聊天内容:

一望而知,对话输入的内容只支持英文,并不能输入中文。

但事实上,只要稍微改变一下对话逻辑,也可以让Bard返回中文信息,比如:

Bard代码能力

私以为Bard的代码能力并不输于ChatGPT:

尤其是对自家的深度学习框架Tensorflow更是如数家珍,生成的代码如下:

import tensorflow as tfdef load_model():  """Loads the TensorFlow image recognition model."""  model = tf.keras.models.load_model('mobilenet_v2_1.0_224')  return modeldef recognize_objects(image):  """Recognizes objects in an image."""  # Convert the image to a tensor.  image = tf.image.convert_image_dtype(image, dtype=tf.float32)  # Resize the image to 224x224 pixels.  image = tf.image.resize(image, [224, 224])  # Normalize the image.  image = tf.image.normalize(image, mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])  # Predict the labels of the objects in the image.  predictions = model.predict(image)  # Return the labels of the objects in the image.  return predictionsdef main():  # Load the image recognition model.  model = load_model()  # Load an image.  image = tf.io.read_file('image.jpg')  # Recognize objects in the image.  predictions = recognize_objects(image)  # Print the labels of the objects in the image.  for prediction in predictions:    print(prediction)if __name__ == '__main__':  main()

这里是使用Tensorflow内置小模型mobilenet_v2_1.0_224的智能识图逻辑,简洁而严谨。

Bard网络架构

在浏览器(B端)架构上,Google极其自信地使用了HTTP2协议的接口进行通信,而没有仿效ChatGPT使用SSE协议:

我们知道ChatGPT使用SSE协议其实是等而下之的次优选择,因为GPT模型在推理上需要时间,所以走的模式是一边推理一边返回的流式模型,关于流式返回,请移玉步至:逐句回答,流式返回,ChatGPT采用的Server-sent events后端实时推送协议Python3.10实现,基于Tornado6.1 ,这里不再赘述。

而Google的Bard选择一次性返回所有推理数据:

所以推理效率上,Bard要优于ChatGPT,但仅限于免费产品线,截止本文发布,ChatGPT的收费产品gpt3-turbo和gpt4的推理效率都要远远高于其免费产品。

Bard的远程接口API调用

和免费版本的ChatGPT一样,Bard目前只支持浏览器端(B端)的使用,但也可以通过浏览器保存的Token进行远程调用,首先安装Bard开源库:

pip3 install --upgrade GoogleBard

随后复制浏览器端的token秘钥:

接着在终端通过Session进行注入:

python3 -m Bard --session UggPYghLzQdQTNx1kQiCRzbPBA1qhjC-dndTiIPCk3YPLR5TexmP7OQ7AfUdsfdsf1Q.

随后就可以进入终端内的对话场景,使用alt+enter组合键或者esc+enter组合键发送信息即可:

➜  work python3 -m Bard --session UggPYghLzQdQTNx1kQiCRzbPBA1qhjC-dndTiIPCk3YPLR5TexmP7OQdfgdfgdfUSg0UQ.        Bard - A command-line interface to Google's Bard ()        Repo: github.com/acheong08/Bard        Enter `alt+enter` or `esc+enter` to send a message.        You:hi  Google Bard:Hi there! How can I help you today?

非常方便,主要是速度相当惊艳。

结语

仅就免费版本所提供的产品力而言,Google Bard和ChatGPT可谓是各有千秋,私以为Google Bard在效率和使用逻辑上要更胜一筹,并不是网上所传言的那么不堪。所谓一枝独秀不是春,百花齐放才是春满园,Google Bard和百度的文心一言,都会对ChatGPT形成压力,让ChatGPT保持光速更新,成为更好的自己。

标签: #python调用api