谷歌(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 tf
def load_model():
"""Loads the TensorFlow image recognition model."""
model = tf.keras.models.load_model('mobilenet_v2_1.0_224')
return model
def 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 predictions
def 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 (https://bard.google.com/)
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保持光速更新,成為更好的自己。