チャットボット
チャットボットは、ユーザがチャット形式で質問を送信すると、チャット形式で回答が戻るコンポーネントです。
外部サービスで構築したリソースと連携させることで、チャットボット機能およびRAGを利用したチャットボット機能を利用することが出来ます。
プロパティ
| No | 項目 | 入力値 | デフォルト値 | アクションプロパティ | タイプ | アクションデフォルト値 | 説明 |
|---|---|---|---|---|---|---|---|
| 1 | ID | 文字列 | 自動設定 | id | string | 自動設定 | [id]プロパティはアクションで設定はできません。 |
| 2 | 幅 | 数値 文字列 | 640 | width | number/string | 640 | コンポーネントの幅 |
| 3 | 高さ | 数値 文字列 | 480 | height | number/string | 480 | コンポーネントの高さ |
| 4 | X | 数値 文字列 | x | number/string | X座標の位置 | ||
| 5 | Y | 数値 文字列 | y | number/string | Y座標の位置 | ||
| 6 | 背景色 | 文字列 カラーピッカー | backgroundColor | string | コンポーネントの背景色 | ||
| 7 | 線 | 真偽 | ON | border | boolean | true | 枠線の表示設定 |
| 8 | 幅 | 数値 | 1 | borderWidth | number | 1 | 枠線の幅 |
| 9 | 丸みサイズ | 数値 | 0 | roundedSize | number | 0 | 角の丸み |
| 10 | 色 | 文字列 カラーピッカー | #DDDDDD | borderColor | string | #DDDDDD | 枠線の色 |
| 11 | エージェント名色 | 文字列 カラーピッカー | agentNameColor | string | エージェント名の文字色 | ||
| 12 | エージェントメッセージ色 | 文字列 カラーピッカー | agentMessageColor | string | エージェントメッセージの文字色 | ||
| 13 | エージェントメッセージ背景色 | 文字列 カラーピッカー | agentMessageBackgroundColor | string | エージェントメッセージの背景色 | ||
| 14 | ユーザ名色 | 文字列 カラーピッカー | userNameColor | string | ユーザ名の文字色 | ||
| 15 | ユーザメッセージ色 | 文字列 カラーピッカー | userMessageColor | string | ユーザメッセージの文字色 | ||
| 16 | ユーザメッセージ背景色 | 文字列 カラーピッカー | #BAD6F2 | userMessageBackgroundColor | string | #BAD6F2 | ユーザメッセージの背景色 |
| 17 | サブミットボタン色 | 文字列 カラーピッカー | submitButtonColor | string | 送信ボタンの色 | ||
| 18 | メッセージフォーム入力文字色 | 文字列 カラーピッカー | messageFormInputColor | string | 入力フォームの文字色 | ||
| 19 | メッセージフォーム背景色 | 文字列 カラーピッカー | messageFormBackgroundColor | string | 入力フォームの背景色 | ||
| 20 | 注意テキスト色 | 文字列 カラーピッカー | disclaimerColor | string | 注意テキストの文字色 | ||
| 21 | 読み取り専用 | 真偽 | OFF | readOnly | boolean | false | 読み取り専用モード |
| 22 | 表示 | 真偽 | ON | visibility | boolean | true | 表示状態 |
| 23 | エージェント名 | 文字列 | Agent | agentName | string | Agent | エージェントの名前 |
| 24 | ユーザ名 | 文字列 | You | userName | string | You | ユーザの名前 |
| 25 | エージェントアバター | 文字列 | https://template-ui-image.webperformer.jp/image/Chatbot-Agent_alpha.svg | agentAvatar | string | https://template-ui-image.webperformer.jp/image/Chatbot-Agent_alpha.svg | エージェントのアバター画像URL |
| 26 | ユーザアバター | 文字列 | https://template-ui-image.webperformer.jp/image/Chatbot-User_alpha.svg | userAvatar | string | https://template-ui-image.webperformer.jp/image/Chatbot-User_alpha.svg | ユーザのアバター画像URL |
| 27 | RAG | 真偽 | ON | RAG機能の有効化(アクションプロパティなし) | |||
| 28 | サービス名 | 選択 1. AWS Bedrock 2. Azure Open AI 3. GCP Vertex AI | AWS Bedrock | 連携する外部サービス(アクションプロパティなし) | |||
| 29 | AI 設定 | JSON | AI設定のJSON(アクションプロパティなし) | ||||
| 30 | AI クレデンシャル | 文字列選択ダイアログ | クレデンシャルファイルパス(アクションプロパティなし) | ||||
| 31 | システムプロンプト | 文字列 | システムプロンプト(アクションプロパティなし) | ||||
| 32 | メッセージフォーム値 | 文字列 | messageFormValue | string | 入力フォームの初期値 | ||
| 33 | メッセージフォームプレースホルダー | 文字列 | Type your message… | messageFormPlaceholder | string | Type your message… | 入力フォームのプレースホルダー |
| 34 | メッセージフォーム行数 | 数値 | 1 | messageFormRows | number | 1 | 入力フォームの行数 |
| 35 | メッセージ | 表形式 | [{“role”:“agent”,“content”:“Hello! How can I help you today?”}] | messages | array of object | [{“role”:“agent”,“content”:“Hello! How can I help you today?”}] | チャットメッセージ |
| 36 | 注意テキスト | 文字列 | AI-generated. May contain errors. | disclaimer | string | AI-generated. May contain errors. | 注意事項テキスト |
外部サービス
連係することができる外部サービスは下記の通りです。
- AWS Bedrock
- Azure OpenAI
- GCP VertexAI
また、サービス毎にサポートされるリトリーバとエンベディングモデルの組み合わせは以下の表の通りとなります。
| サービス | リトリーバ | エンベディングモデル |
|---|---|---|
| AWS Bedrock | Amazon Bedrock Knowledge Bases | 設定不要 |
| Pinecone | Amazon Bedrock | |
| Azure Open AI | Azure AI Search | Azure Open AI |
| Pinecone | Azure Open AI | |
| GCP Vertex AI | Vertex AI Vector Search | Vertex AI |
| Pinecone | Vertex AI |
AI 設定の仕様
AI 設定には、外部サービスで構築したリソースを利用するための設定を記述します。
また、任意で応答内容を制御するための設定を記述することが出来ます。
利用する外部サービスの仕様に合わせて記述してください。
AWS Bedrock:
https://docs.aws.amazon.com/ja_jp/bedrock/latest/userguide/model-parameters.html
Azure OpenAI:
https://learn.microsoft.com/ja-jp/azure/ai-foundry/openai/reference
GCP Vertex AI:
https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/inference?hl=ja#request
https://ai.google.dev/gemini-api/docs/safety-settings?hl=ja#javascript
https://cloud.google.com/vertex-ai/docs/general/googleapi-access-methods?hl=ja
| サービス | パターン | 設定項目(*は必須項目です) |
|---|---|---|
| AWS Bedrock | chat |
|
| chat + rag リトリーバ:Amazon Bedrock Knowledge Bases |
|
|
| chat + rag リトリーバー:Pinecone |
|
|
| Azure OpenAI | chat |
|
| chat+rag リトリーバ:Azure AI Search [補足] インデックス構造は以下の設計にすること ・ id (String) => 取得可能、検索可能 ・ content (String) => 取得可能、検索可能 ・ content_vector (SingleCollection) => 検索可能 ・ metadata (ComplexType) 〇 source (String) => 取得可能、検索可能 〇 chunk (String) => 検索可能 〇 attributes (ComplexTypeCollection) ・ key (String) => フィルター可能 ・ value (String) => 検索可能 |
|
|
| chat+rag リトリーバ:Pinecone |
|
|
| GCP Vertex AI | chat |
|
| chat+rag リトリーバ:Vertex AI Vector Search |
|
|
| chat+rag リトリーバ:Pinecone |
|
AI クレデンシャルファイルの仕様
AI クレデンシャルファイルには、外部サービスで構築したリソースを利用するための認証情報を記述します。
| サービス | パターン | 設定項目(*は必須項目です) |
|---|---|---|
| AWS Bedrock | chat |
|
| chat + rag リトリーバ:Amazon Bedrock Knowledge Bases |
|
|
| chat + rag リトリーバー:Pinecone |
|
|
| Azure OpenAI | chat |
|
| chat+rag リトリーバ:Azure AI Search |
|
|
| chat+rag リトリーバ:Pinecone |
|
|
| GCP Vertex AI | chat |
|
| chat+rag リトリーバ:Vertex AI Vector Search |
|
|
| chat+rag リトリーバ:Pinecone |
|