MASUDAQ BLOG
NO DEVELOPMENT NO LIFE.
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 ...
.NET 8 コンソールアプリで、DI(Dependency Injection) する
Host.CreateDefaultBuilder と Host.CreateApplicationBuilder 以前の記事で、コンソール アプリで依存性の注入をするために、Generic Host を使う方法を説明しました。 .NET コンソールアプリで、DI(Dependency Injection) する ここで、以下のようなコードを説明しました。 // IHostBuilder ベース public class Program { public static void Main(string[] args){ IHost host = Host.CreateDefaultBuilder(args).ConfigureServices(services =>{...
.NET コンソールアプリで、構成情報を appsettings.json からロードする
コンソール アプリにおける構成情報のロード 以前の記事で、コンソール アプリで、Generic Host を使うことで、appsettings.json から構成情報をロードできることを説明しました。 .NET コンソールアプリで、DI(Dependency Injection) する Generic Host を使うことで、DI(Dependency Injection) 等の多くの機能が使えますが、構成情報のロードは、多くの機能の一部に過ぎません。 検証やデモ等で、簡単なコンソール アプリを開発する場合は、Generic Host の実装は、オーバースペックになるため、今回は、構成情報のロードに絞って説明します。 ConfigurationBuilder による構...
Azure OpenAI Client Library HTTP ログ出力の有効化
Azure OpenAI client library for .NET Azure OpenAI Service へのアクセスは、REST API で行えますが、JSON 文字列の要求の作成、応答の解析を行うのが手間になります。そこで、REST API をラップした SDK として、Azure OpenAI client library が提供されています。.NET での開発では、Azure OpenAI client library for .NET が利用できます。 nuget Azure.AI.OpenAI 一方で、REST API での開発と比べて、どのような HTTP 要求 / 応答が行われているか分からないためデバッグ時に問題となることがあります。このよ...
.NET 8 RC1 を Visual Studio 2022 で利用する
.NET 8 RC1 は、Go live で運用環境での利用がサポートされる 以下の記事にも書きましたが、.NET 8 は、2023 年 9 月 12 日に、.NET 8 RC1 がリリースされ、正式リリースの 2023 年 11 月 14 日 まで、あと 2 か月となりました。 .NET 8 リリース日と .NET ライフサイクルまとめ .NET 8 RC1 の特徴としては、サポート フェーズがあります。.NET 8 RC1 のサポート フェーズは、Go live となり、運用環境での利用もサポート対象となっています。 運用環境でのサポートがされるなら、さっそく、運用中のアプリケーションを .NET 8 RC1 ベースで!と、思ったりしますが、Visual Stud...
.NET 8 リリース日と .NET ライフサイクルまとめ
.NET 8 がリリースされた? 2023 年 9 月末に、Azure の管理アカウントに「Action required: Upgrade your App Service apps to .NET 8 (LTS) by 12 November 2024」、「Action required: Upgrade your App Service apps to .NET 8 (LTS) by 14 May 2024」というタイトルのメールがきました。 内容は、Azure App Service で、.NET 6, .NET 7 を使っているからメールしました。.NET 6 は、2024 年 11 月 12 日に、.NET 7 は、2024 年 5 月 14 日にサポート...
ngrok の代替となる Visual Studio 2022 Dev Tunnels
Visual Studio 2022 Dev Tunnels Visual Studio 2022 17.6 で、dev tunnels がサポートされました。トネリングを使ったリバース プロキシで、開発環境で起動したアプリをそのままパブリックの URL で公開できます。 API の開発等で、クライアントが、インターネット経由でのアクセスしかできない場合のデバッグに活用できます。 同様のことをするのに、これまでは、ngrok を使っていましたが、これが、Visual Studio 2022 に統合されました。設定も簡単で、認証もかけることができます。すごい!!待ってました!! Dev Tunnels の設定 Visual Stuido のデバッグの開始ボタンの [▼] -...
Visual Studio 2022 で Sass(.scss) をコンパイルする
Sass(Syntactically Awesome Style Sheets) Sass(Syntactically Awesome Style Sheets) は、CSS(Cascading Style Sheets) の構文を拡張したスタイルシート言語で、より柔軟な記述方法で Web サイトのスタイルを定義できます。Sass には、SASS、SCSS の 2 種類の記述方法があり、それぞれ、*.sass、*.scss といった拡張子で保存します。 Web サイトにスタイルを適用する場合は、これらのファイルを HTML で直接参照するのではなく、*.sass、*.scss ファイルをコンパイルして、CSS を出力して、出力した CSS を HTML で参照します。 S...
Azure App Service 発行プロファイルで appsettings.json を除外する
発行プロファイル 発行プロファイル(.pubxml) を使うと、簡単に、Azure App Service へアプリをディプロイできて便利です。 Visual Studio 2022 からだと、Web プロジェクトを選択し、右クリックメニューから、[発行] を選択すると、ウィザードが起動するので、対象のサービス、対象の Azure サブスクリプション、対象のリソースを選択することで、発行プロファイルを簡単に作成できます。 発行プロファイルができてしまえば、[発行] ボタンから、ワンプッシュで、Azure App Service へアプリをディプロイできます。 CLI からだと、以下のような感じです。 >dotnet publish xxxxxxx.csproj /p:...
最新の記事
- .NET 10 リリース日と .NET ライフサイクルまとめ
- Foundry Local を使用して gpt-oss へのアクセスを .NET(C#) コンソール アプリで実装する方法
- Azure AI Foundry Agent Service MCP クライアント サポートを .NET(C#) コンソール アプリで実装する方法
- Azure AI Foundry Agent Service コード インタプリターで日本語を使用したグラフを描画する方法
- C# でも動作するマルチエージェント フレームワーク AutoGen 動的グループチャット編
- C# でも動作するマルチエージェント フレームワーク AutoGen ラウンドロビン グループチャット編
- C# でも動作するマルチエージェント フレームワーク AutoGen
- Blazor WebAssembly でのファイル ドラッグ&ドロップの実装 JavaScript との相互運用編
- Blazor WebAssembly の Bootstrap を最新にする
- Blazor WebAssembly でのファイル ドラッグ&ドロップの実装
人気の記事
- C# でも動作するマルチエージェント フレームワーク AutoGen
- .NET 10 リリース日と .NET ライフサイクルまとめ
- Entra ID においてアクセス許可へのユーザー同意を削除する
- .NET 8 RC1 を Visual Studio 2022 で利用する
- Hyper-V でルーターを構成する
- .NET 8 リリース日と .NET ライフサイクルまとめ
- Visual Studio 2022 で Sass(.scss) をコンパイルする
- .NET コンソールアプリで、構成情報を appsettings.json からロードする
- Azure AI Foundry Agent Service MCP クライアント サポートを .NET(C#) コンソール アプリで実装する方法
- .NET 8 コンソールアプリで、DI(Dependency Injection) する