Sample implementation: Simple chat application using Moduler Prompt with MLX models
npm install @modular-prompt/simple-chatModuler Promptフレームワークを使用したチャットアプリケーションのサンプル実装です。実際のアプリケーションでフレームワークをどのように使用するかを示すリファレンス実装として提供されています。
このパッケージは以下を実演します:
- PromptModuleの静的定義とコンテキストバインディング
- mergeを使用したモジュール合成(withMaterialsの活用)
- MLXドライバーを使用したAIモデルとの対話
- チャットログの管理とリソースファイルの処理
``bash`
npm install @modular-prompt/simple-chat
`bash直接メッセージを送信
simple-chat "こんにちは"
$3
`typescript
import { chatPromptModule, performAIChat } from '@modular-prompt/simple-chat';
`対話プロファイル
対話プロファイルは、チャットの動作を制御するYAML形式の設定ファイルです。
$3
`yaml
使用するAIモデル
model: "mlx-community/gemma-3-270m-it-qat-4bit"ドライバータイプ(現在はmlxのみサポート)
driver: "mlx"システムプロンプト - AIの基本的な振る舞いを定義
systemPrompt: |
あなたは親切で知識豊富なAIアシスタントです。
ユーザーの質問に対して、正確で分かりやすい回答を提供してください。
日本語で応答してください。初回メッセージ(オプション)- 新規セッション開始時の挨拶
preMessage: "こんにちは!何かお手伝いできることはありますか?"参照ファイル(オプション)- プロンプトに含める追加資料
resourceFiles:
- "./docs/guide.md"
- "./data/reference.txt"生成オプション
options:
temperature: 0.7 # 生成の創造性(0.0-2.0)
maxTokens: 4000 # 最大トークン数
topP: 0.9 # トップP サンプリング
`$3
プロファイルを指定しない場合、以下のデフォルト設定が使用されます:
- model: mlx-community/gemma-3-270m-it-qat-4bit
- systemPrompt: 親切で知識豊富なAIアシスタントとしての基本設定
- temperature: 0.7
- maxTokens: 4000
$3
#### 1. 技術サポート用プロファイル
`yaml
model: "mlx-community/gemma-3-270m-it-qat-4bit"
systemPrompt: |
あなたはソフトウェア開発の専門家です。
技術的な質問に対して、具体的なコード例を交えて回答してください。
エラーの解決方法を段階的に説明してください。
options:
temperature: 0.3 # より正確な回答のため低めに設定
`#### 2. 創作支援用プロファイル
`yaml
model: "mlx-community/gemma-3-270m-it-qat-4bit"
systemPrompt: |
あなたは創造的な文章作成を支援するアシスタントです。
ユーザーのアイデアを発展させ、独創的な提案を行ってください。
options:
temperature: 1.2 # 創造性を高めるため高めに設定
maxTokens: 8000 # 長い文章生成に対応
`実装のポイント
このサンプル実装では、Moduler Promptフレームワークの主要な機能を実際のアプリケーションで活用する方法を示しています:
1. 静的なモジュール定義:
chatPromptModuleは静的に定義されたテンプレート
2. モジュールの合成: @modular-prompt/processのwithMaterialsモジュールとの合成
3. 型安全なコンテキスト: ChatContext`による型定義詳細はプロンプトモジュール仕様書の実装例セクションを参照してください。