“Làm sao để được ChatGPT trích dẫn?” thường được trả lời bằng một bài liệt kê: viết nội dung tốt, thêm lược đồ, tạo tệp llms.txt. Lời khuyên đó không hẳn sai mà chủ yếu nhắm sai tầng. Nó mô tả trang nên trông như thế nào, nhưng bỏ qua hai câu hỏi thực sự quyết định kết quả: hệ thống truy xuất có tiếp cận được trang của bạn hay không, và trên trang có đoạn văn nào vẫn giữ được ý nghĩa khi bị tách khỏi ngữ cảnh hay không?
Bài viết này trình bày cơ chế theo đúng thứ tự hoạt động thực tế. Chúng tôi thực hiện các kiểm tra này trên chính website của mình, và một vài kiểm tra đã giúp tìm ra những vấn đề mà dù chỉnh nội dung bao nhiêu cũng không khắc phục được.
Trích dẫn là vấn đề truy xuất, không phải vấn đề xếp hạng
Khi ChatGPT trả lời kèm liên kết, nó không đọc web trực tiếp cho mọi câu hỏi. Một bước truy xuất lấy các đoạn văn ứng viên từ chỉ mục; mô hình soạn câu trả lời từ kết quả nhận được và dẫn nguồn cho những phần nó dựa vào. Điều đó dẫn tới hai hệ quả, cả hai đều trái trực giác nếu bạn quen với SEO truyền thống:
- Đơn vị là đoạn văn, không phải trang. Một trang có thể xếp hạng tốt mà không đóng góp gì, vì thông tin đáng trích nằm trong hình ảnh, biểu đồ không có văn bản tương đương, hoặc đoạn văn chỉ tồn tại sau khi JavaScript chạy.
- Có thể truy xuất và đáng trích dẫn là hai ngưỡng khác nhau. Có trong chỉ mục là điều kiện tiên quyết. Trở thành câu rõ ràng nhất hiện có cho câu hỏi mới giúp bạn được dẫn nguồn. Hầu hết danh sách kiểm tra GEO chỉ xử lý điều thứ nhất, rồi thắc mắc vì sao lưu lượng truy cập không thay đổi.
Trong thực tế, xếp hạng và trích dẫn tách rời nhau. Bạn có thể đứng thứ ba với một từ khóa mà không bao giờ được trích dẫn, vì hai trang phía trên tình cờ nêu câu trả lời trong một câu độc lập, còn bạn chôn câu trả lời ở đoạn thứ tư của mục “Triết lý của chúng tôi”.
Ba bot, ba công việc khác nhau
Đây là nơi xảy ra những sai lầm tốn kém nhất, vì mọi người nghĩ về “trình thu thập dữ liệu của OpenAI” như thể chỉ có một. Tài liệu OpenAI mô tả ba tác tử riêng biệt, và chúng không làm cùng một công việc:
- GPTBot — thu thập dữ liệu hàng loạt để huấn luyện mô hình. Chặn nó sẽ thay đổi những gì mô hình tương lai tiếp thu từ website của bạn. Việc đó không loại bạn khỏi các trích dẫn trực tiếp của ChatGPT.
- OAI-SearchBot — xây dựng chỉ mục tìm kiếm mà bước truy xuất sử dụng. Đây là bot quyết định liệu bạn có thể được trích dẫn hay không.
- ChatGPT-User — tải một URL cụ thể khi câu hỏi của người dùng kích hoạt duyệt web trực tiếp. Chặn nó thì việc tải sẽ thất bại đúng lúc có người hỏi về bạn.
Sai lầm phổ biến: một nhóm quyết định không muốn nội dung của mình dùng để huấn luyện mô hình, chặn GPTBot, và tin rằng họ đã đưa ra quyết định có cân nhắc. Đúng vậy — về huấn luyện. Họ chưa quyết định gì về truy xuất. Phiên bản tệ hơn: ai đó chặn mọi tác tử OpenAI bằng một quy tắc ký tự đại diện, âm thầm xóa công ty khỏi câu trả lời AI, rồi dành cả quý thắc mắc vì sao đối thủ được trích dẫn.
Đây là những lựa chọn tách biệt, nên hãy quyết định riêng từng việc. Tệp robots.txt của chúng tôi cho phép cả ba và chặn /api/ cùng các liên kết chia sẻ, vì liên kết chia sẻ là nội dung người dùng không nên có trong chỉ mục. Bạn có thể chọn khác — huấn luyện và truy xuất thực sự là hai sự đánh đổi khác nhau. Chỉ cần quyết định theo từng bot, không theo nhà cung cấp, và thỉnh thoảng đọc lại tài liệu của nhà cung cấp, vì các chính sách này thay đổi.
robots.txt không phải cánh cổng thực sự chặn bạn
Robots chỉ là một yêu cầu, và đó là tầng mọi người đều kiểm tra. Tầng thực sự gây trở ngại là CDN hoặc WAF. Với nhiều cấu hình mặc định, nền tảng biên sẽ yêu cầu xác minh hoặc chặn tác nhân người dùng lạ, và kết quả diễn ra âm thầm: robots.txt ghi Allow, nhưng tầng biên trả về 403, khiến website không thể được thu thập dữ liệu trong khi mọi tệp trong kho mã đều khẳng định bạn đang mở cửa.
Kiểm tra chỉ mất mười giây mà gần như không ai thực hiện:
curl -s -o /dev/null -w "%{http_code}\n" -A "OAI-SearchBot" https://your-site/
curl -s -o /dev/null -w "%{http_code}\n" -A "ChatGPT-User" https://your-site/
curl -s -o /dev/null -w "%{http_code}\n" -A "PerplexityBot" https://your-site/200 nghĩa là có thể truy cập. Mã 403, mã 503, hoặc trang yêu cầu xác minh nghĩa là bạn có vấn đề về khả năng hiển thị mà chỉnh nội dung bao nhiêu cũng không giải quyết được. Hãy chạy kiểm tra trên môi trường vận hành thực tế, từ bên ngoài mạng của bạn, cho mọi tên miền bạn vận hành — mỗi tên miền thường có cấu hình biên riêng, và chúng dần khác nhau.
Nếu chỉ làm một việc từ bài viết này, hãy làm việc này. Đây là kiểm tra mang lại hiệu quả cao nhất trên mỗi giây bỏ ra, và mọi cuộc kiểm toán nội dung đều không thấy được nó.
Nếu một thông tin cần JavaScript, nó không tồn tại
Trình thu thập dữ liệu phục vụ truy xuất thường phân tích HTML thô mà không thực thi JavaScript. Vì vậy, phép thử xem một khẳng định có thể được trích dẫn hay không không phải là những gì trình duyệt hiển thị — mà là:
curl -s https://your-site/page/ | grep -i "the claim you want quoted"Không có gì trong đầu ra nghĩa là không có gì để trích dẫn. Điều này dẫn tới một hệ quả thiết kế thực tế: văn bản quan trọng cho trích dẫn — định nghĩa, thông tin chính, câu trả lời FAQ, khẳng định về giá và bảo mật — phải có trong HTML được máy chủ trả về. Từ điển lúc chạy thay văn bản sau quá trình hydration có thể dùng để bổ sung; nó không thể là nơi duy nhất chứa thông tin.
Điều này ảnh hưởng nặng nhất tới website đa ngôn ngữ, và đó là cái bẫy chúng tôi chủ động tránh trong thiết kế. Nếu nội dung tiếng Trung chỉ nằm trong từ điển i18n JavaScript, thì với trình thu thập HTML thô, nội dung tiếng Trung của bạn hoàn toàn không tồn tại. Cách khắc phục của chúng tôi là nhúng trực tiếp mọi ngôn ngữ dưới dạng mã đánh dấu thực và để CSS quyết định người dùng thấy ngôn ngữ nào. Trình thu thập nhận cả bốn ngôn ngữ; người đọc nhận một. Trang nặng hơn, nhưng đáng.
Viết những đoạn văn vẫn giữ nghĩa khi bị tách khỏi ngữ cảnh
Đây là phần thực sự thuộc về viết nội dung thay vì hạ tầng kỹ thuật, và là nơi tạo hiệu quả lớn khi hạ tầng đã hoạt động.
Một đoạn được truy xuất tới mô hình mà không có phần còn lại của trang. Không hệ thống tiêu đề, không đoạn phía trước, không thanh điều hướng. Hãy viết cho tình huống đó:
- Trả lời ngay từ đầu. Câu đầu dưới tiêu đề nên là câu trả lời, không phải đoạn dẫn nhập. “X là Y” tốt hơn “Trong bối cảnh biến đổi nhanh chóng ngày nay…” — vốn không trả lời gì và chẳng bao giờ được trích dẫn.
- Nêu rõ chủ thể. “Nó hỗ trợ OAuth” không dùng được khi bị tách ra; “Orkas hỗ trợ OAuth” vẫn giữ nghĩa. Đại từ mất tác dụng khi chia nhỏ văn bản.
- Để mỗi khẳng định tự đứng vững. Thực thể, điều kiện và giới hạn trong một câu: “Khi dùng nhà cung cấp riêng, lưu lượng mô hình đi thẳng tới nhà cung cấp đó và không được chuyển tiếp qua Orkas.” Câu này có thể được trích riêng mà không trở thành sai sự thật, và chính vì thế nó đáng trích dẫn.
- Ưu tiên điều kiểm chứng được hơn điều gây ấn tượng. Những lời tâng bốc mơ hồ không bao giờ được trích dẫn, vì chúng không trả lời câu hỏi nào người ta đặt ra.
Câu hỏi là khóa truy xuất
Người dùng đặt câu hỏi, và hệ thống truy xuất ghép với văn bản dạng câu hỏi. Tiêu đề chính là câu hỏi — “Orkas có chuyển tiếp lưu lượng mô hình không?” — khớp tốt hơn cụm danh từ như “Kiến trúc mô hình”. Đây, chứ không phải phép màu của lược đồ, là lý do các khối FAQ tạo hiệu quả vượt trội cho khả năng hiển thị trong AI: chúng chính là cặp câu hỏi–câu trả lời, đúng dạng nội dung được truy xuất.
Dữ liệu có cấu trúc giúp bạn dễ phân tích, không giúp bạn được ưu tiên
JSON-LD không mua được trích dẫn. Nó giúp phân loại rõ ràng: trang này là gì, ai xuất bản, phần văn bản nào là câu hỏi và phần nào là câu trả lời. Hai quy tắc quan trọng hơn mọi quy tắc khác:
- Lược đồ FAQ phải khớp một-một với văn bản hiển thị. Lược đồ khẳng định điều trang không nói là vấn đề về độ tin cậy, và công cụ tìm kiếm xem sự lệch nhau đó là tín hiệu spam thay vì lỗi định dạng.
- Đừng bao giờ bịa đánh giá, giải thưởng hay số lượng. Một công cụ phát hiện một điểm đánh giá tổng hợp bị bịa đã có lý do để giảm độ tin cậy của mọi khẳng định khác từ bạn.
Quy tắc 1:1 rất dễ âm thầm xuống cấp — ai đó sửa FAQ hiển thị, quên lược đồ, và sáu tháng sau chúng không còn khớp. Chúng tôi thực thi quy tắc bằng bài kiểm thử duyệt mọi trang trong sơ đồ website, lấy FAQ từ JSON-LD, rồi xác nhận từng chuỗi câu hỏi và câu trả lời xuất hiện nguyên văn trong nội dung hiển thị của trang đó. Nếu lệch, bản dựng thất bại. Dữ liệu có cấu trúc là một khẳng định về chính trang của bạn; nó cần được kiểm tra tương xứng.
llms.txt: ít tốn kém, hữu ích, và bị thổi phồng
Hãy nói đúng bản chất của tệp này. llms.txt là một quy ước được đề xuất. Không công cụ lớn nào cam kết đọc nó, và ai nói với bạn đây là kênh nạp dữ liệu đều đang phỏng đoán.
Giá trị thực của nó hẹp hơn nhưng vẫn đáng bỏ ra một giờ: một nơi ổn định trình bày rõ các thông tin chuẩn — sản phẩm là gì, cách xử lý mô hình và dữ liệu, giá cả, các URL quan trọng. Khi trình thu thập hoặc người nghiên cứu truy cập vào, họ nhận được phiên bản không tô vẽ thay vì phải ghép lại từ các trang tiếp thị. Nó còn buộc bạn làm rõ nội dung. Nếu bạn không thể nêu thông tin sản phẩm trong bốn mươi dòng mà không dùng tính từ, các trang của bạn cũng không thể, và đó là vấn đề nội dung mà dù sao bạn cũng sẽ gặp.
Nó không phải sự bảo đảm, cũng không thay thế việc đưa các thông tin đó lên chính các trang.
Mâu thuẫn khiến bạn bị loại
Công cụ trả lời có đối chiếu chéo. Nếu trang giá nói một đằng, tài liệu nói một nẻo, và FAQ trang chủ nói kiểu thứ ba, công cụ không phân xử — nó trả lời dè dặt hoặc trích dẫn bên khác nhất quán hơn.
Vì vậy, giữ thông tin nhất quán trên các nơi xuất hiện là phần lớn công việc thực tế, và chẳng phần nào hào nhoáng. Khi một thông tin về mô hình, giá hoặc bảo mật thay đổi, nó phải thay đổi ở mọi nơi trong cùng một lần cập nhật — trang, tài liệu, FAQ trang chủ, llms.txt — nếu không, bạn đã tạo ra mâu thuẫn tồn tại lâu hơn lần chỉnh sửa. Chúng tôi coi đó là quy tắc bắt buộc thay vì thói quen, vì thói quen thường thua thời hạn.
Xác nhận độc lập có giá trị hơn tự khẳng định
Đây là phần khó chấp nhận nhất: website của bạn là nguồn yếu nhất hiện có về chính bạn. Các công cụ coi trọng sự xác nhận từ nguồn khác, và điều đó hợp lý. Khẳng định chỉ xuất hiện trên tên miền của bạn là lời tiếp thị. Cùng khẳng định đó xuất hiện trên GitHub, trong bài so sánh của bên thứ ba, luồng thảo luận diễn đàn, tài liệu người khác viết, thì trở thành thông tin thực tế.
Đó là lý do, khi nền tảng trên website đã vững, công việc ngoài website hiệu quả hơn việc thêm một trang đích — kho mã, danh mục, bài liệt kê, thảo luận thực chất. Nói thẳng: công việc trên website giúp bạn có thể được trích dẫn; công việc ngoài website giúp bạn được trích dẫn. Các nhóm thường đầu tư quá nhiều vào phần đầu vì đó là phần họ kiểm soát.
Đo lường mà không tự đánh lừa mình
Đây là chỗ các bài về GEO thường trở nên mơ hồ, nên nói rõ: bạn không thể đo trích dẫn ChatGPT một cách rành mạch. Không có bảng điều khiển nào. Bạn có ba tín hiệu không hoàn hảo:
- Nhật ký máy chủ. Dùng grep tìm
OAI-SearchBotvàChatGPT-User. Tần suất thu thập và các URL được tải cho biết bạn có trong chỉ mục hay không và nội dung nào đang được lấy trực tiếp. Đây là tín hiệu trung thực nhất bạn nắm giữ. - Lưu lượng giới thiệu từ trợ lý. Có thật, nhưng không đầy đủ — nhiều trích dẫn được đọc mà không được nhấp, vốn chính là mục đích của công cụ trả lời.
- Kiểm tra mẫu thủ công. Hỏi mười câu bạn muốn chiếm lĩnh; ghi lại ai được trích dẫn. Tẻ nhạt, chỉ mang tính định hướng, nhưng vẫn là cách duy nhất để quan sát chính nơi câu trả lời xuất hiện.
Hãy coi cả ba là tín hiệu định hướng. Ai bán cho bạn một “điểm GEO” chính xác đang bán một con số họ tự nghĩ ra.
Những việc chúng tôi thực sự sẽ làm trước
Xếp theo hiệu quả, không theo độ đẹp mắt trên bản trình chiếu:
- 1.
curl -Avới các bot truy xuất trên môi trường vận hành thực tế. Nếu tầng biên đang chặn chúng, mọi thứ khác trong danh sách đều vô nghĩa. - 2.
curl | grepcác khẳng định chính của bạn. Chuyển mọi nội dung chỉ có trong JavaScript vào HTML được máy chủ trả về. - 3. Viết lại câu đầu dưới mỗi tiêu đề thành câu trả lời, với chủ thể rõ ràng.
- 4. Làm cho văn bản FAQ và lược đồ FAQ giống hệt nhau, và xóa mọi lược đồ không có văn bản hiển thị làm căn cứ.
- 5. Thống nhất các thông tin mâu thuẫn giữa các trang, tài liệu và
llms.txt. - 6. Sau đó — và chỉ sau đó — mới tìm kiếm sự xác nhận từ nguồn ngoài website.
Bước 1 và 2 thường là nơi ẩn chứa nguyên nhân thiếu trích dẫn. Đó cũng là hai bước không ai viết bài về, vì chúng không phải tiếp thị nội dung.
Lời kết
Được ChatGPT trích dẫn ít bí ẩn hơn cách các từ viết tắt mô tả nó. Để bot truy xuất tiếp cận được. Để nội dung đọc được mà không cần JavaScript. Để có thể trích dẫn bằng một câu độc lập. Giữ nhất quán trên các nơi bạn xuất bản. Có sự xác nhận ở nơi khác ngoài website tiếp thị của bạn. Công cụ thay đổi liên tục; năm nguyên tắc này vẫn giữ nguyên.
Chúng tôi thực hiện các kiểm tra này trên website của mình và tích hợp chúng vào một quy trình Orkas để kiểm toán khả năng hiển thị trong tìm kiếm và câu trả lời AI của website, rồi trả về danh sách sửa lỗi theo thứ tự ưu tiên. Nếu muốn tìm hiểu tầng bên dưới — cách tác tử trưởng lập kế hoạch và giao việc cho các tác tử chuyên môn — hãy đọc điều phối đa tác tử trong thực tế.