# Trình tạo llms.txt: tạo tệp từ một lần crawl trang web của riêng bạn

> Tạo tệp llms.txt cho trang web từ một lần crawl: một script Python đọc từng trang dạng Markdown và liệt kê chúng kèm tóm tắt một dòng. Dữ liệu 2026.

- URL: https://webreaderapi.com/vi/guides/llms-txt-generator/
- Cập nhật lần cuối: 2026-10-22
- Đơn vị phát hành: WebReaderAPI (https://webreaderapi.com)

Tệp llms.txt liệt kê các trang chính của một trang web, mỗi trang một dòng, dưới dạng Markdown mà các mô hình đọc dễ dàng. Hướng dẫn này đưa ra số liệu áp dụng trung thực, rồi một script crawl trang web của bạn và viết tệp cho bạn.

**Câu trả lời nhanh — Làm cách nào để tạo tệp llms.txt cho trang web của tôi?**

Crawl trang web của riêng bạn, lấy tiêu đề và đoạn đầu tiên của từng trang, rồi viết chúng thành danh sách Markdown dưới tên trang web của bạn trong một tệp tại `/llms.txt`. **WebReaderAPI** thực hiện crawl: tối đa 10.000 trang mỗi lượt, dưới dạng Markdown kèm metadata, với một credit mỗi trang từ 0,07 US$/1K trang tính đến tháng 10 năm 2026. Script Python dưới đây viết tệp. Không cần KYC; thanh toán bằng crypto.

## llms.txt tóm gọn

| Thuộc tính | Giá trị |
| --- | --- |
| Đây là gì | Một tệp Markdown được đề xuất tại gốc của trang web, liệt kê các trang chính cho các mô hình ngôn ngữ |
| Mức độ áp dụng, 1.000 trang web hàng đầu | 9,3% (93 trang web) vào ngày 18 tháng 9 năm 2026, theo Rankability |
| Các trang có tệp này | Từ 4,088 lên 36,120 trong khoảng tháng 6 năm 2025 đến tháng 5 năm 2026, theo Originality.ai |
| Mức sử dụng đo được | 97% tệp llms.txt không nhận được yêu cầu nào trong một nghiên cứu của Ahrefs trên 137,000 tên miền |
| Chi phí để xây dựng với WebReaderAPI | Một credit cho mỗi trang được crawl; 10.000 trang tốn 3,75 US$ |

## llms.txt có đáng để tạo không?

Tạo thì rẻ, và tác dụng đo được cho đến nay còn nhỏ. Mức độ áp dụng đang tăng: Rankability tìm thấy tệp này trên 9.3% trong 1,000 trang web hàng đầu vào ngày 18 tháng 9 năm 2026, so với 0.3% vào tháng 6 năm 2025, dù phương pháp của họ đã thay đổi giữa hai lần đếm. Originality.ai đếm được số trang có tệp tăng từ 4,088 lên 36,120 trong khoảng tháng 6 năm 2025 đến tháng 5 năm 2026.

Việc sử dụng lại là chuyện khác. Một nghiên cứu của Ahrefs trên 137,000 tên miền, được PPC Land đưa tin ngày 2 tháng 7 năm 2026, phát hiện rằng 97% tệp llms.txt không nhận được yêu cầu nào cả, và các bot truy xuất AI chỉ chiếm 1.1% trong số các yêu cầu mà những tệp này nhận được. Hãy tạo một tệp nếu tài liệu của bạn lớn và bạn muốn có một chỉ mục gọn gàng; đừng kỳ vọng riêng nó sẽ thay đổi cách các trợ lý trích dẫn bạn.

## Một tệp llms.txt gồm những gì?

Một tiêu đề, một đoạn tóm tắt, rồi các danh sách liên kết được nhóm lại, mỗi mục kèm một mô tả ngắn. Một tệp tối giản trông như sau:

- `# Example Docs` ở dòng đầu tiên, tên của trang web hoặc dự án.
- `> One sentence on what the site covers.` dưới dạng một đoạn tóm tắt trong ngoặc kép.
- `## Guides`, `## API reference` và các mục khác, mỗi mục cho một phần của trang web.
- `- [Page title](https://example.com/page): one line on what the page answers.` cho mỗi trang.

Giữ mô tả ngắn gọn và đúng sự thật. Đừng viết chỉ dẫn cho các hệ thống AI trong tệp; các trợ lý ngày càng coi loại văn bản đó là thao túng.

*Python: crawl trang web của bạn và viết llms.txt*

```python
import os
import time
from collections import defaultdict
from urllib.parse import urlparse

import requests

API = "https://webreaderapi.com/api/v1"
HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}
SITE = "https://docs.example.com/"


def first_paragraph(markdown):
    for block in markdown.split("\n\n"):
        block = block.strip()
        if block and not block.startswith(("#", "-", "|", "!", ">")):
            return " ".join(block.split())[:160]
    return ""


job = requests.post(API + "/crawl", headers=HEADERS, json={"url": SITE, "limit": 300}, timeout=60).json()
pages, cursor, delay = [], None, 5
while True:
    params = {"cursor": cursor} if cursor else {}
    batch = requests.get(API + "/jobs/" + job["job_id"], headers=HEADERS, params=params, timeout=60).json()
    pages += [p for p in batch.get("results", []) if "markdown" in p]
    cursor = batch.get("next_cursor")
    if batch["status"] == "done" and not cursor:
        break
    if not cursor:
        time.sleep(delay)
        delay = min(delay * 2, 60)

sections = defaultdict(list)
for p in pages:
    path = urlparse(p["final_url"]).path.strip("/")
    section = path.split("/")[0].replace("-", " ").title() if path else "Home"
    summary = p.get("description") or first_paragraph(p["markdown"])
    sections[section].append("- [" + p["title"] + "](" + p["final_url"] + "): " + summary)

lines = ["# Example Docs", "", "> Documentation for the Example product.", ""]
for name in sorted(sections):
    lines += ["## " + name, ""] + sorted(sections[name]) + [""]
with open("llms.txt", "w", encoding="utf-8") as fh:
    fh.write("\n".join(lines))
print(len(pages), "pages written to llms.txt")

```

## Script hoạt động thế nào?

Nó khởi động một job crawl, thu thập kết quả theo từng trang, rồi nhóm các trang theo thư mục đầu tiên trong đường dẫn của chúng. Với mỗi trang, nó dùng meta description khi trang web có cung cấp, nếu không thì lấy đoạn đầu tiên của Markdown, cắt còn 160 ký tự.

Hãy thay đổi `SITE`, dòng tiêu đề và dòng tóm tắt cho khớp với dự án của bạn, và tăng `limit` nếu trang web lớn hơn, tối đa 10,000 trang mỗi job. Hãy xem lại kết quả trước khi xuất bản: tên các mục lấy từ cấu trúc URL của bạn và có thể cần chỉnh tay.

## robots.txt của tôi có cần cho phép crawl không?

Có. WebReaderAPI chỉ đọc những gì robots.txt cho phép với `WebReaderAPI` hoặc với tất cả bot, và nó chờ theo bất kỳ `Crawl-delay` nào bạn đặt. Nếu chính trang web của bạn chặn bot, hãy thêm một nhóm cho phép token của chúng tôi trong thời gian crawl; [trang crawler của chúng tôi](https://webreaderapi.com/vi/bot/) hiển thị chính xác các dòng cần thêm.

Các trang bị robots.txt chặn sẽ bị bỏ qua và không bị tính phí, nên một tệp nghiêm ngặt không khiến bạn tốn thêm gì; nó chỉ khiến những trang đó không có trong llms.txt.

## Chi phí là bao nhiêu?

Một credit cho mỗi trang được đọc, hai credit cho những trang cần trình duyệt. Một trang tài liệu 300 trang tốn 300 credit, hoặc tối đa 600 nếu đó là ứng dụng JavaScript. Điều đó vừa vặn dễ dàng trong 10.000 trang với 3,75 US$, tính đến tháng 10 năm 2026, và số credit còn lại vẫn nằm trong tài khoản của bạn: chúng không bao giờ hết hạn.

Hãy tạo lại tệp khi tài liệu của bạn thay đổi. Nếu bạn giữ lại kết quả crawl, bạn có thể chỉ đọc lại những trang đã thay đổi bằng một job hàng loạt thay vì crawl lại tất cả.

## llms.txt: các câu hỏi thường gặp

### Tôi đặt tệp llms.txt ở đâu?

Ở thư mục gốc của trang web, để nó được phục vụ tại `/llms.txt`, dưới dạng văn bản thuần hoặc Markdown. Một số trang web còn công bố `llms-full.txt` chứa toàn văn của các trang được liệt kê.

### llms.txt có thay thế robots.txt không?

Không. robots.txt cho biết những đường dẫn nào bot nên bỏ qua; llms.txt liệt kê những trang bạn muốn các mô hình tìm thấy. Hãy giữ cả hai. [Hướng dẫn về robots.txt của chúng tôi](https://webreaderapi.com/vi/guides/robots-txt-for-ai-agents/) giải thích sự khác biệt.

### llms.txt có khiến ChatGPT hay Claude trích dẫn trang của tôi không?

Không có bằng chứng cho thấy riêng nó làm được điều đó. Nghiên cứu của Ahrefs được báo cáo vào tháng 7 năm 2026 phát hiện 97% tệp không nhận được yêu cầu nào. Những trang rõ ràng với câu trả lời trực tiếp và dữ kiện có ngày tháng quan trọng hơn.

### Tôi có thể tạo llms.txt cho trang web của người khác không?

Chỉ cho các trang web của chính bạn hoặc khi có sự đồng ý của chủ sở hữu. Tệp này đại diện cho trang web, nên việc công bố nó thuộc về chủ trang web.

## Nguồn

1. [Dữ liệu áp dụng llms.txt](https://www.rankability.com/data/llms-txt-adoption/) — Rankability (2026-09-18)
2. [Mức áp dụng llms.txt tăng 8.8 lần nhưng 97% tệp không nhận được yêu cầu AI nào](https://ppc.land/llms-txt-adoption-rises-8-8x-but-97-of-files-get-zero-ai-requests/) — PPC Land (2026-07-02)

---

WebReaderAPI: WebReaderAPI là web reader API cho AI agent, chuyển mọi trang web công khai thành Markdown sạch, thanh toán bằng crypto không cần tải lên giấy tờ. Credit trả trước từ 0,07 US$/1K trang không bao giờ hết hạn, và robots.txt được tôn trọng. Không cần KYC — không ID, không selfie, không giấy tờ. Thanh toán bằng crypto.
