# コード行のメトリック

コード行メトリックは、コード補完、チャット、エージェント機能にわたって提案、追加、または削除されたコード行数を定量化することで、Copilot の出力の方向性を示す指標を提供します。

コード行数（LoC）メトリクスは、補完、チャット、エージェント機能全体で Copilot が提案、追加、または削除した行数を定量化することで、その出力の傾向を示す目安となります。

## LoC メトリックが表示される場所

LoC メトリックは次の場合に発生する可能性があります。

* **コード生成ダッシュボード (エンタープライズおよび組織レベル)** - LoC ベースのユーザーとエージェントのアクティビティを視覚化します。 「[コード生成ダッシュボードの表示](/ja/copilot/how-tos/administer-copilot/view-code-generation)」を参照してください。
* **エクスポートと API (エンタープライズ、組織、ユーザー レベル)** — `loc_suggested_to_add_sum`、 `loc_added_sum`、 `loc_deleted_sum`などの LoC フィールドを公開します。 「[Copilot使用状況メトリックの REST API エンドポイント](/ja/rest/copilot/copilot-usage-metrics)」を参照してください。
* **「 Copilot 使用状況メトリックで使用可能なデータ」リファレンス** - LoC から派生したすべてのダッシュボードと API フィールドが一覧表示されます。 「[Copilot使用状況メトリックで使用可能なデータ](/ja/copilot/reference/copilot-usage-metrics/copilot-usage-metrics)」を参照してください。

この記事では、LoC の測定方法と、その精度とカバレッジに影響するものについて説明します。 詳細な定義については、上記のリファレンス記事を参照してください。

## LoC メトリックに関する考慮事項

LoC メトリックは、IDE とバージョンによって異なる場合があります。 以下の点に注意してください。

* **カバレッジ：** 必要なバージョンにアップグレードするまで、すべての IDE とユーザーが LoC テレメトリを出力するわけではありません。 レポートには `last_known_ide_version` フィールドと `last_known_plugin_version` フィールドが含まれているため、企業全体の対象範囲を監視できます。
* \*\*安定 性：\*\*Copilotの進化に伴い、テレメトリの定義が変更される可能性があります。 時間の経過とともに精度が向上するにつれて、データの小さなシフトが予想されます。

## バージョンの要件

LoC メトリックを機能させるためには、特定の最小バージョンの IDE と Copilot プラグインが必要です。 以前のバージョンのユーザーは LoC データを提供しないため、アップグレードするまでレポートが不足する可能性があります。

| IDE                                                                                     | 特徴                                                   | 最小 IDE バージョン        | 最小 Copilot Chat 拡張機能バージョン |
| :-------------------------------------------------------------------------------------- | :--------------------------------------------------- | :------------------ | :------------------------ |
| Eclipse                                                                                 | <ul><li>`code_completion`</li></ul>                  | 4.31                | 0.9.3.202507240902        |
|                                                                                         | <ul><li>                                             |                     |                           |
| `chat_panel` (Ask、Edit、Plan、Agent)</li></ul>                                            | 4.31                                                 | 0.11.0.202508291001 |                           |
|                                                                                         | <ul><li>`agent_edit`</li></ul>                       | 4.31                | 0.10.0.202508110512       |
| IntelliJ/JetBrains                                                                      | <ul><li>`code_completion`</li><li>                   |                     |                           |
| `chat_panel` (Ask、Edit、Plan、Agent)</li><li>`chat_inline`</li><li>`agent_edit`</li></ul> | 2024.2.6                                             | 1.5.52-241          |                           |
| Visual Studio                                                                           | <ul><li>`code_completion`</li><li>                   |                     |                           |
| `chat_panel` (Ask、Edit、Plan、Agent)</li></ul>                                            | 17.14.13                                             | 18.0.471.29466      |                           |
|                                                                                         | <ul><li>`chat_inline`</li><li>`agent_edit`</li></ul> | 17.14.14            | 18.0.471.29466            |
| VS Code                                                                                 | <ul><li>`code_completion`</li></ul>                  | 1.104.0             | 0.31.0                    |
|                                                                                         | <ul><li>                                             |                     |                           |
| `chat_panel` (Ask、Edit、Plan、Agent)</li></ul>                                            | 1.102.0                                              | 0.29.0              |                           |
|                                                                                         | <ul><li>`chat_inline`</li></ul>                      | 1.103.2             | 0.30.3                    |
|                                                                                         | <ul><li>`agent_edit`</li></ul>                       | 1.103.0             | 0.30.0                    |
| XCode                                                                                   | <ul><li>`code_completion`</li></ul>                  | 14.3.1              | 0.40.0                    |
|                                                                                         | <ul><li>                                             |                     |                           |
| `chat_panel` (Ask、Edit、Plan、Agent)</li></ul>                                            | 15.0                                                 | 0.43.0              |                           |
|                                                                                         | <ul><li>`agent_edit`</li></ul>                       | 15.2                | 0.41.0                    |

## エージェント モードが LoC メトリックに与える影響

補完やチャットとは異なり、Copilot agent は「提案してから受け入れる」という流れには従いません。 エージェントは複数ステップのタスクを計画して実行します。多くの場合、ユーザーが明示的に受け入れることなく、複数のファイルを繰り返し編集します。 このため、エージェント アクティビティの LoC メトリックの測定方法は異なります。

| 行動                                                                                             | LoC メトリックへの反映方法                                                            |
| :--------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------- |
| エージェントコード提案案                                                                                   | 表示されているコード ブロックがチャット パネルに表示されるときに、 `loc_suggested_to_add_sum` としてカウントされます。 |
| ファイル内のエージェントの編集                                                                                |                                                                            |
| `loc_added_sum`機能バケットで`loc_deleted_sum`および`agent_edit`としてカウントされます。 これらの編集は、推奨されるメトリックには含まれません。 |                                                                            |
| 複数ファイルの操作                                                                                      | 各ファイル編集は、1 つのプロンプトによってトリガーされた場合でも、追加された行と削除された行の合計に影響します。                  |

エージェント関連の LoC アクティビティの出力例:

```json
"totals_by_language_feature": [
  {
    "language": "unknown",
    "feature": "chat_panel_agent_mode",
    "code_generation_activity_count": 12,
    "code_acceptance_activity_count": 0,
    "loc_suggested_to_add_sum": 86, // code block suggestions in chat panel in agent mode
    "loc_suggested_to_delete_sum": 0,
    "loc_added_sum": 5, // only includes code block copy or apply in chat panel, not agent edits
    "loc_deleted_sum": 0
  },
  {
    "language": "unknown",
    "feature": "agent_edit",
    "code_generation_activity_count": 345,
    "code_acceptance_activity_count": 0,
    "loc_suggested_to_add_sum": 0,
    "loc_suggested_to_delete_sum": 0,
    "loc_added_sum": 2342, // agent and edit mode edits in files
    "loc_deleted_sum": 947
  }
]
```

単一のエージェント編集では、次のようなメトリックが表示される場合があります。

```json
"user_initiated_interaction_count": 0,
"code_generation_activity_count": 1,
"code_acceptance_activity_count": 0
```