Agent Studioエラーのトラブルシューティング
発生する可能性があるAgent Studioエラーのトラブルシューティングには、このドキュメントを使用してください。
算術エラー
Genieは、特に次のシナリオで数学的計算を実行するときに、信頼性の低い結果を生成することがあります。
- 複数ステップの算術演算
- 複数の数値を含む計算
- 精度が必要な財務計算
- 経費の検証と比較
たとえば、Genieが経費コンプライアンスを評価し、食事代が1日あたり$100の上限を超えていると誤ってフラグ付けする場合があります。
- 10月28日 = 合計$13.69:$100の上限を超えていると誤ってフラグ付け
- 10月30日 = 合計$16.58:$100の上限を超えていると誤ってフラグ付け
- 10月31日 = 合計$29.74:$100の上限を超えていると誤ってフラグ付け
これは、LLMが正確な算術、特に複数の計算が必要な場合に苦戦することがあるために発生します。
算術エラーのソリューション
数学的演算を確実に処理できるように、GenieにPythonコード実行スキルを提供します。 このソリューションでは、次のワークフローを使用します。
- Genieが数学的計算が必要なタイミングを識別する
- GenieがPython実行スキルを呼び出す
- Pythonが正確に計算を実行する
- Genieが正確な結果を受け取り、使用する
Pythonコード実行スキルを使用するには、次の手順を完了します。
Genie用に事前構築済みPython実行スキルをインポートして有効にします。
スキルをテストして、ワークフローで想定どおりに動作することを確認します。
Pythonコードインタープリター
必要に応じて、Genieとスキルのプロンプトを調整します。
または、Pythonスニペット by Workatoを使用して新しいPython実行スキルを作成し、事前構築済みのPython実行スキルをテンプレートとして参照できます。
Microsoft TeamsでGenieが応答しない
Microsoft Teamsを通じてデプロイされた場合、Genieが応答に失敗したり、予期しない動作をしたりすることがあります。特に次のシナリオで発生します。
- Microsoft Teamsコネクションを設定したユーザーがGenieから応答を受信しない
- 新しく作成されたMicrosoft Teamsアプリが断続的に失敗する、または初期設定後に動作しなくなる
- 他のユーザーは正常に操作できるにもかかわらず、一部のユーザーに対してGenieが応答しない
DEVELOPER PORTALとは互換性がありません
Microsoft Teams Botコネクションを設定するときは、更新されたDeveloper Portalを使用しないでください。 Developer Portalを使用すると、このセクションで説明する問題が発生する可能性があります。 代わりに、以前のDeveloper Consoleを使用してコネクションを設定してください。
コネクションを設定したユーザーにGenieが応答しない
この動作はMicrosoft Teams管理ポータルの問題が原因です。 Microsoft Teamsアプリは、エンドユーザーのクライアントアプリにインストールされる前に、完全に設定され伝播されている必要があります。
設定が完了する前にアプリがインストールされた場合、そのアプリを設定したユーザーに対して応答しないままになります。 この動作は、アプリが公開され、他のユーザーが正常に操作できるようになった後も継続します。 この問題を解決するには、アプリを完全に再インストールする必要があります。
この問題は、適切な個人スコープのインストールフローが完了する前に、ボット作成者がTeamsアプリを追加したために発生します。 その結果、Microsoft Teamsは作成者とボットの間に有効な1:1会話を作成しませんでした。 これにより、ボットがウェルカムメッセージ、OAuthカード、メッセージへの応答を送信できなくなります。
MICROSOFT TEAMS BOTのインストール
この問題は、Workatoコードではなく、Microsoft Teamsによるボットのインストールの処理方法が原因です。 Notification Serviceでは、ユーザーは同一に扱われます。 つまり、ボット作成者を他のユーザーと区別する方法はありません。
Genieがビルダーに応答しない場合のソリューション
Microsoft Teamsアプリを再インストールしてこの問題を解決するには、次の手順を完了します。
Microsoft Teams管理ポータルで、アプリが完全に設定され伝播されていることを確認します。
既存のMicrosoft Teamsアプリをエンドユーザーのクライアントアプリから削除します。
適切な個人スコープのインストールフローを通じてアプリを再インストールします。
Genieをテストして、想定どおりに応答することを確認します。
新しいMicrosoft Teamsアプリが断続的に失敗する
新しく作成されたMicrosoft Teamsアプリは、断続的に失敗したり応答しなくなったりする場合があります。 これらの失敗には複数の根本原因がある可能性があり、ケースごとに異なる場合があります。
Microsoft Teamsの断続的な失敗のソリューション
断続的な失敗を解決する一般的なアプローチは2つあります。
- Microsoft Teams Genieを修復する:影響の少ないオプションとしてこのアプローチを使用します。
- Microsoft Teams Genieを完全に再インストールする:修復で問題が解決しない場合は、このアプローチを使用します。
Microsoft Teams Genieを修復または再インストールするには、次の手順を完了します。
Genie設定の修復オプションを使用して、Microsoft Teams Genieの修復を試みます。
修復後にGenieをテストして、問題が解決したかどうかを確認します。
修復で問題が解決しない場合は、Microsoft Teams Genieを再インストールします。
Genieを再度テストして、想定どおりに応答することを確認します。
修復手順でも再インストール手順でも問題が解決しない場合は、以前のDeveloper Consoleに切り替えて新しいボットを作成し、既存のアプリにアタッチできます。
Genie呼び出しエラー
Genieがワークフローで想定どおりに実行されない場合があります。 変更を行う前に、失敗が発生した会話を読んでください。 テストモードとConversationsページの両方で、どのスキルが呼び出されたか、どの入力が渡されたか、ナレッジベースが何を返したかを含む完全なスレッドを確認できます。 これは主要な診断ツールです。
会話をターンごとに確認し、次をレビューします。
- 問題が発生した箇所
- Genieがアクセスできたナレッジ
- Genieが実行すると決定したこと
- スキルを実行したとき、またはナレッジベースを検索したときに発生したこと
プロダクションでの失敗は、テストモードで再現できない場合があります。 AI Hub > Conversationsに移動し、会話を見つけて全文を読みます。 スキルの呼び出しとナレッジベースクエリには、テストモードと同じ情報が含まれます。
Genieがスキルを呼び出さない
休暇申請の送信、チケットの作成、アカウントの取得など、Genieに実行するスキルがある操作を依頼したにもかかわらず、Genieがアクションを実行する代わりにテキスト回答を返す、またはそのリクエストには対応できないと言う場合があります。
これは、Genieがリクエストが利用可能なスキルに対応することを認識していないために発生します。 これは次の3つの理由のいずれかで発生します。
スキルの説明が曖昧すぎる:スキルプロンプトのWhen to Useセクションで、スキルとユーザーが実際に行うリクエストの種類が明確に関連付けられていない場合、Genieはそのスキルとの関連付けを行いません。
ジョブの説明にスキルのユースケースが記載されていない:ジョブの説明でのリクエストの分類が、スキルの説明方法と異なる場合、Genieは何も呼び出しません。 ジョブの説明のユースケースカテゴリとスキルのWhen to Useセクションは、一貫性があり、同じトリガー条件を互換性のある表現で説明している必要があります。
スキルがGenieに割り当てられていない:Genie設定のSkillsタブを確認します。 スキルがGenie設定に一覧表示されていない場合、Genieはそのスキルが存在することを認識できません。
スキルが呼び出されない場合のソリューション
スキルの説明から始めます。 When to Useセクションをより具体的にし、エンドユーザーの意図により直接関連付けます。 次に、関連するユースケースカテゴリに関するジョブの説明の指示で、スキル名ではなく意図によってスキルを呼び出すことを含め、Genieが実行すべきことが明示的に参照されていることを確認します。
| ❌ 推奨されません | ✅ 推奨 |
|---|---|
Use this skill to process HR requests. | Use this skill when the user confirms they want to submit a leave request and all required fields — leave type, start date, and end date — have been collected. |
Handle leave-related requests. When to use: when the user asks about leave. | Job description: When the user wants to submit a leave request, collect the required fields and invoke the Submit Leave Request skill. When to Use (skill): Use this skill when the user confirms they want to submit a leave request and all required fields have been collected. |
Genieが誤ったスキルを呼び出す
Genieが、書き込みスキルではなく読み取りスキルを呼び出すなど、誤ったスキルを呼び出す場合があります。 または、別のスキルの方がリクエストに適しているにもかかわらず、Genieがあるスキルを呼び出す場合があります。
これは、説明が重複している、または明確に区別されていないスキルの間で、Genieが最善の推測による判断を行っているために発生します。 Genieは、同じリクエストに適用できそうなスキルの中から選択し、誤ったスキルを選ぶ場合があります。 これは、区別された説明を持たないスキルが2つまたは3つを超えてGenieにある場合に、最も一般的な失敗の1つです。
誤ったスキルが呼び出された場合のソリューション
各スキルの説明のWhen NOT to Useセクションが、スキル同士を区別する要素です。 Genieが2つのスキルを混同している場合は、もう一方のスキルを直接参照する明示的なWhen NOT to Use句を追加します。 スキル間の境界を双方向で明示すると、Genieが推測するのを防げます。
ジョブの説明のユースケース分類が想定どおりに機能しているかどうかも確認してください。 どのスキルを使用するかを決定する前にGenieがリクエストカテゴリを識別できるよう、カテゴリの指示が正しくルーティングするのに十分具体的であることを確認します。
| ❌ 推奨されません | ✅ 推奨 |
|---|---|
Use this skill to handle leave requests. | Use this skill when the user wants to check their leave balance or view existing requests. Do not use this skill if the user is asking to submit a new leave request — use the Submit Leave Request skill instead. |
Do not use this skill for read requests. | Do not use this skill if the user is asking to view, check, or retrieve information — use the Get Leave Balance skill instead. Use this skill only when the user has confirmed they want to submit a new leave request and all required fields have been collected. |
Genieが正しいスキルを呼び出すが誤った入力を渡す
スキルは正しく呼び出されますが、入力が誤っています。たとえば、日付の形式が誤っている、休暇タイプの値がHRシステムの想定値と一致しない、メールアドレスが認証済みユーザーコンテキストではなく会話から取得される、などです。
これは、スキル入力のフィールドヒントが十分具体的でないために発生します。 LLMは、作成したヒントに基づいて入力フィールドに値を入力します。 曖昧なヒントはLLMに妥当な推測を強制し、その妥当な推測は重要な点で誤っていることがよくあります。 一般的な例:
- 形式を指定せずに
the start dateと記載された日付フィールドのヒントでは、LLMが妥当と考える任意の形式で日付が生成されるため、APIが想定する形式と一致しない場合があります。 use the authenticated user context, not what the user typed in chatを指定していないユーザー識別子フィールドでは、SSOからではなく会話からメールを取得する場合があります。
誤った入力のソリューション
フィールドヒントをより規範的に書き直します。 日付の正確な形式を指定します。 列挙型フィールドの有効な値を指定します。 IDフィールドのソースを明示的に記述します。 Get Leave Balanceスキルから返される休暇タイプIDなど、以前のスキルの出力に由来する値には、そのことを明示的に指定するヒントを含める必要があります。
| ❌ 推奨されません | ✅ 推奨 |
|---|---|
The start date of the leave request. | The start date of the leave request. Use the format YYYY-MM-DD, for example 2025-11-04. Do not use any other date format. |
The user's email address. | Use the user email from the authenticated user context passed in the skill trigger. Do not use any email address mentioned in the conversation. |
The leave type ID. | Use the leave type ID returned by the Get Leave Balance skill, not the leave type name the user provided. |
ナレッジベースが関連性の低い結果を返す
Genieがナレッジベースを検索し、質問に関連しないコンテンツを取得して、そのコンテンツを使用して不正確または役に立たない回答を生成する場合があります。 または、情報がナレッジベースにあるにもかかわらず、Genieが何も取得せず、その情報を持っていないと伝える場合があります。
Genieが正しい結果を返すようにするには、次の手順を完了します。
ナレッジベースの説明をレビューし、広すぎる、または曖昧すぎるかどうかを判断します。
説明で含まれる情報が明確に伝わらない場合、Genieはナレッジベースを検索しないことがあります。 ナレッジベースに含まれる情報をGenieが理解できるよう、明確なガイダンスを提供します。 または、Genieが検索している情報を含まないナレッジベースを検索する場合があります。
| ❌ 推奨されません | ✅ 推奨 |
|---|---|
company documents | HR leave policies, eligibility criteria, leave type definitions, and accrual rules - use for questions about leave policy and entitlements |
コンテンツチャンクサイズを確認します。
コンテンツチャンクが大きすぎる可能性があります。 大きなドキュメントを単一のエントリとして取り込むと、Genieが大きなテキストブロック内に埋もれた回答を含む断片を取得したり、ベクトル検索が隣接するコンテンツに一致したために回答をまったく含まない断片を取得したりする可能性があります。 ポリシーセクションごとに1エントリ、FAQ項目ごとに1エントリなど、より小さいチャンク化でコンテンツを再取り込みします。 詳細については、ナレッジベースドキュメントの準備を参照してください。
ナレッジベースに不足しているコンテンツがないか確認します。
取得の問題があると判断する前に、コンテンツがナレッジベースに存在することを確認します。 ナレッジベースエントリを確認し、クエリの特定の用語を検索します。 コンテンツが不足している場合、取り込みレシピがそれを見逃した可能性があります。 エラーがないかレシピのジョブ履歴を確認します。
ナレッジベース結果のソリューション
ナレッジベースの説明をレビューして更新します。 これは多くの場合、情報取得の改善に最も大きな影響を与えます。 更新した説明で問題が修正されない場合は、取り込みを確認し、コンテンツを再チャンク化します。 これには取り込みレシピの再実行が必要で時間がかかりますが、大規模なドキュメントセットでは取得品質が大幅に向上します。
Genieがジョブの説明の指示を無視する
これは、指示が曖昧すぎる、重要な情報がLLMの優先度が低いセクションに埋もれている、または説明に重複する指示との競合が含まれているために発生します。 LLMはすべての指示を同等に扱うわけではありません。 弱い表現は使用しないでください。 これは、always confirm before submittingなどのルールとして表現する必要があります。長く密度の高いジョブの説明の中ほどに埋もれた指示は、明確にラベル付けされたセクションの指示よりも、従われる信頼性が低くなります。 LLMは競合する指示を独自の方法で解決するため、意図した方法ではない場合があります。
無視される指示のソリューション
重要な指示の表現を強化します。 try toやavoidではなく、alwaysとneverを使用します。 重要なルールを、関連するユースケースカテゴリの上部にある明確にラベル付けされたセクションに移動します。 競合する指示がないか確認し、ルールと指示を解決します。 指示は、関連するスキルの説明で補強する必要があります。
| ❌ 推奨されません | ✅ 推奨 |
|---|---|
try to confirm before submitting | always confirm before submitting |
avoid submitting without user confirmation | never submit without user confirmation |
Genieが正しい回答を提供するが書式が不十分
内容は正しいものの、箇条書きを要求したのにテキストの塊になる、改行がない、応答間で書式が一貫しない、応答が想定よりはるかに長いまたは短いなど、表示方法が誤っている場合があります。
これは、ジョブの説明の応答スタイルセクションが欠落している、曖昧すぎる、または応答タイプごとの想定形式について十分具体的でないために発生します。
書式のソリューション
ジョブの説明の応答スタイルセクションを追加または拡張します。 各応答タイプの形式の期待値を具体的に記述し、形式が複雑な場合は例を含めます。LLMは説明よりも例に従う方が信頼性が高いためです。
| ❌ 推奨されません | ✅ 推奨 |
|---|---|
For policy answers, respond clearly. For leave request summaries, list the fields. | For policy answers, respond in two to three sentences with the key point first, followed by a citation of the source document. For leave request summaries, use a bullet list with one line per field, for example: Leave type: Annual leave / Start date: November 4 / End date: November 8 / Total days: 5. |
Genieがテストモードでは動作するがプロダクションでは動作しない
Genieはテストモードではすべて正しく動作するものの、エンドユーザーがSlack、Microsoft Teams、またはWorkato GOでGenieを操作すると、失敗するか異なる動作をします。
テストモードからプロダクションへのソリューション
設定を確認するには、次の手順を完了します。
Identity設定と権限を確認します。
テストモードでは、ビルダーIDが使用されます。 プロダクションIDは、スキルがVerified User Accessを使用するかどうかによって異なります。 これは、休暇残高やオープンチケットなど、リクエストしているユーザーでフィルタリングされたデータを取得するスキルが、テストモードではあなたのデータを返し、プロダクションではエンドユーザーのデータを返すことを意味します。 実際のユーザーIDが正しく渡されない場合、スキルは何も返さないか、エラーを返す可能性があります。
Connectionsが正しく設定されていることを確認します。
スキルが、テストモードではサンドボックスEnvironmentを、プロダクションではプロダクションシステムを指している可能性があります。 各スキルで使用されるコネクションが、各コンテキストに適したEnvironmentを指していることを確認します。
User group accessが正しく設定されていることを確認します。
エンドユーザーがGenieに割り当てられたユーザーグループに属していない可能性があります。 アクセス権のないGenieを操作しようとすると、ユーザーは応答を受信しないか、アクセスエラーを受け取ります。 End User Accessタブを確認し、ユーザーのグループが割り当てられていることを確認します。
Slack app permissionsを確認します。
SlackにデプロイされたGenieを一部のチャネルでは呼び出せるものの、すべてのチャネルでは呼び出せない場合、正しいチャネル権限がない可能性があります。 Slackアプリのチャネル権限を確認し、ボットが関連するチャネルに追加されていることを確認します。
すべて試してもGenieが動作しない
前のセクションのトラブルシューティング手順を実施してもGenieがまだ予期しない動作をする場合、残っている問題を明らかにしやすい手法が2つあります。
- 明示的な否定例をジョブの説明に追加する:LLMには、単なる指示ではなく、何をすべきでないかを示す具体例が必要な場合があります。 Genieが、しないように指示したことを繰り返す場合は、ジョブの説明に注記を追加します。
| ❌ 推奨されません | ✅ 推奨 |
|---|---|
Don't provide payroll information. | Don't respond to requests about payroll. If a user asks about salary, respond with: I can only help with leave-related queries. For payroll questions, please contact HR directly. Don't respond with information on salaries, bonuses, pay increases or other information related to compensation or payroll. |
- 単純化して再構築する:長く複雑なジョブの説明には、競合する指示、冗長なセクション、不明確な優先順位が含まれている場合があります。 場合によっては、名前、役割、ユースケースカテゴリ、基本機能が動作することを確認するためのカテゴリごとの1つの指示など、ジョブの説明を最小限まで削ることが最短の解決策です。 複雑さを段階的に戻します。 追加するたびに、何が変わったか、それがGenieワークフローに役立ったか、または何かを壊したかを正確に把握できます。
最終更新日: