紹介
FastWikiプロジェクトは、大規模な情報検索とインテリジェント検索向けに設計された、ハイパフォーマンスで最新のテクノロジースタックに基づくナレッジベースシステムです。Microsoft Semantic Kernelを活用した深層学習と自然言語処理、.NET 8とMasaBlazorフロントエンドフレームワーク、バックエンドは.NET 8+MasaFramework+SemanticKernelを採用し、効率的で使いやすく拡張可能なインテリジェントベクトル検索プラットフォームを実現しました。目標は、複雑なクエリを理解・処理できるインテリジェント検索ソリューションを提供し、ユーザーが必要な情報を迅速かつ正確に取得できるようにすることです。
テクノロジースタック
- フロントエンドフレームワーク:
MasaBlazor、HttpClientによるフロント・バックエンド分離 - バックエンドフレームワーク:
MasaFramework(.NET 8ベース)、MiniApisでwebApi機能を実現、高いパフォーマンス - ベクトル検索エンジン:
PostgreSQLのベクトルプラグインを使用し、検索パフォーマンスを最適化 - 深層学習とNLP:Microsoft Semantic Kernel、検索の意味理解能力を向上
- ライセンス:Apache-2.0、コミュニティによる貢献と利用を促進
特徴
- インテリジェント検索:Semantic Kernelの深層学習と自然言語処理技術により、複雑なクエリを理解し、正確な検索結果を提供
- ハイパフォーマンス:pgsqlのベクトルプラグインでベクトル検索性能を最適化、大規模データでも高速応答を実現
- モダンフロントエンド:MasaBlazorフロントエンドフレームワークにより、レスポンシブデザインとユーザーフレンドリーなインターフェースを提供
- 強力なバックエンド:最新の.NET 8とMasaFrameworkに基づき、コードの効率性と保守性を担保
- オープンソース&コミュニティ駆動:Apache-2.0ライセンスを採用し、開発者と企業の利用・貢献を促進
プロジェクトのスクリーンショット紹介
ナレッジベースを追加:

ドキュメントをアップロード:

クリックしてアップロード、またはドキュメントをここにドラッグ&ドロップ(現時点ではmdやtxtなどのテキストファイルのみサポート、今後pdfなどの形式も対応予定)

ドキュメントをアップロードする際、以下にドキュメントテンプレートを提供します:
# なぜMASA Blazorを選ぶのか?
## Blazorとは?
Blazorは、.NETを使用してインタラクティブなクライアントサイドWeb UIを生成するフレームワークです:
- JavaScriptの代わりにC#を使用して、情報豊富なインタラクティブUIを作成
- .NETで記述されたサーバーサイドとクライアントサイドのアプリケーションロジックを共有
- UIをHTMLとCSSとしてレンダリングし、モバイルブラウザを含む多くのブラウザをサポート
- Dockerのようなモダンなホスティングプラットフォームと統合
.NETによるクライアントサイドWeb開発の利点:
- JavaScriptの代わりにC#でコードを記述
- 既存の.NETライブラリエコシステムを活用
- サーバーとクライアント間でアプリケーションロジックを共有
- .NETのパフォーマンス、信頼性、セキュリティを享受
- Windows、Linux、macOSでVisual Studioを使って効率的に作業
- 安定した豊富な機能で使いやすい共通言語、フレームワーク、ツールに基づいて構築
## MASA Blazorとは?
Material DesignデザインとBlazorComponentのインタラクション能力に基づく、標準的な基本コンポーネントライブラリです。レイアウト、モーダル標準、Loading、グローバル例外処理などの標準シナリオ向けプリセットコンポーネントを提供。より多くの実際のシナリオから、より多くのユーザーとシナリオのニーズを満たし、開発サイクルを短縮し、開発効率を向上させ、Webソリューション一式「MASA Blazor Pro」を提供します。
## なぜMASA Blazorを選ぶのか?
MASA BlazorはMaterial Design仕様に基づき、各コンポーネントは綿密に設計され、モジュール化、レスポンシブ、優れたパフォーマンスを備えています。
MASA Blazorはプロのフルタイム技術チームが定期的にメンテナンス・アップグレードを行い、高い応答速度、多様なソリューション、エンタープライズ向けサポートを提供しています。既に有名企業で使用されており、MASAチームが自社開発するMASA Stack製品ラインでも継続して使用。これによりプロジェクト品質を保証し、新しいコンポーネントや機能を継続的に追加できます。
MASA Stackは開発者に多数の中間プラットフォーム系オープンソースプロジェクトを提供するだけでなく、その最も基本的な構成要素の一つであるMASA Blazorを最も実用的なコンポーネントライブラリにしたいと考えています。
## Masa BlazorとTokenの関係は?
Tokenは2001年生まれの.NETプログラマーで、オープンソースを愛し、Masaのオープンソースプロジェクトに頻繁にコードを貢献しています。その縁はまるで天が定めたかのようです。Masa Blazorは非常に優れたオープンソースプロジェクトです。
## 優位性:
- **豊富なコンポーネント**:Vuetifyを1:1で再現した基本コンポーネント、実用的なプリセットコンポーネント、.NETとの深い統合機能(URL、パンくずリスト、ナビゲーション3連動、高度な検索、i18nなど)を含む
- **UIデザイン言語**:デザインスタイルはモダンで、UIはマルチデバイスで優れた体験を提供
- **専門的なサンプル**:MASA Blazor Proは多くの一般的なシナリオ向けのプリセットレイアウトを提供
- **簡単に始められる**:豊富で詳細なスタートアップドキュメント、無料のビデオチュートリアル(制作中)
- **コミュニティ活性化**:ユーザー参加型のリアルタイムインタラクション、貢献による参加を促進、最もオープンなオープンソースコミュニティを構築
- **長期サポート**:フルタイムチームによるメンテナンス、エンタープライズ向けサポートを提供
次へをクリックしてデータ処理:

ここでは直接分割とQA分割(未実装)を提供しています。
カスタム処理パラメータを変更しました。この数値はドキュメント分割に影響します。分割が適切であれば応答品質が向上しますが、分割が大きすぎるとトークン消費が大きくなり、料金不足を引き起こす可能性があります。その後、次へをクリック:

ここではアップロードが必要なすべてのファイルを確認できます。この手順では、まずファイルをサーバーにアップロードし、その後データをバックエンドに追加し、ベクトル化を行います。このプロセスはドキュメントの内容によって長くなることがあります。
アップロード完了後、リストにアップロードデータが表示されます。「表示」をクリックすると、分割されたドキュメントのすべてのデータを確認できます。

詳細を表示をクリックすると、すべての情報を確認できます。

アプリケーション→アプリケーション作成をクリック:

アプリケーションを開き、「ナレッジベースを選択」をクリックして、先ほど追加したナレッジベースを現在のアプリケーションにバインドし、「保存して変更」をクリックします。これにより、会話時にバインドされたナレッジベースが検索されます。ここでは、アプリケーションパラメータ(挨拶文やロールのprompt定義など)も変更できます。

次に「チャット」をクリックし、ナレッジベースの内容を入力します。

質問:「Masa Blazor と Token の関係は?」

上記のナレッジベースの応答効果を確認できます。直接GPTに質問すると、Tokenが誰かを知ることはできません。ナレッジベースはある程度AIの不足を補うことができます。また、企業のドキュメントをカスタマイズする場合、ドキュメントをすべてナレッジベースに取り込み、アプリケーションを対話型にすることで、顧客に優れたドキュメントアシスタントを提供でき、多くのカスタマーサービス人件費を削減することも可能です。さらに深いカスタマイズが必要な場合は、微信(WeChat)ID:hjl010426までご連絡ください。
プロジェクトのオープンソース
FastWikiはApache-2.0を採用しており、商用利用も完全に可能で、著作権に関する紛争はありません。
GitHub: https://github.com/239573049/fast-wiki Gitee: https://gitee.com/hejiale010426/fast-wiki
FastWiki技術交流グループ:
