トラブルシューティング・コードの提案(無料 ALL BETA)
コードサジェスチョンを使用していると、次のようなイシューに遭遇することがあります。
コードサジェストが表示されない
コード・サジェスチョンが表示されない場合は、以下のトラブルシューティング手順をお試しください。
GitLabで、Code Suggestionsが有効になっていることを確認します:
- ユーザーアカウントの場合。
- アカウントが所属するすべてのトップレベルグループ。トップレベルグループの設定を表示できるロールを持っていない場合は、グループオーナーにお問い合わせください。
アカウントが有効になっていることを確認するには、https://gitlab.com/api/v4/ml/ai-assist。 user_is_allowed
の応答はtrue
を返すはずです。
VS Code や GitLab WebIDE でコードのサジェスチョンが表示されません。
まず、Code Suggestionsのすべてのステップが表示されていないことを確認してください。
セルフマネージドユーザーの場合は、GitLab WebIDEのCode Suggestionsが有効になっていることを確認してください。ローカルIDEとしてVS Codeにも同じ設定が適用されます。
- 左のサイドバーでExtensions > GitLab Workflow を選択します。
- Settings({settings})を選択し、Extension Settingsを選択します。
- GitLab > AI Assisted Code Suggestionsで、Enable code completion (Beta)チェックボックスを選択します。
設定を有効にしてもコードサジェストが表示されない場合は、以下の手順を試してください:
- GitLab WorkflowExtension Settingsの
Debug
チェックボックスを有効にします。 -
View > Outputで拡張機能のログを開き、ドロップダウンリストをログフィルターとしてGitLab Workflowに変更します。コマンドパレットコマンドは
GitLab: Show Extension Logs
。 - Enable code completion (Beta)チェックボックスを無効にし、再度有効にします。
- デバッグログに同様の出力が含まれていることを確認します:
2023-07-14T17:29:00:763 [debug]: Disabling code completion
2023-07-14T17:29:01:802 [debug]: Enabling code completion
2023-07-14T17:29:01:802 [debug]: AI Assist: Using server: https://codesuggestions.gitlab.com/v2/completions
Microsoft Visual Studioでコードのサジェスチョンが表示されません。
まず、Code Suggestionsのすべてのステップが表示されていないことを確認してください。
- 拡張機能が正しく設定されていることを確認してください。
- Tools > OptionsメニューからGitLabオプションを見つけてください。Log LevelがDebugになっていることを確認してください。
- View > Outputで拡張機能のログを開き、ドロップダウンリストをログフィルターとしてGitLab Extensionに変更します。
- デバッグログに同様の出力が含まれていることを確認します:
14:48:21:344 GitlabProposalSource.GetCodeSuggestionAsync
14:48:21:344 LsClient.SendTextDocumentCompletionAsync("GitLab.Extension.Test\TestData.cs", 34, 0)
14:48:21:346 LS(55096): time="2023-07-17T14:48:21-05:00" level=info msg="update context"
認証のトラブルシューティング
上記の手順でイシューが解決しない場合、問題は認証、特にトークン・システムの最近の変更に関連している可能性があります。イシューを解決するには
- GitLabアカウント設定から既存の個人アクセストークンを削除してください。
- VS CodeでOAuthを使ってGitLabアカウントを再認証します。
- 異なるファイル拡張子でコードサジェスト機能をテストし、イシューが解決したかどうかを確認します。