Bỏ qua, đến nội dung

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

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

Plugin hỗ trợ những LLM provider nào?

Các provider được đăng ký sẵn trong registerLLMProviders():

ProviderGhi chú
OpenAI (Responses API)GPT-4o, GPT-4, GPT-3.5 — provider phổ biến nhất
OpenAI (Completions API)API cũ hơn, tương thích với các wrapper
AnthropicClaude 3.5 Sonnet, Claude 3 Opus/Haiku
Google GenAIGemini Pro, Gemini Flash
DeepSeekDeepSeek Chat, DeepSeek Coder — chi phí thấp
DashScopeQwen (Alibaba Cloud)
OllamaChạy local (Llama, Mistral, CodeLlama...)
KimiMoonshot AI — hỗ trợ context dài

Ngoài ra, plugin có thể mở rộng thêm provider thông qua aiManager.registerLLMProvider().

Dùng Ollama có cần internet không?

Không. Ollama chạy hoàn toàn local trên server. Bạn cần:

  1. Cài đặt Ollama trên server (curl -fsSL https://ollama.ai/install.sh | sh)
  2. Tải model cần dùng (ollama pull llama3)
  3. Cấu hình provider trong plugin với Base URL = http://localhost:11434

Cần cấu hình gì cho biến môi trường?

Plugin không yêu cầu biến môi trường bắt buộc. Tất cả cấu hình (API key, model, ...) được quản lý qua giao diện Settings → AI. Tuy nhiên, bạn có thể đặt biến môi trường cho Ollama server nếu chạy trên host khác.

Làm sao thêm LLM provider mới (custom)?

Tạo plugin mới và đăng ký provider trong method load():

typescript
const aiPlugin = this.app.pm.get('ai');
aiPlugin.aiManager.registerLLMProvider('my-provider', {
  label: 'My Custom LLM',
  // ... cấu hình SDK
});

Sử dụng

Bot trả lời chậm, làm sao cải thiện?

  • Model lớn hơn = chậm hơn: GPT-4 chậm hơn GPT-4o-mini đáng kể
  • Kiểm tra kết nối mạng đến LLM provider (đặc biệt nếu server ở Việt Nam gọi API nước ngoài)
  • Giảm số tools gán cho bot — mỗi tool thêm context vào prompt
  • Dùng model nhỏ hơn cho các tác vụ đơn giản (GPT-4o-mini, Gemini Flash)
  • Stream response: Chat UI hỗ trợ streaming — người dùng thấy phản hồi ngay khi LLM bắt đầu sinh text

Làm sao cho bot hiểu về dữ liệu của công ty?

Có ba cách tiếp cận, có thể kết hợp:

  1. AI Skills (RAG): Gán knowledge base cho bot — bot tự động truy vấn tài liệu liên quan khi trả lời
  2. AI Tools: Tạo tools cho bot gọi API lấy dữ liệu real-time (ví dụ: tra cứu đơn hàng, kiểm tra tồn kho)
  3. System Prompt: Viết system prompt rõ ràng về ngữ cảnh, ngôn ngữ, phong cách trả lời

Bot có nhớ nội dung hỏi trước không?

Có. Mỗi conversation lưu toàn bộ lịch sử tin nhắn. Bot nhận lịch sử khi xử lý câu hỏi mới (thông qua LangChain checkpoints). Tạo conversation mới để bắt đầu cuộc trò chuyện trống.

Builder AI (Fronta, Nero, Dara) khác gì bot thường?

Builder AI là bot có quyền đặc biệt: coding, thay đổi schema, tạo/sửa UI. Chúng chỉ được gán cho role admin khi tạo mới. Bot thường được gán cho tất cả role có allowNewAiBot = true.

Roles mới có tự động được truy cập bot không?

Có. Khi tạo role mới, plugin tự động gán tất cả AI bots (trừ Builder AI) cho role đó, miễn allowNewAiBot = true (mặc định).

Lỗi thường gặp

Lỗi "API key invalid"

  • Kiểm tra API key đúng và chưa hết hạn
  • Với OpenAI: kiểm tra billing còn credit trên platform.openai.com
  • Với Anthropic: kiểm tra workspace có quyền truy cập model

Lỗi "Model not found"

  • Model không khả dụng với API key hiện tại
  • Kiểm tra tên model viết đúng (phân biệt hoa thường)
  • Một số model yêu cầu đăng ký riêng (ví dụ GPT-4 cần billing tier ≥ 1)

Bot không gọi được tools

  • Kiểm tra tools đã được gán cho bot trong phần Settings → AI → Bots → Edit
  • Không phải model nào cũng hỗ trợ function calling — cần GPT-4, Claude 3+ hoặc model tương đương
  • Xem log server (app.log) để biết chi tiết lỗi khi gọi tool
  • Kiểm tra MCP server (nếu dùng MCP tools) có đang chạy và truy cập được

Lỗi "LangChain checkpoint" trong log

Plugin tự động dọn checkpoints cũ hơn 48 giờ qua cron job lúc 2:00 AM. Nếu thấy lỗi langChain checkpoint clean job fail trong log, kiểm tra:

  • Database connection ổn định
  • Bảng lc-checkpoints, lc-checkpoint-blobs, lc-checkpoint-writes tồn tại
  • Disk space đủ cho các thao tác cleanup