

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 純文字註釋檔案
<a name="cer-annotation-csv"></a>

對於純文字註釋，您可以建立包含註釋清單的逗號分隔值 (CSV) 檔案。如果您的訓練檔案輸入格式是**每行一個文件**，CSV 檔案必須包含下列資料欄。


| 檔案 | 折線圖 | 開始偏移 | 結束位移 | Type | 
| --- | --- | --- | --- | --- | 
| 包含文件的檔案名稱。例如，如果其中一個文件檔案位於 `s3://my-S3-bucket/test-files/documents.txt`，則`File`資料欄中的值將為 `documents.txt`。您必須包含副檔名 （在此案例中為 '`.txt`') 做為檔案名稱的一部分。 | 包含實體的行號。如果您的輸入格式是每個檔案一個文件，請省略此欄。 | 輸入文字中顯示實體開始位置的字元位移 （相對於行開頭）。第一個字元位於位置 0。 | 輸入文字中顯示實體結束位置的字元位移。 | 客戶定義的實體類型。實體類型必須是大寫、底線分隔的字串。建議使用描述性實體類型，例如 `MANAGER`、 `SENIOR_MANAGER`或 `PRODUCT_CODE`。每個模型最多可訓練 25 種實體類型。 | 

如果您的訓練檔案輸入格式是**每個檔案一個文件**，則省略行號欄，而**開始位**移和**結束位移**值是實體從文件開頭的位移。

下列範例適用於每行一個文件。檔案`documents.txt`包含四行 （列 0、1、2 和 3)：

```
Diego Ramirez is an engineer in the high tech industry.
Emilio Johnson has been an engineer for 14 years.
J Doe is a judge on the Washington Supreme Court.
Our latest new employee, Mateo Jackson, has been a manager in the industry for 4 years.
```

具有註釋清單的 CSV 檔案如下所示：

```
File, Line, Begin Offset, End Offset, Type
documents.txt, 0, 0, 13, ENGINEER
documents.txt, 1, 0, 14, ENGINEER
documents.txt, 3, 25, 38, MANAGER
```

**注意**  
在註釋檔案中，包含實體的行號開頭為行 0。在此範例中，CSV 檔案不包含第 2 行的項目，因為 的第 2 行中沒有實體`documents.txt`。

**建立資料檔案**

請務必將註釋放入正確設定的 CSV 檔案中，以降低發生錯誤的風險。若要手動設定 CSV 檔案，下列項目必須是 true：
+ 必須明確指定 UTF-8 編碼，即使它在大多數情況下用作預設值。
+ 第一行包含欄標頭：`File`、 `Line`（選用）`Begin Offset`、、`End Offset`、`Type`。

強烈建議您以程式設計方式產生 CSV 輸入檔案，以避免潛在問題。

下列範例使用 Python 為先前顯示的註釋產生 CSV：

```
import csv 
with open("./annotations/annotations.csv", "w", encoding="utf-8") as csv_file:
    csv_writer = csv.writer(csv_file)
    csv_writer.writerow(["File", "Line", "Begin Offset", "End Offset", "Type"])
    csv_writer.writerow(["documents.txt", 0, 0, 11, "ENGINEER"])
    csv_writer.writerow(["documents.txt", 1, 0, 5, "ENGINEER"])
    csv_writer.writerow(["documents.txt", 3, 25, 30, "MANAGER"])
```