MASUDAQ BLOG
NO DEVELOPMENT NO LIFE.
Blazor WebAssembly でのファイル ドラッグ&ドロップの実装 JavaScript との相互運用編
Blazor WebAssembly でのファイル ドラッグ&ドロップの実装の検討 以前の記事で、Blazor WebAssembly でのファイル ドラッグ&ドロップの実装を JavaScript との相互運用 を使用しないで行う方法を説明しました。 Blazor WebAssembly でのファイル ドラッグ&ドロップの実装 今回は、JavaScript との相互運用 の使用を最小限に、ファイル ドラッグ&ドロップの実装を行う方法を説明します。 JavaScript の利用を最小限に 前回の記事で詳細を記載していますが、Blazor WebAssembly でファイル ドラッグ&ドロップの実装を完結できない理由としては、 drop イベント の引数 DragEve...
Blazor WebAssembly の Bootstrap を最新にする
Blazor WebAssembly テンプレート Bootstrap ライブラリの最新化 過去に以下サイトの記事でASP.NET Core Web アプリケーションをテンプレートで作成した際の Bootstrap ライブラリを最新化する方法を説明しました。 ASP.NET Core の Bootstrap を最新にする やり方はほとんど変わらないですが、今回は、Blazor WebAssembly テンプレートの Bootstrap ライブラリを最新化する方法を説明します。 Blazor WebAssembly テンプレートでの Bootstrap ライブラリ参照 Blazor WebAssembly テンプレート生成後のコードでは、wwwroot/index.ht...
Blazor WebAssembly でのファイル ドラッグ&ドロップの実装
Blazor WebAssembly でのファイル ドラッグ&ドロップの実装の検討 Blazor WebAssembly では、JavaScript との相互運用ができるため公開されている情報や各種 JavaScript のライブラリを使用すれば、ファイル ドラッグ&ドロップの実装ができます。 JavaScript を使用すれば、ほとんどのことは実現できると思いますが、今回は、あえて JavaScript の力を借りずに、Blazor WebAssembly で提供されている範囲で実装する方法を順を追って検討し実現していきたいと思います。 InputFile コンポーネント Blazor WebAssembly 標準では、ファイルの操作に InputFile コンポーネン...
Entra ID においてアクセス許可へのユーザー同意を削除する
要求されているアクセス許可へのユーザーの同意 Entra ID で認証を実装すると、認証時に同意画面が表示されるようになります。 これは、OAuth をベースとした Entra ID の同意のフレームワークにより実現されており、以下の記事にどのようなものなのかの概要の記載があります。 https://jpazureid.github.io/blog/azure-active-directory/azure-ad-consent-framework/ どのユーザーが同意を行ったかの確認は、[Azure Portal] - [エンタープライズ アプリケーション] から対象のアプリを選択し、[セキュリティ] - [アクセス許可] で確認できます。API の種類、クレーム(...
.NET(C#) コンソールアプリで、Phi-3-vision を実行し画像を入力する
Phi-3-vision 前回は、Microsoft Research が開発した SLM(Small Language Model) Phi-3 を .NET(C#) でローカル実行する方法を説明しました。 .NET 8 コンソールアプリで、Phi-3 を実行する 前回は、テキスト入力をサポートするモデルを使用しましたが、今回は、画像入力をサポートするモデル Phi-3-vision を使用したコード例を説明します。 今回も Hugging Face で公開されている ONNX 形式のモデルを使用したいと思います。2024/06 現在では、以下のモデルが公開されています。 microsoft/Phi-3-vision-128k-instruct-onnx-cpu ...
.NET(C#) コンソールアプリで、Phi-3 を実行する
Phi-3 ラインナップ Phi-3 は、Microsoft Research が開発した SLM(Small Language Model) と呼ばれるコンパクトな言語モデルです。最大の特徴としては、モデルが公開されており、PC レベルでのリソースでも動作するため、言語モデルをローカルで実行することができます。エッジへの言語モデルの組み込みが可能です。 小さくても強力: 小規模言語モデル Phi-3 の大きな可能性 現在(2024/06)、Phi-3 モデルのラインナップは、以下のようになっています。 No. モデル パラメータ数 モデル名 コンテキスト長 1 Phi-3-mini 3.8B Phi-3-Mini-128K-Instruc 128K ...
Blazor WebAssembly から ASP.NET Core Web API を介した Azure OpenAI Service 応答ストリーム(Server-Side Events)の受信
Blazor WebAssembly から中間層を介した Server-Sent Events の受信 前回、Azure OpenAI Service からのストリーム応答を ASP.NET Core Web API を介して、フロントエンド アプリで受信する方法を説明しました。 ASP.NET Core Web API を経由した Azure OpenAI Service 応答ストリーム(Server-Side Events)の受信 前回は、フロントエンド アプリを .NET コンソール アプリで実装しましたが、今回は、フロントエンド アプリに Blazor WebAssembly を使用した例を説明します。 Blazor WebAssembly を使用することで、...
ASP.NET Core Web API を経由した Azure OpenAI Service 応答ストリーム(Server-Side Events)の受信
中間層を介した Server-Sent Events 前回、Azure OpenAI Service からの応答をストリームで受信する方法を説明しました。Azure OpenAI Service では、応答を Server-Sent Events で受信でき、順次、回答の部分文字列を取得でき、取得した文字列を順次レンダリングすることができます。 Azure OpenAI Client Library で応答をストリームで受信する ただし、Azure OpenAI Service を利用したシステムを構築する場合では、前回の例のようなフロントエンドから直接 Azure OpenAI Service へ要求を行うシーンは少ないと思います。 多くのシステムでは、以下のように...
Azure OpenAI Client Library で応答をストリームで受信する
応答をストリームで受信 Azure OpenAI client library for .NET では OpenAIClient クラスの GetChatCompletionsStreaming メソッドで、生成された回答をストリームで取得できます。ストリーム取得することで、生成された回答の文字を順次取得することができます。 Azure OpenAI client library for .NET では、以下のようなコードで、ストリームで応答を受信できます。 OpenAIClient openAIClient = new(new Uri(aoaiEndpoint), new AzureKeyCredential(aoaiApiKey));ChatCompletionsOp...
Azure OpenAI Client Library HTTP ログ出力を LoggerFactory に転送する
Azure OpenAI client library for .NET ログ出力の有効化 Azure OpenAI client library for .NET のログ出力を有効化する方法を以下の記事で説明しました。 Azure OpenAI Client Library HTTP ログ出力の有効化 この記事では、AzureEventSourceListener.CreateConsoleLogger、AzureEventSourceListener.CreateTraceLogger メソッドを使用して、ログの出力先を指定していました。また、これらのメソッドの引数で、ログレベルを設定していました。 今回は、Azure OpenAI client library ...
最新の記事
- Blazor WebAssembly でのファイル ドラッグ&ドロップの実装 JavaScript との相互運用編
- Blazor WebAssembly の Bootstrap を最新にする
- Blazor WebAssembly でのファイル ドラッグ&ドロップの実装
- Entra ID においてアクセス許可へのユーザー同意を削除する
- .NET(C#) コンソールアプリで、Phi-3-vision を実行し画像を入力する
- .NET(C#) コンソールアプリで、Phi-3 を実行する
- Blazor WebAssembly から ASP.NET Core Web API を介した Azure OpenAI Service 応答ストリーム(Server-Side Events)の受信
- ASP.NET Core Web API を経由した Azure OpenAI Service 応答ストリーム(Server-Side Events)の受信
- Azure OpenAI Client Library で応答をストリームで受信する
- Azure OpenAI Client Library HTTP ログ出力を LoggerFactory に転送する
人気の記事
- Windows のライセンス認証で、エラーコード 0x80072EE2 が発生
- Visual Studio 2022 で Sass(.scss) をコンパイルする
- .NET 8 RC1 を Visual Studio 2022 で利用する
- Hyper-V でルーターを構成する
- .NET コンソールアプリで、構成情報を appsettings.json からロードする
- Hyper-V Linux 統合サービスでマウスキャプチャを有効にする
- System.Drawing.Common の代替として Microsoft.Maui.Graphics を Linux で利用する
- .NET 8 コンソールアプリで、DI(Dependency Injection) する
- Hyper-V と NTP(Linux ntpd) 時刻同期の問題
- IIS 7 で、特定の拡張子のファイルへのアクセスを制限する