GitHub Modelsお試し
先日、GitHub Modelsなる機能が開始され、なんとなくGitHub Copilotのモデルをいじれる機能なのかなという印象を持ったが、具体的に何ができるのかよくわからなかったのでとりあえずPublic Betaに申し込んでおり、使えるようになったようなので使ってみる。
GitHub、AIアプリ開発環境「GitHub Models」発表。主要なAIモデルをプレイグラウンドで評価、アプリへの組み込みまでシームレスな環境を提供 - Publickey
8/2に申請して、8/17に使えるようになったので、こちらは2週間ほどで。
Getting Started
Invitationのメールには GitHub preview terms と GitHub models Discussion ぐらいしかなく、何をすれば良いかもよく分からない感じ。
GitHub Copilot Extensionなどと同様、Marketplaceから利用を開始する模様。
Marketplace
MarketplaceのLearn more のリンクにGitHub Modelsの説明があった。
AI モデルを使用したプロトタイプ作成 - GitHub Docs
生成 AI アプリケーションを開発する場合は、GitHub Models を使用して、AI モデルを無料で検索して実験できます。 アプリケーションを運用環境に移行する準備ができたら、有料の Azure アカウントからトークンに切り替えることができます。 Azure AI のドキュメントを参照してください。
生成AIアプリを開発するときに使えるモック(?)的なサービスということらしい。
GitHub モデルの責任ある使用 - GitHub Docs
GitHub Models は、学習、実験、概念実証のアクティビティが可能になるように設計されています。 この機能にはさまざまな制限 (1 分あたりの要求数、1 日あたりの要求数、要求あたりのトークン数、同時要求数など) が適用されます。運用環境のユース ケース向けには設計されていません。
利用量的なところで制限がかかってるらしい。
AI モデルを使用したプロトタイプ作成 - GitHub Docs
Copilot Individual契約だと1日あたり150リクエストぐらい。(無料版と同じ制限というのが少し悲しいが)
Playground
Modelの利用方法にはWeb上で使うPlaygroundとプログラムから呼び出すAPIの2種類があるらしい。
まずはPlaygroundの方を試してみる。
Marketplaceからモデルの詳細画面に移動。
READMEタブに概要、その他にEvaluation, Transparency, Licenseなどがある。
EvaluationについてはGPT-4oの場合はOpenAIのアナウンスを持ってきているような記述がある一方、Llama3.1やPhi-3などではGitHub独自にEvaluationしているような記述になっている。CohereやMistralだとEvaluationタブがないモデルもある。
右サイドバーにはContextや言語などの情報。
右上の >_ Playground
ボタンを押すか、モデル詳細画面上部に表示されているプロンプト例のボタンを押すとPlayground画面に遷移。
System prompt, Max Tokens, Temperature, Top-P, Stop wordを指定できる。
左上のトグルをChat
からCode
に変えると、設定したパラメーターを呼び出すコードを表示してくれる。
GPT-4oの場合、プログラム言語はPython
, JavaScript
, REST (cURL)
、SDKはAzure AI Interface SDK
, OpenAI SDK
が選べる。(他のモデルを見ても、言語は上記3つ、SDKはAzure AI Interface SDK
が基本という感じ)
API
Model詳細画面やPlaygroundの右上にある<> Get started
を押すと、モデルを呼び出すコードを生成できる。
説明の中でコード例の表示などはあるが、Playgroundで設定したパラメータは引き継いでくれないようで、単純にSDKを使ったGetting Startedを表示しているだけな感じ。
あと、Codespacesで試すよう案内はあるが、Codespacesを開くと下のリポジトリが開くだけなので、これもあまり便利そうではなく、単なるCodespacesの宣伝という感じ。
実行にはGitHubのPATが必要になるが、PAT生成時にPermissionは与える必要がなく、GitHub ModelsのModelを動かしているAzure嬢のサービスにGitHubのユーザー情報を送るだけのために使われる感じ。
AIアプリ開発用のお試し環境を提供するというコンセプトは理解できたが、もう少しコードに落とし込むところが便利になると良いかなと思った。
著名なモデルをサクッと試してみたいときに軽く使えそうなサービスかなというのが現状の印象。
Model呼び出すコードに使われる ai-inference
というパッケージ、npmもpypiの方も今年の6月に1.0.0-beta1がリリースされて、まだ1.0.0はリリースされていないようだ。ライブラリの方がbetaのままサービスの方が出てしまうのはどうなんだろう。
そして @azure-rest/ai-inference - npm の方を使ったコードをコピペして持ってきたらエラー...。
GitHubのリポジトリの方を検索してみると、new
が必要ないっぽい。
- const client = new ModelClient(endpoint, new AzureKeyCredential(token));
+ const client = ModelClient(endpoint, new AzureKeyCredential(token));
上記は勘違い。サンプルコードはJavaScript向けだからTypeScriptで書くとエラーが出るというだけだった。
2024/09/12に利用可能となったOpenAI の新しいモデル、o1-preview
とo1-mini
が使えるようになってる...と思ったらPlaygroundなどで試すことはできず、Azureのearly accessプログラムへの導線が用意されてるだけだった。残念。
GitHub ChatとModelsでo1使うearly access programが開始された。
Modelsの方は申請済み。Chatの方はなんかうまく申請できない。
昨日、o1モデルにアクセスできるようになったという通知が来てた。1ヶ月弱。
GitHub Marketplaceの方もPlaygroundにアクセスできるようになっていたし、VS Code Extensionの方もo1-preview
と o1-mini
にアクセスできるようになっていた。
また、GitHub Copilot Extensionの方にModels (GitHub)
というExtensionが追加されており、この拡張機能を使うとGitHub Modelsで使えるLLMモデルに対してVS CodeのCopilot Chatから問い合わせできるようになるらしい。
Models (GitHub) · GitHub Marketplace
LLMについて詳しく無いからGPT-4o以外を使う場面があまり想像できないなぁ...