①Web アプリをデプロイするボタンを押下 ②デプロイ設定の入力 ③デプロイが進行 ④デプロイが完了したら、アプリにアクセスする ⑤動作確認 前の記事 hiro128.hatenablog.jp 前回の記事でプレイグラウンドで動作確認をしましたが、プレイグラウンドは公開できま…
目次 目次 C# だけで Azure OpenAI の RAG を試してみたい (1)検討したシステム構成と処理フロー C# だけで Azure OpenAI の RAG を試してみたい (2)C# によるテキストのクレンジング・チャンクの方針 C# だけで Azure OpenAI の RAG を試してみたい (3…
データの追加 「データの追加」を開始する データソースの選択 「インデックスデータフィールドのマッピング」の設定 「データの管理」の設定 「設定のレビュー」行い完了させる プレイグランドでの動作確認 前の記事 hiro128.hatenablog.jp データの追加 チ…
ドキュメントの登録 Embedding の取得 ドキュメントのアップロード ドキュメントの削除時の注意点 ソースコード全体 前の記事 hiro128.hatenablog.jp ドキュメントの登録 作成したソースコードの詳細は以下を参照ください。 github.com Embedding の取得 チ…
AI Search の検索インデックス作成 フィールド セマンティック構成 ベクタープロファイル 前の記事 hiro128.hatenablog.jp AI Search の検索インデックス作成 クロールしてクレンジングしたはてなブログ記事のドキュメントを登録する AI Search のインデック…
留意点②:Blob コンテナ上でのソースデータの更新日時の管理 Blob メタデータへ url と 最終更新日時を付加したうえで、Blob 上の既存項目から更新があればアップロードする 前の記事 hiro128.hatenablog.jp 留意点②:Blob コンテナ上でのソースデータの更新…
html ファイルのクレンジング どのような実装をしたのか 参考にした Python のサンプルの実装 移植した C# の実装 前の記事 hiro128.hatenablog.jp html ファイルのクレンジング 作成したソースコードの詳細は以下を参照ください。 github.com どのような実…
TokenCounter の実装 Tokenizer のライブラリ 作成した C# のソースコード 前の記事 hiro128.hatenablog.jp TokenCounter の実装 SplitPlainTextParagraphs メソッドで正しくトークンをカウントするために必要な tokenCounter パラメーターはソースコードを…
C# のみで RAG を構築する場合の留意点 留意点①:C# によるテキストのクレンジング・チャンク SemanticKernel.TextChunker を使う SplitPlainTextParagraphs メソッドの留意点 前の記事 hiro128.hatenablog.jp C# のみで RAG を構築する場合の留意点 C# では…
はじめに カスタマイズ方針 検討したシステム構成と処理フロー 注意 ソースコードと各プロジェクトの解説 はじめに 最近 Azure OpenAI の RAG について色々調べていますが、サンプルアプリは Python が多いです。 自分は C# が大好きなので、C# でやってみた…
ブレークポイントやコンソールに出力させてデバッグしたいときに、リトライが発生して、関数が複数実行されると非常にデバッグがやりにくいです。 それを制御する設定です。なお、この設定値は Source = BlobTriggerSource.EventGridの場合でも有効です。Azu…
前回 Visual Studio Preview の既知の問題で時間を溶かしてあまり詳しく挙動を確認できなかったので、再度どれくらいいい感じにリネームしてくれるか確認してみました。 hiro128.hatenablog.jp well-known なアルゴリズム well-known なアルゴリズムのネーミ…
AI-Powered Rename Suggestionsを試しました。以下のブログで紹介されていた記事です。 devblogs.microsoft.com 動作させるのに地獄を見る… この機能、2023/12/24 現在、Visual Studio 2022 Preview Version 17.9.0 Preview 2 (この時点での最新版)では不具…
2023年7月18日に、母校である山形県立山形東高等学校の「山東探究塾II中間発表会」に研究助言者として参加してきました。 山東探究塾とは「主体的・協働的で深い学び(探究型学習)による様々な教育プログラムを通して、将来、地域や国内外の課題を解決でき…
「壊れているため開けません。ゴミ箱に入れる必要があります。」 なんじゃこりゃ!? アプリをゴミ箱に捨てて、インストーラーDLしてインストールし直したら直りました。
Orleans について一通り、学んだ後は以下のモジュールにトライしてみると、より深く理解が得られます。おすすめです。learn.microsoft.com
公式でも、Xamarin から .NET へのアップグレードが案内されるようになりました。いよいよ Xamarin が終焉が近くなってきました。 learn.microsoft.com Xamarin.Forms から MAUI への移行は .NET Upgrade Assistant が利用できます。 learn.microsoft.com Xa…
目次 目次 サイロの役割 サイロの実装例 前の記事はこちらです。 hiro128.hatenablog.jp サイロの役割 サイロは複数の仮想アクターつまりグレインをホストするコンテナです。サイロは単一ではその効力を発揮できません。複数のサイロによって構成されるグル…
目次 目次 グレインの役割 グレインの取得 グレインの実装例 インターフェース グレインのその他の特長 前の記事はこちらです。 hiro128.hatenablog.jp グレインの役割 グレインはユーザー定義のID(identity)、業務ロジック(behavior)、およびインメモリ…
目次 目次 フロントエンドの役割 フロントエンドの実装例 前の記事はこちらです。 hiro128.hatenablog.jp フロントエンドの役割 フロントエンドは、www と Orleans の世界のゲートウェイの役割を果たします。 ( REST API と Orleans 独自の世界を相互変換す…
目次 目次 Web App Azure Table 前の記事はこちらです。 hiro128.hatenablog.jp Web App フロントエンドにアクセスできて、サイロ01、サイロ02にアクセスできなければデプロイ成功です。 フロントエンド パブリックアクセス可 サイロ01 パブリックアクセス不…
ARM版 Visual Studio 2022 Preview 17.6.0 Preview 1.0 でついに MAUI がサポートされました! 詳細は後日レポート予定です。
目次 目次 Orleans は何を解決するために生まれ、どのようなフレームワークなのか Orleans の 構成と重要なプリミティブ(構成要素) Orleans の構成要素:フロントエンド Orleans の構成要素:グレイン Orleans の構成要素:サイロ Orleans の基本的な構成…
目次 目次 Orleans の構成 Orleans の重要なプリミティブ(構成要素) 前の記事はこちらです。 hiro128.hatenablog.jp Orleans の構成 Orleans の構成は以下のようになっています。Orleans のクラスターは1つの巨大なコンピューターのように取り扱われます。…
目次 目次 構成図 アドレス空間 接続デバイス(プライベートエンドポイント) サブネット 前の記事はこちらです。 hiro128.hatenablog.jp 構成図 構成では、フロントエンドのみパブリックアクセス可能、2つのサイロとストレージはプライベートアクセスのみ可…
目次 目次 古典的なWebアプリの問題点 対策としてキャッシュ、キューなどを追加するも新たな問題が 根本解決のためのアプローチ(Orleans のコンセプト) 結局 Orleans とは Orleans のメリット 古典的なWebアプリの問題点 読み取り要求のたびにデータベース…
目次 目次 方針 構成 前の記事はこちらです。 hiro128.hatenablog.jp 方針 Orleans の基本的な構成のデプロイを App Service にデプロイしてみましょう。 基本的な方針を以下の通りとします フロントエンドのみパブリックアクセス可能 2つのサイロとストレー…
Orleans では、グレインの永続化とサイロのメンバーシップ管理用のテーブルとして、永続データオブジェクトを利用します。 Microsoft によってメンテされているグレインの永続化ストレージパッケージは以下です。 ADO.NET Azure Blob Storage、Azure Table S…
目次 目次 WebSocket をオンにする VnetPrivatePortsCount VnetPrivatePortsCount を PowerShell で設定 アプリケーションコードで利用する際の注意点 前の記事はこちらです。 hiro128.hatenablog.jp WebSocket をオンにする サイロのインスタンス同士やサイ…
Xamarin でサポートされていたプロジェクトは .NET MAUI でサポートされているのでしょうか。 というわけで.NET MAUI の主なプロジェクトテンプレートを Xamarin と比較してみました。 下記の表の「短い名前」は、 .NET CLI で dotnet new mauiのように「短…