Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Tổng quan

Cách thiết lập quy trình phát triển LibreChat hiệu quả.

Docker là phương thức cài đặt được ưu tiên cho hầu hết người dùng, nhưng việc phát triển LibreChat cục bộ nên sử dụng npm. Chạy ứng dụng trực tiếp trên máy của bạn sẽ mang lại phản hồi nhanh hơn, gỡ lỗi rõ ràng hơn và quyền truy cập trực tiếp vào các workspace của monorepo mà không cần phải xây dựng lại các container sau mỗi thay đổi.

Sử dụng chuỗi công cụ này để phát triển dựa trên npm:

Công cụPhiên bản
Node.jsv24.16.0
npmv11.16.0
MongoDBAtlas hoặc Community Server

Node 24 đáp ứng các yêu cầu về môi trường thực thi của LibreChat đối với khả năng tương tác CommonJS với các gói chỉ hỗ trợ ESM, WebCrypto và Fetch API. Nếu shell của bạn vẫn báo phiên bản Node cũ hơn, hãy chạy nvm use 24.16.0 từ thư mục lưu trữ LibreChat trước khi cài đặt các phụ thuộc.

Làm việc trong không gian làm việc phù hợp

LibreChat là một monorepo. Hãy chọn workspace nhỏ nhất sở hữu hành vi mà bạn đang thay đổi:

WorkspaceSử dụng cho
/packages/apiCác dịch vụ, bộ điều khiển (controller) TypeScript backend mới và logic máy chủ dùng chung
/apiTích hợp máy chủ Express cũ; giữ cho các thay đổi ở mức tối giản
/packages/data-schemasCác mô hình cơ sở dữ liệu, lược đồ (schema) và logic dùng chung cụ thể cho cơ sở dữ liệu
/packages/data-providerCác kiểu API dùng chung, endpoint, khóa truy vấn và các hàm dịch vụ dữ liệu
/clientMã nguồn ứng dụng React
/packages/clientCác tiện ích frontend dùng chung

Các lệnh hàng ngày

LệnhMục đích
npm run smart-reinstallCài đặt các phụ thuộc khi cần thiết và xây dựng các không gian làm việc đã biên dịch
npm run reinstallCài đặt sạch sau khi thay đổi phiên bản Node/npm hoặc khi trạng thái phụ thuộc không ổn định
npm run backend:devKhởi động backend với tính năng theo dõi tệp
npm run frontend:devKhởi động máy chủ phát triển frontend trên cổng 3090
npm run build:data-providerXây dựng lại mã data-provider dùng chung sau khi thay đổi API/kiểu dữ liệu
npm run buildXây dựng tất cả các không gian làm việc đã biên dịch thông qua Turborepo

Tài nguyên phát triển

Tài nguyên phát triển

Hướng dẫn này thế nào?