Xây dựng Chatbot Đa Nhân Cách Mã Nguồn Mở Mindful Companion

Hiếu Trần
151

Xây dựng Chatbot Đa Nhân Cách Mã Nguồn Mở Mindful Companion 
Hieu Chen – 2025


1. Giới thiệu

Trong những năm gần đây, các mô hình ngôn ngữ lớn (LLM) đã đóng vai trò trung tâm trong việc phát triển các hệ thống tương tác người – máy, đặc biệt là chatbot. Tuy nhiên, phần lớn các chatbot hiện tại vẫn duy trì một phong cách trò chuyện duy nhất, thiếu khả năng thích ứng với các nhu cầu, hoàn cảnh hoặc cảm xúc khác nhau của người dùng. Trong bối cảnh đó, Mindful Companion ra đời như một giải pháp mã nguồn mở nhằm xây dựng một chatbot đa nhân cách, có thể thay đổi linh hoạt giữa các vai trò đối thoại như nhà trị liệu tâm lý, huấn luyện viên, người bạn thân thiết, hoặc thậm chí là một nhân cách gây tranh cãi.

Điểm nổi bật của Mindful Companion không nằm ở việc huấn luyện lại mô hình nền, mà là việc áp dụng kỹ thuật prompt tuning – một hướng tiếp cận hiệu quả và tiết kiệm tài nguyên để điều chỉnh hành vi mô hình thông qua lời nhắc hệ thống. Dự án hướng tới việc cung cấp một nền tảng thân thiện với nhà phát triển, dễ dàng triển khai, mở rộng và cá nhân hóa.


2. Kỹ thuật Prompt Tuning

Prompt tuning là một phương pháp điều chỉnh hành vi mô hình ngôn ngữ thông qua việc thiết kế lời nhắc (prompt) mà không cần huấn luyện lại toàn bộ mô hình. Trong Mindful Companion, mỗi nhân cách được định nghĩa bởi một đoạn system prompt cụ thể, đóng vai trò định hướng hành vi của mô hình. Ví dụ, một prompt cho nhân cách nhà trị liệu có thể bao gồm những hướng dẫn như “trả lời một cách thấu cảm, không đánh giá, tập trung vào cảm xúc người dùng”, trong khi một prompt cho huấn luyện viên có thể mang tính hành động, thúc đẩy và định hướng mục tiêu.

Việc xây dựng các prompt này được thực hiện thủ công, dựa trên tham khảo các nguyên tắc trị liệu tâm lý, huấn luyện phát triển bản thân và phong cách trò chuyện đời thực. Mặc dù tất cả nhân cách sử dụng cùng một mô hình nền (như GPT-3.5 hay GPT-4), phản hồi đầu ra có sự khác biệt rõ rệt khi thay đổi prompt dẫn dắt. Đây chính là hiệu quả trực tiếp của prompt tuning trong điều chỉnh phong cách và nội dung phản hồi.

Thông qua cách tiếp cận này, Mindful Companion có thể cung cấp trải nghiệm trò chuyện linh hoạt và cá nhân hóa cao, trong khi vẫn duy trì chi phí thấp và dễ triển khai cho các dự án thực nghiệm hoặc sản phẩm nhỏ.


3. Kiến trúc và công nghệ sử dụng

Hệ thống được thiết kế theo kiến trúc tách biệt giữa giao diện người dùng (frontend) và dịch vụ xử lý (backend), giúp dễ dàng phát triển độc lập từng thành phần, thuận tiện cho việc triển khai và mở rộng.

  • Frontend: Sử dụng React kết hợp với Vite để đảm bảo hiệu suất cao trong quá trình phát triển. Giao diện được xây dựng bằng TypeScript và thiết kế với Tailwind CSS và Radix UI nhằm tối ưu tính thẩm mỹ và khả năng tuỳ biến.

  • Backend: Được phát triển bằng Python, sử dụng Flask làm framework chính. Flask-CORS được tích hợp để hỗ trợ giao tiếp an toàn giữa frontend và backend. Dịch vụ backend đảm nhận nhiệm vụ tiếp nhận câu hỏi từ người dùng, ghép nối với system prompt tương ứng và gửi yêu cầu đến mô hình ngôn ngữ (OpenAI hoặc OpenRouter), sau đó trả về phản hồi cho người dùng.

Các endpoint chính bao gồm:

  • /api/chat: gửi nội dung trò chuyện và nhận phản hồi từ mô hình.

  • /api/personas: truy xuất danh sách các nhân cách được hỗ trợ.

  • /api/models: liệt kê các mô hình có thể sử dụng.


4. Hướng dẫn triển khai

Để cài đặt và chạy thử hệ thống trong môi trường phát triển, người dùng cần chuẩn bị một số công cụ cơ bản:

Yêu cầu hệ thống

  • Node.js (phiên bản 18 trở lên)

  • Python 3.8 trở lên

  • Khóa API từ OpenAI hoặc OpenRouter

Cài đặt

# Cài đặt giao diện người dùng
cd frontend
npm install

# Cài đặt backend
cd ../backend
pip install -r requirements.txt

Khởi chạy hệ thống

# Chạy frontend tại cổng 8080
npm run dev

# Chạy backend tại cổng 5000
python app.py

Sau khi khởi chạy, người dùng có thể truy cập giao diện chatbot tại địa chỉ http://localhost:8080.


5. Tính mở rộng

Mindful Companion được thiết kế với mục tiêu mở rộng tối đa. Nhà phát triển có thể:

  • Thêm nhân cách mới bằng cách chỉnh sửa file personas.json để định nghĩa system prompt mới.

  • Bổ sung mô hình ngôn ngữ khác bằng cách cập nhật danh sách model và tích hợp endpoint tương ứng.

  • Tuỳ chỉnh giao diện hoặc mở rộng tính năng thông qua các component React có cấu trúc rõ ràng.

Nhờ kiến trúc tách lớp và modular, hệ thống có thể dễ dàng tích hợp vào các sản phẩm khác như nền tảng trị liệu số, ứng dụng học tập, hoặc các hệ thống trò chuyện giải trí.


6. Kết luận

Mindful Companion là một minh chứng rõ ràng cho tiềm năng của kỹ thuật prompt tuning trong việc cá nhân hóa hành vi mô hình ngôn ngữ mà không cần đến quá trình huấn luyện phức tạp. Thông qua việc tổ chức hệ thống hợp lý, cung cấp mã nguồn mở và tập trung vào trải nghiệm người dùng, dự án đã xây dựng được một nền tảng chatbot linh hoạt, mở rộng, và phù hợp với nhiều mục đích sử dụng khác nhau.

Dự án có thể được truy cập tại:
https://github.com/ChenHieu170600/Mindfull-Companion

Trong tương lai, nhóm phát triển có kế hoạch mở rộng thêm các nhân cách, đánh giá định lượng mức độ tương tác và so sánh hiệu quả giữa các mô hình khác nhau trong việc hỗ trợ hành vi người dùng đặc thù.

 

Published: 2025-05-01