Bỏ qua, đến nội dung

Câu hỏi thường gặp (FAQ) — AI Knowledge Base

Cài đặt và cấu hình

Có cần vector database riêng không?

Không bắt buộc. Plugin hỗ trợ lưu vector trực tiếp trong PostgreSQL thông qua extension pgvector. Nếu database hiện tại là PostgreSQL, chỉ cần cài extension:

sql
CREATE EXTENSION IF NOT EXISTS vector;

Với quy mô lớn (hàng triệu vectors), có thể cân nhắc vector database chuyên dụng như Pinecone hoặc Weaviate.

Nên dùng embedding model nào?

ModelNhà cung cấpƯu điểmNhược điểm
text-embedding-3-smallOpenAICân bằng chi phí/chất lượngCần API key
text-embedding-3-largeOpenAIChất lượng cao nhấtChi phí gấp 5 lần
text-embedding-ada-002OpenAITương thích ngượcCũ hơn, kém hơn v3
Ollama embeddingsLocalMiễn phí, riêng tưChất lượng phụ thuộc model

Khuyến nghị: Bắt đầu với text-embedding-3-small — phù hợp hầu hết trường hợp sử dụng.

Plugin này khác gì AI Skills trong plugin-ai?

  • AI Knowledge Base: Quản lý tài liệu đầy đủ (upload, chunking, embedding, search)
  • AI Skills: Giao diện để gán knowledge base vào bot — là cầu nối giữa knowledge base và AI bot

Hai plugin bổ trợ nhau: Knowledge Base quản lý dữ liệu, AI Skills gắn kết với bot.

Sử dụng

Upload tài liệu nhưng bot trả lời sai?

Đây là vấn đề phổ biến nhất. Thử các bước sau:

  1. Kiểm tra tài liệu: Đảm bảo nội dung liên quan đến câu hỏi thực sự có trong tài liệu
  2. Giảm chunk size: Chunk nhỏ hơn (500–800) cho kết quả tìm kiếm chính xác hơn với câu hỏi cụ thể
  3. Tăng topK: Lấy nhiều kết quả hơn (10–15) để LLM có thêm ngữ cảnh
  4. Kiểm tra format file: PDF dạng scan (hình ảnh) cần OCR — nếu không có OCR, nội dung sẽ trống
  5. System prompt: Hướng dẫn bot ưu tiên thông tin từ knowledge base và trích dẫn nguồn

Có thể cập nhật tài liệu đã upload không?

Không hỗ trợ cập nhật trực tiếp. Quy trình cập nhật:

  1. Xoá tài liệu cũ (xoá luôn chunks + embeddings)
  2. Upload phiên bản mới
  3. Hệ thống tự động tạo lại chunks và embeddings

Làm sao biết tài liệu đã xử lý xong?

Xem trường status của tài liệu:

Trạng tháiÝ nghĩaHành động
processingĐang chunking + embeddingChờ hoàn tất
readySẵn sàng tìm kiếmCó thể sử dụng
failedXử lý lỗiKiểm tra log, thử upload lại

Nên tổ chức knowledge base như thế nào?

  • Theo chủ đề: "Nhân sự", "Sản phẩm", "Hỗ trợ kỹ thuật" — mỗi chủ đề một KB
  • Theo phòng ban: Bot nhân sự gán KB nhân sự, bot bán hàng gán KB sản phẩm
  • Tránh gộp tất cả tài liệu vào một KB — tìm kiếm kém chính xác, tốn token

Lỗi thường gặp

Lỗi "Embedding failed"

  • API key của LLM provider không có quyền sử dụng embedding model
  • Kiểm tra API key còn quota (billing credit)
  • Với OpenAI: đảm bảo key có quyền truy cập text-embedding-* models

Tìm kiếm không trả về kết quả

Nguyên nhânGiải pháp
Tài liệu chưa xử lý xong (processing)Chờ status chuyển sang ready
Câu hỏi không liên quan đến nội dungKiểm tra tài liệu có chứa thông tin cần tìm
TopK quá thấpTăng topK lên 10–15
Embedding model không phù hợpThử model khác (ví dụ: từ ada-002 lên text-embedding-3-small)

Tài liệu PDF không trích xuất được nội dung

  • PDF dạng scan (hình ảnh chụp) cần OCR để chuyển thành text
  • Kiểm tra file PDF có thể copy-paste text hay không — nếu không thì cần convert trước
  • PDF có password protection sẽ không đọc được — bỏ password trước khi upload