先日リリースされたばかりの生成AIプラットフォーム”Alibaba Cloud Model Studio” を使ってみる話です。 2024年7月15日まで限定無料ということでまずは触ってみました。
先に言うと日本語も利用可能(質問することも、回答も)です。 私が普段使っている Google Gemini と同じようにチャットやプログラミングの支援に使えることがわかりました。
目次
Alibaba Cloud Model Studio とは
Alibaba Cloud Model Studioは、Alibaba Cloudが提供する生成AIプラットフォームです。Qwenなどの汎用モデルや、様々なモデルをベースに、ビジネスを理解するインテリジェントなアプリケーションを構築できます。
主な特徴は以下の通りです。
- ワンストップ生成AIプラットフォーム: モデルの開発、トレーニング、デプロイ、管理までをワンストップで実行できます。
- Qwenなどの汎用モデル: Alibaba Cloudが開発した大規模言語モデルQwenなどを利用できます。
- ビジネスを理解するインテリジェントなアプリケーション: 業界固有の知識を取り込んだモデルを作成し、ビジネスに特化したアプリケーションを開発できます。
- マルチモーダル対応: テキストだけでなく、画像や音声などのマルチモーダルなデータを扱えるモデルも構築可能です。
Alibaba Cloud Model Studioは、以下のようなユースケースで活用できます。
- テキスト作成: 物語、公式文書、電子メール、脚本、詩を書きます。
- テキスト処理: テキストを洗練し、要約します。
- プログラミング支援: コードの作成と最適化を行います。
- 翻訳: 英語、日本語、フランス語、スペイン語など、さまざまな言語への翻訳を提供します。
- 対話シミュレーション: インタラクティブな対話のためのロールプレイングを行います。
- データの視覚化: グラフを作成し、データを視覚化します。
また、Model Studioに関する以下の技術ブログも参考なると思います。
Alibaba Cloud Model Studio の使用開始
Alibaba Cloud コンソールにログインし、Alibaba Cloud Model Studio の画面に移動します。
画面上の”Use Now”をクリックします。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-1024x478.png)
ここで何回かエラーが発生します。 エラー画面のスクリーンショットの取得に失敗したのでメッセージは紹介出来なかったのですがリトライで進みました。
そして Term を確認し承諾すると Model Studio の利用画面に移動します。 利用開始までのステップは以上です。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-1-1024x528.png)
Alibaba Cloud Model Studio の画面構成
ホーム画面は以下です。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-2-1024x506.png)
右上にある”English”にマウスフォーカスすると対応する言語は現時点では English と中国語の2つであることがわかります。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-3.png)
同じく右上にある人型のアイコンにマウスフォーカスすると以下4つのメニューがあることがわかります。
- Workspace Management
- API-KEY
- Term of Service
- Log Out
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-4.png)
左側のメニューは以下。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-5.png)
“Model Gallery”では使用するAI モデル(Qwen-Max や Qwen-Plusなど)が一覧化されており各々の詳細を確認したり API の呼び出し方のサンプルコードの確認を各AIモデルごとに簡単に行えます(そういう意味で Gallery)。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-6-1024x757.png)
“Model Experience”は各モデルを実際に使う画面です。 Debuggingタブからデバッグも可能なのとモデルは最大3つまで指定して比較もできるとのこと。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-7-1024x799.jpg)
System tools > Statictics では利用状況(API Call数)の統計情報を確認可能です。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-7-1024x690.png)
Qwen-Max を使ってみる
home画面から以下内容で問合せてみます。
Q Qwen-Max と Qwen-PlusとQwen-Turboの違いは何ですか? それぞれの長所と短所、利用シーンを教えてください。
回答は以下。 結論から言うとQwen-XXXについて情報を持っていないのですが、MaxやPlusやTurboという言葉から長所や短所を類推した回答が得られました。
また、日本語について問い合わせも回答も対応していることがわかりました。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-9-1024x572.png)
もう1つ、Qwen-Max が把握している情報について回答が得られた問答も紹介します。
Q Alibaba Cloud の長所と日本における効果的な利用シーンを教えてください
回答は以下。 内容はまったく違和感もなく明らかな間違いもありません。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-10.png)
日本での活用シーンについても1番目に日本と中国間のネットワーク接続という Alibaba Cloud の最大の強みが回答されています。
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-11.png)
もう1つプログラミングに関しても聞いてみます。 先日、Google Gemini に WebCVでのコーディングを色々聞いていました。同じように Alibaba Cloud Model Studio も利用出来そうか試してみます。
Q WebCV でWebカメラの映像から動くものに矩形で囲いたい
前半は WebCVに関する説明
![](https://www.bigriver.jp/wp-content/uploads/2024/07/image-12.jpg)
後半はコードのサンプルが提示されました。 GeminiではPython のみのでのサンプルコードでしたがこちらは Flaskを利用する部分が異なりました(それに良い悪いもない話ですが)。
from flask import Flask, Response
import cv2
app = Flask(__name__)
def generate_frames():
cap = cv2.VideoCapture(0) # Webカメラを開く(インデックスはデバイスによって変わる場合があります)
while True:
success, frame = cap.read() # フレームを読み込む
if not success:
break
# 簡単な背景サブトラクションによるモーション検出の例(複雑な処理には別のアルゴリズムが必要)
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
if first_frame is None:
first_frame = gray
continue
frameDelta = cv2.absdiff(first_frame, gray)
thresh = cv2.threshold(frameDelta, 50, 255, cv2.THRESH_BINARY)[1]
# contoursを取得して矩形で囲う
contours, _ = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
for contour in contours:
if cv2.contourArea(contour) < 300: # 面積が小さいものは無視
continue
(x, y, w, h) = cv2.boundingRect(contour)
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 255, 0), 2)
ret, buffer = cv2.imencode('.jpg', frame)
frame = buffer.tobytes()
yield (b'--frame\r\n'
b'Content-Type: image/jpeg\r\n\r\n' + frame + b'\r\n')
@app.route('/video_feed')
def video_feed():
return Response(generate_frames(),
mimetype='multipart/x-mixed-replace; boundary=frame')
if __name__ == "__main__":
app.run(debug=True)
モデルの違い
使っているとモデルが複数あることがわかりますがその違いは何でしょうか? Alibaba Cloud のホームページで調べた情報を整理してみました。
まず Qwen には通常版と Open Source版の2つの分類があります。
Model | Qwen LLMs | Open Source Qwen LLMs |
---|---|---|
Qwen-Max | ✔ | |
Qwen-Plus | ✔ | |
Qwen-Turbo | ✔ | |
Qwen1.5-110B-Chat | ✔ | |
Qwen1.5-72B-Chat | ✔ | |
Qwen1.5-32B-Chat | ✔ | |
Qwen1.5-14B-Chat | ✔ | |
Qwen1.5-7B-Chat | ✔ |
通常版は Turbo / Plus / Max の3つです。 Turbo < Plus < Max の順で大規模に対応するとのこと。 2024年7月15日まで限定無料で3つとも利用出来ますがおそらく課金開始になった際には性能に応じて課金にも差がでるのではと予想します。
Qwen-Max | Qwen-Plus | Qwen-Turbo | |
---|---|---|---|
概要 | このモデルは、1000億パラメータ規模の超大規模言語モデルであり、中国語や英語などの複数の入力言語をサポートしています。このモデルは、ローリングリリースで定期的に更新されています。安定したバージョンを使用する場合は、履歴スナップショットバージョンを使用してください。 現在のQwen-Maxモデルは、Qwen-Max-0428スナップショットバージョンに相当し、どちらもQwen-Maxの最新のアップデートです。また、このモデルは、Qwen 2.5の基盤となるAPIモデルとして機能します。 | このモデルはQwen-Turboの拡張バージョンであり、中国語や英語などの複数の入力言語をサポートしています。 | このモデルは、中国語や英語など複数の入力言語をサポートする 超大規模言語モデルです。 |
入力と出力の制限 | このモデルは、最大 8,000 トークンのコンテキストをサポートします。正常なモデルの使用と出力を保証するために、入力トークンの最大数は 6,000 に制限されています。 | このモデルは、最大 32,000 トークンのコンテキストをサポートします。正常なモデルの使用と出力を保証するために、入力トークンの最大数は 30,000 に制限されています。 | このモデルは、最大 8,000 トークンのコンテキストをサポートします。正常なモデルの使用と出力を保証するために、入力トークンの最大数は 6,000 に制限されています。 |
課金 | 2024/7/15まで限定無料 | 2024/7/15まで限定無料 | 2024/7/15まで限定無料 |
以上