PAIでQwenを実装

先日たまたま[この記事](https://weel.co.jp/media/tech/qwen-72b/)を見かけて気になったのでQwenを触ってみたいな〜とおもってたところ、

AlibabaCloudのPAIをつかってできそうなのでやってみる〜〜〜〜〜〜✌️

## Qwenってなに

https://qwen.readthedocs.io/en/latest/

> Qwen は、Alibaba Group の Qwen チームの大規模言語モデルおよび大規模マルチモーダル モデル シリーズです。現在、大規模な言語モデルは Qwen2 にアップグレードされています。言語モデルとマルチモーダルモデルはどちらも、大規模な多言語データやマルチモーダルデータで事前学習され、人間の好みに合わせて高品質のデータで事後学習されます。 Qwenは、自然言語理解、テキスト生成、視覚理解、音声理解、ツールの使用、ロールプレイ、AIエージェントとしてのプレイなどが可能です。
> 

なんかすごいLLMってことね

ちなみに

> 2023年11月30日、中国の中国の大手IT企業**アリババ**が、72Bパラメータを持つ大規模言語モデル「**Qwen-72B**」を公開しました。
> 

> このモデルは、**Llama2 70Bの性能を大幅に上回り**、オープンソースモデルでありながら、多くのベンチマークであの**GPT-3.5を上回るスコアを獲得**しています。
> 

だそうで　すごい

## PAIでつかってみよう

[Tongyi QianwenをEASにすばやく展開](https://www.alibabacloud.com/help/ja/pai/use-cases/use-pai-eas-to-quickly-deploy-tongyi-qianwen)

公式に資料があったのでこの通り進めてみる

ちなみにPAIは[Platform for AIとは機械学習のためのオールインワンソリューション](https://www.alibabacloud.com/help/ja/pai/product-overview/what-is-machine-learning-platform-for-ai?spm=a2c63.p38356.0.0.54577b56njJxGz)

EASはElastic Algorithm Service 、[オンライン推論サービスまたはAIを利用したwebアプリケーションとしてモデルを展開できるモデルサービングプラットフォーム](https://www.alibabacloud.com/help/ja/pai/user-guide/eas-model-serving/)

PAIコンソールにいき、まずはワークスペースをつくる

![スクリーンショット 2024-08-27 11.30.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/c8f2ff65-7447-ec5b-b2b3-d967ef6fee1f.png)


EASページでサービスのデプロイをする

項目は[ドキュメント](https://www.alibabacloud.com/help/ja/pai/use-cases/use-pai-eas-to-quickly-deploy-tongyi-qianwen)の通り

![スクリーンショット 2024-08-27 11.36.54.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/b4435a99-90bf-3921-7e24-10c29a824013.png)


![スクリーンショット 2024-08-27 12.22.21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/e9eb8646-8554-ae08-c678-43015eb9d7e7.png)


いざデプロイして出来上がり〜

![スクリーンショット 2024-08-27 12.22.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/b3266fed-0aac-5ced-d033-40c2ff177c07.png)


オンラインデバッグでまずはリクエストしてみる

![スクリーンショット 2024-08-27 12.24.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/11bbf9f5-c787-f2c6-a960-cbbb0422992a.png)


とりあえずドキュメントの通り投げたら想定の結果が返ってきた

ので日本語で質問してみた

![スクリーンショット 2024-09-27 16.14.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/d9953b7d-4927-575c-96d5-3079b89f75e0.png)


ちょっと惜しい！これQwen2ならもっといい感じに返ってくるのかな？と思ったので調べてみた

なんかどうやらQwen2を展開するやり方も公式にあったのでやってみる

[EAS を使用してワンクリックで LLM 大規模言語モデル アプリケーションを 5 分でデプロイ](https://www.alibabacloud.com/help/zh/pai/use-cases/deploy-llm-in-eas?spm=a2c63.p38356.0.0.d96f7d8dzM7wDF#f3ef8927ec4l2)

原文が中国語なので翻訳しながら読み進めてみる

さっきはカスタムモデルのデプロイだったけど、今回はシナリオベースモデルのデプロイらしい

LLM depolymentを選択する

![スクリーンショット 2024-09-27 15.45.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/07198f2b-b37b-575b-9533-dcdccc9b339a.png)


ドキュメン卜にある通り項目を埋めてみる

![スクリーンショット 2024-09-27 15.49.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/8a2708e8-bac7-3625-7da4-20b1d7190638.png)


いざデプロイして動かす！

今度はオンラインデバッグではなくてアプリから使ってみる

![スクリーンショット 2024-09-27 16.00.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/72ee908a-03eb-d1c1-e977-ba0079fb9b7c.png)


いいかんじ〜

## HuggingFaceでデモさわれた

これちなみにQwen2-7Bだけど72Bだとまた違うのかな？と思ったので調べたら、 Hugging Faceにデモがあったので触ってみた

https://huggingface.co/Qwen

ここにいろんなモデルあった〜

そんなかからQwen/Qwen2-72B-Instructをやってみる

![スクリーンショット 2024-09-27 16.18.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/dd9179a9-2db3-1c6d-4483-295fae2725eb.png)


おお！自然だ！

7Bと72Bでも結構違いあるんだね

そしてHugging FaceのほうにQwen2.5もあったので触ってみる

![スクリーンショット 2024-09-27 16.19.41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/267793/7c958d55-d1ca-5015-4c7b-5ce80d25a06d.png)


こちらもいい感じ　質問が単純なせいでQwen2-72Bの結果とそこまで変わらないかもしれないけど、よりわかりやすい情報と文章になっている？気がする？たまたま？

## まとめ

- PAI EAS、ささっとモデルを試すには使いやすい
- もうちょいドキュメントが充実していたらとっつきやすいかも　ところどころ？ってなるとこもあった
- APIとして叩くとかもさくっとできそうだしマネージドでらくちん
- Qwen2-7BとQwen2-72Bは結構差がでかいのかもしれない？
- ギャルっぽく喋ってとかは苦手そうだったので更なる改良がまたれる