Bước 1: Cài đặt và khởi chạy SillyTavern
SillyTavern chạy giao diện trò chuyện, thẻ nhân vật và các thiết lập gợi ý trên máy tính của bạn. Một mô hình được kết nối sẽ tạo ra các phản hồi. Tài liệu dự án chính thức mô tả đây là một giao diện người dùng mã nguồn mở miễn phí.
Hãy chuẩn bị Node.js LTS, Git, tài khoản GPT Proto với số dư API khả dụng và ID mô hình. Việc suy luận trên đám mây thông qua GPT Proto không yêu cầu tải xuống trọng số mô hình hoặc chạy mô hình trên GPU của bạn.
Cài đặt trên macOS
Tải xuống phiên bản LTS từ trang tải xuống Node.js, chọn macOS và sử dụng trình cài đặt của nó nếu bạn muốn cài đặt bằng giao diện đồ họa.

Chọn bản phát hành LTS hiện tại cho hệ điều hành của bạn.
Mở Terminal và kiểm tra Git:
git --version
Cài đặt Git nếu cần, sau đó chạy:
cd ~
git clone https://github.com/SillyTavern/SillyTavern -b release
cd SillyTavern
bash start.sh
Lần khởi chạy đầu tiên sẽ cài đặt các phần phụ thuộc. Hãy giữ cửa sổ terminal mở trong khi sử dụng SillyTavern và mở địa chỉ cục bộ được hiển thị ở đó nếu trình duyệt không tự động khởi chạy. Các lệnh này tuân theo hướng dẫn cài đặt macOS chính thức.

Lần khởi động đầu tiên sẽ tải xuống các phần phụ thuộc cần thiết.
Để khởi chạy lại sau này:
cd ~/SillyTavern
bash start.sh
Cài đặt trên Windows
Cài đặt Node.js LTS và Git cho Windows. Tạo một thư mục như C:\AI, mở thư mục đó trong File Explorer, nhập cmd vào thanh địa chỉ và nhấn Enter. Chạy:
git clone https://github.com/SillyTavern/SillyTavern -b release
Mở thư mục SillyTavern đã tải xuống và nhấp đúp vào Start.bat. Hãy để cửa sổ console mở trong khi trò chuyện. Hướng dẫn chính thức cho Windows khuyến nghị nên tránh các thư mục do Windows kiểm soát như Program Files và chạy tệp khởi động mà không cần quyền quản trị viên.
Bước 2: Kết nối SillyTavern với GPT Proto
Đăng nhập vào GPT Proto và mở trang mô hình GLM-5.3. Phần API Usage (Sử dụng API) của trang này cung cấp định danh mô hình và mục Create API Key (Tạo khóa API). Hãy tạo hoặc chọn khóa của bạn, kiểm tra mức phí hiện tại và chuẩn bị đủ số dư cho một bài kiểm tra nhỏ.
Trong SillyTavern, hãy mở API Connections (Kết nối API) bằng cách sử dụng biểu tượng phích cắm ở thanh trên cùng. Nhập các thông tin sau:
| Trường |
Giá trị |
| API |
Chat Completion |
| Chat Completion Source |
Custom (OpenAI-compatible) |
| Custom Endpoint / Base URL |
https://gptproto.com/v1 |
| Custom API Key |
Khóa API GPT Proto cá nhân của bạn |
| Enter a Model ID |
glm-5.3 |
| Prompt Post-Processing |
Bắt đầu với None, như được hiển thị trong thiết lập này |
Dán chính khóa đó vào trường khóa. Không thêm Bearer, dấu ngoặc kép hoặc tiêu đề HTTP hoàn chỉnh vào đó.
Các hướng dẫn chính thức về Custom endpoint chỉ định một URL cơ sở không bao gồm /chat/completions; SillyTavern sẽ tự thêm hậu tố đó. Đối với kết nối này, trường endpoint nên kết thúc bằng /v1.
Nếu trước đây bạn đã làm theo hướng dẫn thiết lập API Janitor AI của chúng tôi, hãy lưu ý sự khác biệt này: URL Proxy của Janitor sử dụng địa chỉ https://gptproto.com/v1/chat/completions đầy đủ. Việc sao chép toàn bộ địa chỉ đó vào trường Base URL của SillyTavern sẽ dẫn đến đầu vào không chính xác.

Hãy khớp nguồn, URL cơ sở, khóa và ID mô hình với các trường ở trên.
Nhấp vào Connect, sau đó chọn Test Message. Bạn cũng có thể gửi Hello từ màn hình chào mừng. Hướng dẫn này đã tạo ra phản hồi được hiển thị bên dưới.

Một tin nhắn cơ bản xác nhận rằng kết nối có thể tạo phản hồi.
Danh sách Available Models (Mô hình khả dụng) trống không nhất thiết có nghĩa là tính năng tạo văn bản không khả dụng. Hãy nhập ID chính xác theo cách thủ công khi tính năng tự động tìm mô hình không hoạt động. Để chuyển đổi mô hình sau này, hãy sử dụng một ID mô hình văn bản GPT Proto được hỗ trợ khác và kiểm tra lại; các tính năng của mô hình và các tham số được chấp nhận có thể khác nhau.
Bước 3: Nhập thẻ nhân vật hoặc tự tạo nhân vật của riêng bạn
Kết nối API đang hoạt động sẽ cung cấp mô hình. Thẻ nhân vật cung cấp danh tính, giọng nói và tình huống bắt đầu.
Nhập thẻ nhân vật hiện có
Mở Characters → Import Character (Nhân vật → Nhập nhân vật), chọn tệp thẻ đã tải xuống và chọn nhân vật đã nhập để bắt đầu trò chuyện. Bạn cũng có thể duyệt qua các nhân vật thông qua Extensions → Download Extensions & Assets (Tiện ích mở rộng → Tải xuống tiện ích & tài nguyên).
Đối với thẻ PNG, hãy tải xuống tệp gốc. Một bức chân dung hoặc ảnh chụp màn hình thông thường không chứa định nghĩa nhân vật có thể sử dụng được trừ khi dữ liệu đó đã được nhúng vào hình ảnh. FAQ chính thức giải thích về các lỗi nhập tệp PNG, bao gồm các trường hợp lưu hoặc xử lý hình ảnh làm mất dữ liệu nhúng của nó.
Tạo Noah Bennett từ văn bản
Chọn Tạo nhân vật mới. Bắt đầu với Tên, Mô tả và Tin nhắn đầu tiên; bạn có thể thêm các trường nâng cao sau. Mô tả cho mô hình biết về nhân vật. Tin nhắn đầu tiên thiết lập cảnh mở đầu và thể hiện phong cách bạn muốn. Hướng dẫn thiết kế nhân vật giải thích cả hai trường này.

Sử dụng trình chỉnh sửa nhân vật cho danh tính và cảnh mở đầu của AI.
Đặt Tên thành Noah Bennett. Dán ví dụ gốc này vào Mô tả. {{char}} đề cập đến nhân vật và {{user}} đề cập đến danh tính người dùng bạn đã chọn.
Bạn đang nhập vai {{char}}, Noah Bennett, một người đàn ông 25 tuổi với vóc dáng cơ bắp, nụ cười dễ mến và tính cách ấm áp, tình cảm.
NGOẠI HÌNH
Noah cao 188 cm, với bờ vai rộng, cánh tay khỏe khoắn, khuôn ngực săn chắc và đôi chân mạnh mẽ được xây dựng qua nhiều năm tập luyện sức mạnh. Anh có mái tóc nâu sẫm hơi rối, đôi mắt màu hạt dẻ ấm áp, râu quai nón nhạt và một lúm đồng tiền xuất hiện khi anh cười. Trang phục thường ngày của anh là áo phông vừa vặn, quần jogger thoải mái và giày thể thao. Giọng nói của anh trầm và ấm, và anh rất dễ cười.
TÍNH CÁCH
Noah là một người ngọt ngào với sự tự tin tinh nghịch. Anh chu đáo, biểu cảm cơ thể linh hoạt và thoải mái thể hiện tình cảm. Anh thích làm cho {{user}} mỉm cười thông qua những lời trêu chọc nhẹ nhàng, những cử chỉ chu đáo và những lời khen chân thành. Sức hút của anh đến từ sự kết hợp giữa vóc dáng ấn tượng và trái tim ấm áp đến bất ngờ.
Anh có quan điểm, tình bạn, tham vọng và đôi khi là những ngày tồi tệ của riêng mình. Đôi khi anh giấu sự lo lắng đằng sau một câu đùa và trở nên bối rối đáng yêu khi {{user}} bắt gặp anh đang đa cảm. Anh có thể thừa nhận sai lầm và tự cười chính mình.
TIỂU SỬ
Noah làm huấn luyện viên thể hình và hy vọng sẽ mở một phòng tập thể dục nhỏ trong khu phố. Ngoài công việc, anh thích nấu ăn, đi bộ đường dài, xem những bộ phim hài lãng mạn dở tệ và thử nghiệm các công thức làm bánh pancake. Anh coi trọng việc tập luyện nhưng không bao giờ phán xét cơ thể hay mức độ thể lực của người khác.
MỐI QUAN HỆ VỚI {{user}}
Noah và {{user}} là những người hàng xóm thân thiện gần đây đã bắt đầu dành nhiều thời gian cho nhau hơn. Anh bị thu hút bởi {{user}} và thể hiện sự quan tâm của mình thông qua sự chú ý, tán tỉnh tinh nghịch và những lời mời cùng làm những việc bình thường. Hãy để sự gần gũi của họ phát triển thông qua các tương tác thực tế.
PHONG CÁCH TÁN TỈNH
Cách tán tỉnh của anh ấy ấm áp, cụ thể và hơi táo bạo. Anh ấy có thể duy trì giao tiếp bằng mắt lâu hơn một chút, nhớ món đồ uống yêu thích hoặc thừa nhận rằng anh ấy đã tìm cớ để ghé qua. Anh ấy chú ý đến phản ứng của {{user}} và điều chỉnh một cách tự nhiên. Tình cảm nên mang lại cảm giác được chào đón và từ cả hai phía.
PHONG CÁCH NHẬP VAI
Giữ đúng nhân vật Noah trong suốt câu chuyện. Sử dụng lời thoại tự nhiên, các cử chỉ cơ thể nhỏ và chi tiết cụ thể thay vì giải thích tính cách dài dòng.
Viết hành động trong *dấu hoa thị* và lời thoại trong dấu ngoặc kép.
Thường phản hồi trong một đến ba đoạn ngắn, để lại không gian cho {{user}} tham gia.
Chỉ điều khiển lời nói, hành động và suy nghĩ của Noah. Để lời thoại, quyết định và cảm xúc của {{user}} cho người dùng.
Duy trì các chi tiết đã thiết lập và phản hồi trực tiếp với những gì vừa xảy ra.
Sử dụng tiếng Anh tự nhiên trừ khi {{user}} yêu cầu ngôn ngữ khác.
Dán nội dung này vào Tin nhắn đầu tiên:
*Noah đứng ngoài cửa nhà bạn với chiếc túi tập gym vắt trên bờ vai rộng và một chiếc túi giấy nhỏ trên tay. Mái tóc sẫm màu của anh vẫn còn hơi ẩm, và chiếc áo phông xám vừa vặn của anh dính một chút bột mì gần gấu áo.*
"Trước khi em nói bất cứ điều gì—đúng vậy, anh có thể nấu những món không phải là ức gà và cơm."
*Anh nâng chiếc túi giấy lên, một lúm đồng tiền xuất hiện khi anh mỉm cười.*
"Bánh cuộn quế. Tôi làm hơi nhiều." *Một khoảng lặng ngắn.* "Được rồi, tôi làm dư ra vì tôi hy vọng sẽ được gặp bạn."
"Vậy… bạn có rảnh đi uống cà phê không?"
Hoàn tất việc tạo nhân vật, sau đó chọn Noah. Giữ các hướng dẫn cốt lõi trong phần Mô tả (Description) và phần mở đầu trong Tin nhắn đầu tiên (First Message). Ghi chú của người tạo (Creator's Notes) cung cấp siêu dữ liệu cho những người đọc thẻ và không được sử dụng để xây dựng lời nhắc mô hình.

Thẻ Noah đã hoàn thiện tách biệt danh tính đang diễn ra của anh ấy khỏi lời chào mở đầu.
Thiết lập Persona của riêng bạn
Các nhân vật (Characters) xác định danh tính của AI. Các Persona xác định danh tính của bạn. Hãy mở Quản lý Persona (Persona Management), tạo và chọn một persona, sau đó tùy chọn thêm tên, ảnh đại diện và mô tả, theo hướng dẫn chính thức về Persona.
Đối với phân cảnh hư cấu này, một mô tả ngắn là đủ:
{{user}} là một người trưởng thành vừa mới chuyển đến khu phố. Noah và {{user}} là những người hàng xóm thân thiện đang làm quen với nhau. {{user}} tự quyết định lời nói, hành động, lựa chọn và cảm xúc của chính mình.
Hãy sử dụng các chi tiết hư cấu mà bạn muốn nhân vật biết; bạn không cần phải nhập tiểu sử thực của mình. Để có thêm ý tưởng viết nhân vật, hãy xem cách tạo nhân vật AI của riêng bạn bằng API.
Bước 4: Bắt đầu cuộc trò chuyện nhập vai đầu tiên của bạn
Mở cuộc trò chuyện của Noah và đọc lời chào. Trong ảnh chụp màn hình, người dùng trả lời yes, và Noah phản hồi: “Yeah? Okay. Great.” Sau đó, anh ấy tiếp tục lời mời đi uống cà phê bằng các hành động và lời thoại. Phần tiếp nối được tạo ra đó chính là bước kiểm tra kết nối hữu ích.
Để có một câu lệnh (prompt) cụ thể hơn để tự mình thử nghiệm, hãy gửi:
"Vậy bánh cuộn quế chỉ là cái cớ để gặp tôi thôi sao?"
*Tôi liếc nhìn túi giấy, rồi nhìn lại anh ấy.*
Hãy kiểm tra xem câu trả lời có tuân theo tính cách của Noah không, có phản hồi đúng thông tin đầu vào mới nhất của bạn không và có để bạn tự đưa ra quyết định của mình không. Nếu phong cách cần cải thiện, hãy chỉnh sửa một phần của thẻ nhân vật và thử một cuộc trò chuyện mới. Tránh thay đổi mô hình, câu lệnh nhân vật và nhiều cài đặt cùng lúc; bạn sẽ khó xác định được yếu tố nào đã giúp ích.
Tùy chọn: Thêm Thông tin Thế giới (World Info) vào Nhân vật của bạn
Thông tin Thế giới, còn được gọi là lorebook, sẽ thêm thông tin bối cảnh vào câu lệnh trong các điều kiện được cấu hình. Để thử nghiệm lần đầu, hãy thêm một địa điểm từ phân cảnh của Noah.
Mở Thông tin Thế giới (World Info), tạo một lorebook và thêm một mục đã kích hoạt bằng chiến lược kích hoạt theo từ khóa. Sử dụng các giá trị ví dụ sau:
| Trường |
Ví dụ |
| Tiêu đề mục |
Corner Cafe |
| Khóa / từ khóa |
Corner Cafe, Corner Café |
| Nội dung |
Corner Cafe là một quán cà phê nhỏ cách căn hộ của Noah một dãy nhà. Quán có những chiếc ghế không đồng bộ, những bức tranh kỳ lạ và món espresso tuyệt hảo. Noah biết nơi này, nhưng sở thích của {{user}} vẫn chưa được thiết lập. |
Trong bảng điều khiển nhân vật của Noah, hãy sử dụng Thêm… → Liên kết Thông tin Thế giới (More… → Link World Info), hoặc nút hình quả địa cầu lore nhân vật, để liên kết lorebook với anh ấy. Sau đó hỏi: Corner Cafe như thế nào?
Tài liệu Thông tin Thế giới (World Info) giải thích rằng Nội dung của mục là thứ sẽ đi vào câu lệnh; chỉ riêng tiêu đề sẽ không cung cấp các thông tin thực tế. Việc kích hoạt cũng phụ thuộc vào cài đặt và ngân sách khả dụng, và mô hình có thể không sử dụng mọi chi tiết được cung cấp. Hãy bắt đầu với một mục ngắn gọn và kiểm tra hành vi của nó trước khi thêm một thế giới lớn.
SillyTavern tốn bao nhiêu chi phí với GPT Proto?
GLM-5.3 là mô hình được sử dụng cho hướng dẫn này. Hãy chọn mô hình phù hợp với ngân sách, độ tự nhiên của hội thoại, khả năng biểu đạt cảm xúc, tính nhất quán của nhân vật và tốc độ phản hồi. Hãy so sánh các ứng viên với cùng một thẻ nhân vật và cảnh mở đầu. Đối với các cuộc trò chuyện hàng ngày, hãy đưa chi phí lưu giữ ngữ cảnh vào ngân sách của bạn; đối với các cảnh theo cốt truyện, hãy kiểm tra xem giọng điệu có chân thực không và mô hình có để bạn tự do đưa ra lựa chọn hay không.
Bản thân SillyTavern là miễn phí. Việc tạo mô hình trên GPT Proto sử dụng số dư API của bạn. Tại thời điểm viết hướng dẫn này, GLM-5.3 đang có mức giá thấp hơn 15% so với mức giá đầu vào và đầu ra chính thức trên GPT Proto:
| Sử dụng GLM-5.3 |
Giá GPT Proto trên mỗi 1 triệu token |
| Đầu vào chưa lưu bộ nhớ đệm |
$1.19 |
| Đầu ra |
$3.74 |
Giá được kiểm tra vào ngày 3 tháng 11 năm 2026. Xem bảng giá GLM-5.3 để biết giá hiện tại và bất kỳ mức giá bộ nhớ đệm áp dụng nào.
Một yêu cầu minh họa với 8.000 token đầu vào chưa lưu bộ nhớ đệm và 500 token đầu ra tính phí có chi phí là:
(8.000 ÷ 1.000.000 × $1.19) + (500 ÷ 1.000.000 × $3.74)
= $0.01139
Đây là ví dụ tính toán, không phải hóa đơn thực tế cho cuộc hội thoại trong ảnh chụp màn hình. Đầu ra tính phí không phải là số lượng từ; hãy sử dụng mức sử dụng do nhà cung cấp báo cáo, bao gồm cả các token suy luận được tính là đầu ra.
Đầu vào có thể bao gồm hướng dẫn nhân vật, Persona, thông tin bổ sung (lore) đã chọn và lịch sử hội thoại được lưu giữ. Như tổng quan về kết nối API đã giải thích, SillyTavern tập hợp những thông tin này thành một câu lệnh (prompt). Ngữ cảnh được lưu giữ càng dài thì chi phí cho một phản hồi càng cao, ngay cả khi tin nhắn mới nhất của bạn chỉ là vâng.
Tại sao nên chọn GPT Proto cho API SillyTavern của bạn?
GPT Proto cung cấp các mô hình từ nhà cung cấp chính thức với mức giá ưu đãi cho các mô hình được chọn, bao gồm GLM-5.3. Một khóa API và một số dư dùng chung cho nhiều nhà cung cấp. Trong SillyTavern, hãy giữ nguyên thẻ nhân vật và kết nối Tùy chỉnh (Custom) của bạn, chuyển sang ID mô hình trò chuyện được hỗ trợ khác và so sánh các phản hồi của nó.
Để đảm bảo độ tin cậy, các mô hình lớn sử dụng các kênh thượng nguồn dự phòng và cơ chế tự động chuyển đổi dự phòng (failover) để giúp giảm thiểu gián đoạn khi một kênh không khả dụng. Bạn có thể chọn giữa các mô hình với mức giá và phong cách hội thoại khác nhau trong khi vẫn giữ nguyên thiết lập của mình.
Trước một phiên trò chuyện dài, hãy kiểm tra tính khả dụng của mô hình, chi phí đầu vào/đầu ra, tốc độ phản hồi và cách xử lý dữ liệu. Hãy bắt đầu với một bài kiểm tra nhỏ và xem xét mức sử dụng. Trang mô hình SillyTavern cho phép bạn khám phá các tùy chọn và so sánh chi phí.
Các vấn đề thường gặp với API SillyTavern và cách khắc phục
Hãy bắt đầu với một cuộc trò chuyện mới và một tin nhắn ngắn. Sau đó, đối chiếu triệu chứng với bước kiểm tra tiếp theo:
| Những gì bạn thấy |
Những gì cần kiểm tra |
Hành động đầu tiên |
| 401 Unauthorized (Không được phép) |
Khóa API |
Dán lại khóa mà không có khoảng trắng thừa, dấu ngoặc kép hoặc tiền tố Bearer trong trường giao diện người dùng. |
| 404 / Not Found (Không tìm thấy) |
Đường dẫn Endpoint |
Sử dụng https://gptproto.com/v1 làm Custom Endpoint. |
| Model not found (Không tìm thấy model) |
ID Model |
Sao chép chính xác định danh được hỗ trợ, chẳng hạn như glm-5.3, từ trang model đó. |
| Available Models (Các model khả dụng) trống |
Khám phá model |
Thử nhập ID model theo cách thủ công. |
| Phản hồi trống hoặc không đầy đủ |
Hạn mức đầu ra, suy luận, ngữ cảnh, số dư |
Kiểm tra lỗi và cài đặt đầu ra; thử lại một yêu cầu nhỏ với các giới hạn phù hợp. |
| Phản hồi trợ lý chung chung |
Nhân vật và lời nhắc đang hoạt động |
Chọn nhân vật mong muốn và kiểm tra Mô tả (Description) cũng như Tin nhắn đầu tiên (First Message) của nhân vật đó. |
| World Info dường như bị bỏ qua |
Liên kết, trình kích hoạt, ngân sách |
Xác nhận rằng lorebook đã được liên kết và mục nhập đủ điều kiện để kích hoạt. |
Các model suy luận cần được chú ý đặc biệt. Hướng dẫn suy luận chính thức giải thích rằng quá trình suy nghĩ có thể tiêu tốn token phản hồi, ngay cả khi bị ẩn. Hạn mức quá nhỏ đối với model đó có thể dẫn đến phản hồi hiển thị trống hoặc chưa hoàn thành. Hãy kiểm tra Độ dài phản hồi tối đa (Max Response Length) dựa trên yêu cầu của model thay vì áp dụng cùng một giới hạn nhỏ cho mọi model.
Một thảo luận cộng đồng về lorebook và phản hồi trống mô tả một người dùng đã khắc phục được sự cố sau khi xóa cài đặt sẵn (preset) và tăng hạn mức phản hồi. Cả hai thay đổi được thực hiện cùng lúc, vì vậy báo cáo không chỉ rõ nguyên nhân duy nhất. Điều này củng cố quy trình khắc phục sự cố thực tế: hãy làm cho một cuộc trò chuyện đơn giản hoạt động trước, sau đó thêm các cài đặt sẵn và lore từng thay đổi một.
Tùy chọn: Kiểm tra API bên ngoài SillyTavern
Với khóa của bạn được lưu trữ riêng tư trong biến môi trường GPTPROTO_API_KEY, lệnh shell macOS/Linux này sẽ gửi một yêu cầu trực tiếp sử dụng định dạng Chat Completions của trang model:
curl --request POST "https://gptproto.com/v1/chat/completions" \
--header "Authorization: Bearer $GPTPROTO_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"model": "glm-5.3",
"messages": [
{"role": "user", "content": "Reply with: API connection works."}
]
}'
Hãy kiểm tra xem có phản hồi thành công chứa văn bản được tạo hay không, thay vì chỉ là chỉ báo kết nối. Nếu cách này hoạt động trong khi SillyTavern thất bại, hãy so sánh các trường và tham số bổ sung của client. Nếu cả hai đều thất bại, hãy điều tra lỗi xác thực, số dư, model hoặc dịch vụ được trả về. Giữ các khóa thực tế tránh xa các bài đăng khắc phục sự cố công khai.