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

Các Agent

Tìm hiểu cách tạo, tùy chỉnh và tận dụng các AI Agents của LibreChat - một framework mạnh mẽ để xây dựng các trợ lý AI tùy chỉnh với bất kỳ nhà cung cấp mô hình nào.

Agents: Xây dựng trợ lý AI tùy chỉnh

Tính năng AI Agents của LibreChat cung cấp một khung linh hoạt để tạo các trợ lý AI tùy chỉnh được vận hành bởi nhiều nhà cung cấp mô hình khác nhau.

Tính năng này tương tự như Assistants API của OpenAI và GPTs của ChatGPT, nhưng với khả năng hỗ trợ mô hình rộng hơn và triển khai không cần mã nguồn (no-code), cho phép bạn xây dựng các trợ lý tinh vi với những khả năng chuyên biệt.

Bắt đầu

Để tạo một agent mới, hãy chọn "Agents" từ menu endpoint và mở bảng Agent Builder nằm trong Side Panel.

Agents - Endpoints Menu

Biểu mẫu tạo bao gồm:

  • Avatar: Tải lên một avatar tùy chỉnh để cá nhân hóa tác nhân của bạn
  • Name: Chọn một cái tên đặc biệt cho tác nhân của bạn
  • Mô tả: Các chi tiết tùy chọn về mục đích của tác nhân (agent) của bạn
  • Instructions: Các hướng dẫn hệ thống xác định hành vi của tác nhân (agent) của bạn
  • Model: Chọn từ các nhà cung cấp và model khả dụng

Các agent hiện có có thể được chọn từ menu thả xuống ở đầu Side Panel.

  • Cũng có thể đề cập bằng cách sử dụng "@" trong ô nhập liệu trò chuyện.

Agents - Mention

Cấu hình Model

Giao diện tham số mô hình cho phép tinh chỉnh các phản hồi của tác nhân (agent) của bạn:

  • Temperature (thang đo 0-1 cho độ sáng tạo của phản hồi)
  • Số token ngữ cảnh tối đa
  • Số lượng token đầu ra tối đa
  • Các cài đặt bổ sung dành riêng cho nhà cung cấp

Khả năng của Agent

Lưu ý: Tất cả các khả năng có thể được bật/tắt thông qua tệp cấu hình librechat.yaml. Xem docs/configuration/librechat_yaml/object_structure/agents#capabilities để biết thêm thông tin.

Code Interpreter

Khi được bật, tính năng Code Interpreter cho phép agent của bạn:

  • Thực thi mã trong nhiều ngôn ngữ, bao gồm:
    • Python, JavaScript, TypeScript, Go, C, C++, Java, PHP, Rust và Fortran
  • Xử lý tệp tin một cách an toàn thông qua API Code Interpreter của LibreChat
  • Chạy mã mà không cần thiết lập cục bộ, cấu hình hoặc triển khai sandbox
  • Xử lý việc tải lên và tải xuống tệp một cách liền mạch
  • Thông tin thêm về Code Interpreter API
    • Được vận hành bởi dịch vụ code-interpreter mã nguồn mở (tự lưu trữ)

Tính năng File Search cho phép:

  • Tính năng RAG (Retrieval-Augmented Generation)
  • Tìm kiếm ngữ nghĩa trên các tài liệu đã tải lên
  • Các phản hồi nhận biết ngữ cảnh dựa trên nội dung tệp
  • Hỗ trợ đính kèm tệp ở cả cấp độ tác nhân (agent) và luồng trò chuyện (chat thread)

File Context

Tính năng File Context cho phép tác nhân của bạn lưu trữ văn bản được trích xuất từ các tệp tin như một phần trong các chỉ dẫn hệ thống (system instructions) của nó:

  • Trích xuất văn bản trong khi vẫn duy trì cấu trúc và định dạng tài liệu
  • Xử lý các bố cục phức tạp bao gồm văn bản nhiều cột và nội dung hỗn hợp
  • Xử lý bảng, phương trình và các nội dung chuyên biệt khác
  • Làm việc với nội dung đa ngôn ngữ
  • Văn bản được lưu trữ trong các hướng dẫn của agent trong cơ sở dữ liệu
  • Không yêu cầu dịch vụ OCR - Mặc định sử dụng phân tích cú pháp văn bản với các phương thức dự phòng
  • Được tăng cường bởi OCR - Nếu OCR được cấu hình, chất lượng trích xuất sẽ được cải thiện đối với hình ảnh và tài liệu được quét
  • Sử dụng cùng logic xử lý như "Tải lên dưới dạng văn bản": OCR > STT > phân tích cú pháp văn bản
  • Thông tin thêm về cấu hình OCR

Lưu ý: File Context bao gồm văn bản được trích xuất trong các hướng dẫn hệ thống của agent. Đối với các câu hỏi về tài liệu tạm thời trong các cuộc trò chuyện cá nhân, hãy sử dụng Upload as Text từ khung chat thay thế.

Model Context Protocol (MCP)

MCP là một giao thức mở giúp tiêu chuẩn hóa cách các ứng dụng cung cấp ngữ cảnh cho các Mô hình Ngôn ngữ Lớn (LLM), đóng vai trò như một bộ chuyển đổi phổ quát cho các công cụ AI và nguồn dữ liệu.

Để biết thêm thông tin, hãy xem tài liệu về MCP.

Các Agent với MCP Tools

  1. Cấu hình các máy chủ MCP trong tệp librechat.yaml của bạn
  2. Khởi động lại LibreChat để khởi tạo các kết nối
  3. Tạo hoặc chỉnh sửa một agent
  4. Nhấp vào nút "Add Tools" trong bảng Agent Builder để mở Tools Dialog như hình bên dưới
  5. Chọn (các) MCP server bạn muốn thêm - mỗi server sẽ xuất hiện dưới dạng một mục riêng lẻ
  6. Lưu các thay đổi của bạn vào agent

Trong ví dụ này, chúng tôi đã thêm Spotify MCP server vào một agent.

Agents - MCP

Quản lý các MCP Tools

Sau khi một MCP server được thêm vào một agent, bạn có thể tinh chỉnh những công cụ cụ thể nào sẽ khả dụng:

  • Sau khi thêm một MCP server, hãy mở rộng nó để xem tất cả các công cụ khả dụng
  • Chọn/bỏ chọn các công cụ riêng lẻ khi cần
  • Ví dụ, MCP server của Spotify cung cấp khoảng 20 công cụ (tìm kiếm, điều khiển phát nhạc, quản lý danh sách phát, v.v.)
  • Khả năng kiểm soát chi tiết này cho phép bạn giới hạn các tác nhân (agents) chỉ sử dụng những công cụ mà chúng cần.

Agents - MCP Tools

Tìm hiểu thêm:

Các công cụ bị trì hoãn (Deferred Tools)

Các công cụ trì hoãn (deferred tools) cho phép các agent truy cập vào nhiều MCP tools mà không cần phải tải tất cả chúng vào ngữ cảnh LLM ngay từ đầu. Thay vào đó, các công cụ trì hoãn có thể được khám phá trong thời gian chạy thông qua cơ chế Tool Search.

Điều này đặc biệt hữu ích khi một agent có quyền truy cập vào nhiều MCP server với hàng tá công cụ—việc tải tất cả chúng sẽ tiêu tốn một phần lớn cửa sổ ngữ cảnh và làm giảm chất lượng phản hồi.

Cách thức hoạt động:

  • Các công cụ được đánh dấu là "deferred" sẽ bị loại trừ khỏi ngữ cảnh LLM ban đầu.
  • Một công cụ ToolSearch được tự động thêm vào, cho phép LLM khám phá và tải các công cụ bị trì hoãn (deferred tools) theo yêu cầu.
  • Sau khi được phát hiện, công cụ sẽ khả dụng cho phần còn lại của cuộc trò chuyện

Cấu hình các công cụ trì hoãn (deferred tools):

  1. Mở Agent Builder và thêm các công cụ MCP
  2. Nhấp vào menu thả xuống trên bất kỳ công cụ MCP nào
  3. Bật "Defer Loading" (Hoãn tải) — các công cụ bị hoãn sẽ hiển thị biểu tượng đồng hồ

Lưu ý: Tính năng deferred_tools được bật theo mặc định. Bạn có thể bật/tắt tính năng này thông qua cấu hình agents trong librechat.yaml.

Gọi công cụ theo chương trình (Programmatic Tool Calling)

Programmatic Tool Calling (PTC) cho phép các tác nhân thực thi các MCP tool đã chọn từ bên trong sandbox Code Interpreter thay vì gọi trực tiếp từng tool từ mô hình. Mô hình nhận được một orchestration tool được hỗ trợ bởi Code Interpreter, viết mã trong sandbox để gọi các hàm tool đã tạo, đồng thời có thể sử dụng vòng lặp, câu lệnh điều kiện, thử lại và xử lý kết quả trước khi trả về câu trả lời.

Điều này hữu ích cho các quy trình công cụ nhiều bước như truy vấn nhiều tài nguyên, phân trang kết quả, so sánh đầu ra hoặc chuyển đổi phản hồi của công cụ trước khi tác nhân giải thích chúng.

Cấu hình các công cụ lập trình:

  1. Bật cả programmatic_toolsexecute_code trong phần capabilities của agents trong librechat.yaml.
  2. Bật Code Interpreter trên agent.
  3. Thêm các công cụ MCP, mở rộng một máy chủ MCP và bật/tắt Programmatic cho từng công cụ riêng lẻ hoặc cho toàn bộ máy chủ. Các công cụ Programmatic sẽ hiển thị biểu tượng mã nguồn.

Lưu ý: programmatic_tools là tính năng tùy chọn và không được bao gồm trong danh sách khả năng mặc định của các agent. PTC cũng yêu cầu triển khai Code Interpreter với thành phần Tool Call Server. Chỉ các công cụ đã đăng ký cho agent mới có thể được gọi từ sandbox; các lệnh gọi công cụ chưa đăng ký sẽ bị từ chối.

Skills

Skills cho phép các agent tải các hướng dẫn có thể tái sử dụng từ các định nghĩa SKILL.md. Chúng có thể được chọn thủ công từ cuộc trò chuyện bằng $, được model tự động khám phá thông qua danh mục skill, hoặc luôn được áp dụng trong mọi lượt phản hồi.

Để biết chi tiết về cách soạn thảo, gọi thực thi và kiểm soát truy cập, hãy xem Skills.

Artifacts

Tính năng Artifacts cho phép tác nhân của bạn tạo và hiển thị nội dung tương tác:

  • Tạo các thành phần React, mã HTML và sơ đồ Mermaid
  • Hiển thị nội dung trong một cửa sổ giao diện riêng biệt để tăng độ rõ ràng và khả năng tương tác
  • Cấu hình các hướng dẫn cụ thể cho artifact ở cấp độ agent
  • Thông tin thêm về Artifacts

Khi được bật, các hướng dẫn bổ sung dành riêng cho việc sử dụng artifacts sẽ được thêm vào theo mặc định. Các tùy chọn bao gồm:

  • Enable shadcn/ui instructions: Thêm hướng dẫn sử dụng các thành phần shadcn/ui (một bộ sưu tập các thành phần có thể tái sử dụng được xây dựng bằng Radix UI và Tailwind CSS)
  • Custom Prompt Mode: Khi được bật, system prompt mặc định của artifacts sẽ không được bao gồm, cho phép bạn cung cấp các hướng dẫn tùy chỉnh của riêng mình

Cấu hình artifacts ở cấp độ agent là phương pháp được ưu tiên, vì nó cho phép kiểm soát chi tiết hơn so với cấu hình cũ trên toàn ứng dụng.

Nếu bạn bật Custom Prompt Mode, bạn nên bao gồm tối thiểu định dạng artifact cơ bản trong các hướng dẫn của mình.

Dưới đây là một ví dụ đơn giản về các hướng dẫn tối thiểu cần thiết:

When creating content that should be displayed as an artifact, use the following format:

:::artifact{identifier="unique-identifier" type="mime-type" title="Artifact Title"}

```
Your artifact content here
```

:::

For the type attribute, use one of:

- "text/html" for HTML content
- "application/vnd.mermaid" for Mermaid diagrams
- "application/vnd.react" for React components
- "image/svg+xml" for SVG images

Công cụ

Các Agent cũng có thể được tăng cường bằng nhiều công cụ tích hợp sẵn:

  • OpenAI Image Tools: Tạo và chỉnh sửa hình ảnh sử dụng GPT-Image-1
  • Gemini Image Tools: Tạo hình ảnh và chỉnh sửa theo ngữ cảnh hình ảnh sử dụng các mô hình hình ảnh Gemini
  • DALL-E-3: Tạo hình ảnh từ mô tả văn bản
  • Stable Diffusion / Flux: Tạo hình ảnh từ văn bản
  • Wolfram: Các khả năng tính toán và toán học
  • OpenWeather: Truy xuất dữ liệu thời tiết
  • Google Search: Truy cập vào chức năng tìm kiếm web
  • Calculator: Các phép tính toán học
  • Tavily Search: API tìm kiếm nâng cao với khả năng tích hợp đa dạng nguồn dữ liệu
  • Azure AI Search: Truy xuất thông tin từ các chỉ mục Azure AI Search
  • Traversaal: Một API tìm kiếm mạnh mẽ dành cho các LLM Agent

Tạo một Agent với các Công cụ Hình ảnh

  1. Thêm thông tin xác thực công cụ hình ảnh vào .env, ví dụ như IMAGE_GEN_OAI_API_KEY cho OpenAI Image Tools.
  2. Khởi động lại LibreChat để các biến môi trường mới được tải.
  3. Chọn Agents từ menu endpoint.
  4. Mở Agent Builder từ bảng điều khiển bên cạnh và tạo hoặc chỉnh sửa một agent.
  5. Mở danh sách Tools của agent, chọn OpenAI Image Tools, Gemini Image Tools, DALL-E-3, Stable Diffusion, hoặc Flux, sau đó lưu agent lại.
  6. Bắt đầu một cuộc trò chuyện với agent đó và yêu cầu nó tạo hoặc chỉnh sửa hình ảnh.

Để xem hướng dẫn thiết lập hình ảnh đầy đủ, bao gồm các biến mô hình như IMAGE_GEN_OAI_MODEL, hãy xem Tạo & Chỉnh sửa Hình ảnh.

Actions

Với tính năng Actions, bạn có thể tạo các công cụ một cách linh hoạt từ OpenAPI specs để thêm vào các Agent của mình.

Agents - Endpoints Menu

Nhấp vào nút bên trên sẽ mở ra một biểu mẫu nơi bạn có thể nhập URL OpenAPI spec và tạo một action:

Agents - Endpoints Menu

  • Các Actions có thể được vô hiệu hóa bằng cách sử dụng tệp cấu hình librechat.yaml:
  • Các tên miền riêng lẻ có thể được đưa vào danh sách trắng cho các hành động của tác nhân (agent):
  • Lưu ý rằng bạn có thể thêm cờ 'x-strict': true ở cấp độ thao tác (operation-level) trong OpenAPI spec cho các actions. Nếu sử dụng một mô hình OpenAI hỗ trợ tính năng này, nó sẽ tự động tạo các lệnh gọi hàm (function calls) với chế độ 'strict' được bật.

Chuỗi tác nhân (Agent Chain)

Tính năng Agent Chain cho phép triển khai phương pháp Mixture-of-Agents (MoA), giúp bạn tạo ra một chuỗi các agent hoạt động cùng nhau:

  • Tạo chuỗi các tác nhân chuyên biệt cho các tác vụ phức tạp
  • Mỗi agent trong chuỗi đều có thể truy cập các đầu ra từ các agent trước đó
  • Cấu hình số bước tối đa cho chuỗi tác nhân (agent chain)
  • Lưu ý: Truy cập tính năng này từ bảng Advanced Settings trong Agent Builder
  • Lưu ý: Tính năng này hiện đang trong giai đoạn thử nghiệm (beta) và có thể sẽ thay đổi trong tương lai.
    • Số lượng tác nhân tối đa có thể được liên kết hiện tại là 10, nhưng điều này có thể được tùy chỉnh trong tương lai
Chuỗi tác nhân

Tính năng này giới thiệu kiến trúc Mixture-of-Agents theo lớp vào LibreChat, trong đó mỗi agent lấy tất cả các đầu ra từ các agent ở lớp trước làm thông tin bổ trợ để tạo phản hồi, như được mô tả trong bài báo "Mixture-of-Agents" cùng tên.

Subagents

Subagents cho phép một agent ủy quyền một tác vụ tập trung cho một tiến trình con biệt lập. Tiến trình con này có cửa sổ ngữ cảnh và luồng thực thi công cụ riêng, sau đó trả về một kết quả cô đọng cho tiến trình cha thay vì làm đầy ngữ cảnh của tiến trình cha bằng mọi bước trung gian.

Subagents khác với Agent Chain: các chuỗi chạy điều phối nhiều agent như những người tham gia đồ thị, trong khi subagents được tạo ra bởi một agent dưới dạng một lời gọi công cụ để ủy quyền theo phạm vi. Để biết cách thiết lập và giới hạn, hãy xem Subagents.

Cài đặt nâng cao

Các cài đặt nâng cao cho agent của bạn (nằm trong chế độ xem Advanced của biểu mẫu Agent) bên ngoài phần "capabilities."

Số bước tối đa của Agent

Cài đặt này cho phép bạn giới hạn số bước mà một agent có thể thực hiện trong một "run", đề cập đến vòng lặp của agent trước khi đưa ra phản hồi cuối cùng.

Nếu không được cấu hình, giá trị mặc định là 25 bước, nhưng bạn có thể điều chỉnh tùy theo nhu cầu của mình. Đối với quản trị viên, bạn có thể đặt giá trị mặc định toàn cục cũng như giá trị tối đa toàn cục trong tệp librechat.yaml.

Một "bước" (step) đề cập đến một yêu cầu API AI hoặc một vòng sử dụng công cụ (1 hoặc nhiều công cụ, tùy thuộc vào số lượng lệnh gọi công cụ mà LLM cung cấp từ một yêu cầu duy nhất).

Một phản hồi đơn lẻ, không sử dụng công cụ được tính là 1 bước. Một vòng sử dụng công cụ đơn lẻ thường bao gồm 3 bước:

  1. Yêu cầu API -> 2. Sử dụng công cụ (1 hoặc nhiều công cụ) -> 3. Yêu cầu API tiếp theo

Quản lý tệp

Các Agent hỗ trợ nhiều cách để làm việc với tệp:

Trong Giao diện Trò chuyện

Khi trò chuyện với một agent, bạn có bốn tùy chọn tải lên:

  1. Tải lên hình ảnh

    • Tải lên hình ảnh để hỗ trợ tính năng vision gốc của model
    • Gửi hình ảnh trực tiếp đến nhà cung cấp mô hình
  2. Tải lên dưới dạng văn bản (yêu cầu khả năng context)

    • Trích xuất và bao gồm toàn bộ nội dung tài liệu trong cuộc trò chuyện
    • Sử dụng phân tích cú pháp văn bản theo mặc định; được tăng cường bởi OCR nếu được cấu hình
    • Nội dung chỉ tồn tại trong cuộc trò chuyện hiện tại
    • Xem Upload as Text
  3. Tải lên để Tìm kiếm Tệp (yêu cầu khả năng file_search, đã được bật)

    • Sử dụng tìm kiếm ngữ nghĩa (RAG) với các kho lưu trữ vector
    • Trả về các đoạn dữ liệu liên quan thông qua việc sử dụng công cụ
    • Tối ưu cho các tài liệu lớn/nhiều tệp tin
    • Không tối ưu cho dữ liệu có cấu trúc (CSV, Excel, JSON, v.v.)
  4. Tải lên cho Code Interpreter (yêu cầu bật tính năng execute_code)

    • Thêm tệp vào môi trường trình thông dịch mã (code interpreter)
    • Tối ưu cho dữ liệu có cấu trúc (CSV, Excel, JSON, v.v.)
    • Thông tin thêm về Code Interpreter

Trong Agent Builder

Khi cấu hình một agent, bạn có thể đính kèm các tệp tin theo những danh mục khác nhau:

  1. Tải lên hình ảnh: Đối với nội dung trực quan mà tác nhân có thể tham chiếu
  2. Tải lên Tìm kiếm Tệp: Tài liệu cho các khả năng RAG
  3. Code Interpreter Upload: Các tệp tin để xử lý mã
  4. File Context: Các tài liệu với văn bản đã được trích xuất để bổ sung cho hướng dẫn của tác nhân (agent)

File Context sử dụng khả năng context và hoạt động giống hệt như "Upload as Text" - nó sử dụng tính năng phân tích văn bản theo mặc định và được tăng cường bởi OCR khi được cấu hình. Văn bản được trích xuất tại thời điểm tải lên và lưu trữ trong các hướng dẫn của tác nhân (agent). Điều này rất lý tưởng để cung cấp cho các tác nhân kiến thức bền vững từ tài liệu, tệp PDF, tệp mã nguồn hoặc hình ảnh có chứa văn bản.

Thứ tự ưu tiên xử lý: OCR > STT > phân tích văn bản (tương tự như Tải lên dưới dạng văn bản)

Lưu ý: Văn bản được trích xuất sẽ được đưa vào làm một phần trong các hướng dẫn hệ thống của tác nhân (agent).

Chia sẻ và Quyền truy cập

Các Agent sử dụng hệ thống access control chi tiết của LibreChat. Mỗi agent đều có Danh sách kiểm soát truy cập (ACL) riêng và có thể được chia sẻ với các người dùng, nhóm, vai trò cụ thể hoặc công khai, với mỗi tùy chọn ở một cấp độ quyền hạn được chọn.

Vai trò truy cập

Khi chia sẻ một agent, người được cấp quyền sẽ được chỉ định một trong ba vai trò sau:

Vai tròNhững gì người được cấp quyền có thể làm
ViewerSử dụng agent trong các cuộc trò chuyện; không thể mở trình tạo hoặc xem hướng dẫn, công cụ hoặc tệp đính kèm
EditorXem + sửa đổi hướng dẫn, model, công cụ và tệp của agent
OwnerToàn quyền kiểm soát: xem, chỉnh sửa, xóa và chia sẻ lại agent

Tác giả gốc và quản trị viên luôn giữ toàn quyền kiểm soát bất kể ACL.

Chia sẻ một Agent

  1. Mở agent trong Agent Builder
  2. Nhấp vào nút Share ở chân trang (hiển thị khi bạn là tác giả, quản trị viên hoặc đã được cấp quyền SHARE đối với agent cụ thể đó)
  3. Tìm kiếm người dùng, nhóm hoặc vai trò trong trình chọn người dùng và gán vai trò cho từng đối tượng
  4. Tùy chọn bật Public để làm cho tác nhân hiển thị với mọi người trên instance (yêu cầu quyền tính năng SHARE_PUBLIC)

Để biết chi tiết đầy đủ về các principal, bit quyền và cách ACL kết hợp với các quyền tính năng dựa trên vai trò, hãy xem Access Control.

Kiểm soát của Quản trị viên

Quản trị viên có quyền truy cập vào các cài đặt quyền toàn cục trong giao diện người dùng trình tạo tác nhân (agent builder UI):

  • Bật/tắt chia sẻ tác nhân (agent) cho tất cả người dùng
  • Kiểm soát quyền sử dụng tác nhân (agent)
  • Quản lý quyền tạo tác nhân
  • Cấu hình các cài đặt trên toàn nền tảng

Tài khoản đầu tiên được tạo cho instance của bạn là quản trị viên. Nếu bạn cần thêm quản trị viên bổ sung, bạn có thể truy cập MongoDB và cập nhật hồ sơ của người dùng:

db.users.updateOne(
  { email: 'USER_EMAIL_ADDRESS' },
  { $set: { role: 'ADMIN' } }
)

Việc sử dụng các agent cho tất cả người dùng cũng có thể bị vô hiệu hóa thông qua cấu hình, thêm thông tin.

Các quyền ở cấp độ tính năng (ai có thể sử dụng, tạo, chia sẻ hoặc chia sẻ công khai các agent) được quản lý từ Bảng điều khiển quản trị LibreChat trên mỗi vai trò, bao gồm cả các vai trò tùy chỉnh. Khối interface.agents trong librechat.yaml vẫn có thể thiết lập các giá trị mặc định cho vai trò USER tích hợp sẵn khi khởi động, nhưng bảng điều khiển quản trị là cách được khuyến nghị để chỉnh sửa chúng trong tương lai.

Chia sẻ ở cấp người dùng

Người dùng cá nhân có thể:

  • Chia sẻ các agent của họ với những người dùng, nhóm hoặc vai trò cụ thể (nếu SHARE được bật cho vai trò của họ)
  • Làm cho các agent hiển thị với mọi người trên instance (nếu SHARE_PUBLIC được bật)
  • Cấp cho mỗi người nhận một cấp độ truy cập khác nhau (Viewer / Editor / Owner)
  • Chia sẻ lại hoặc thu hồi quyền truy cập bất kỳ lúc nào từ hộp thoại chia sẻ

Ghi chú

  • Các Instructions, model parameters, attached files và tools chỉ được hiển thị cho người dùng nếu họ có quyền chỉnh sửa.
    • Một agent có thể làm rò rỉ bất kỳ dữ liệu đính kèm nào, dù là hướng dẫn hay tệp tin, thông qua cuộc trò chuyện, vì vậy hãy đảm bảo các hướng dẫn của bạn đủ mạnh mẽ để chống lại điều này trước khi cấp quyền Editor/Owner hoặc công khai agent đó.
  • Chỉ những tác giả gốc, quản trị viên và người được cấp quyền sở hữu (Owner) mới có thể xóa các agent được chia sẻ.
  • Các Agent là riêng tư đối với tác giả trừ khi được chia sẻ

Cấu hình tùy chọn

LibreChat cho phép quản trị viên cấu hình việc sử dụng các agent thông qua tệp librechat.yaml:

  • Vô hiệu hóa Agents cho tất cả người dùng (bao gồm cả quản trị viên): thêm thông tin
  • Tùy chỉnh các khả năng của tác nhân bằng cách sử dụng: thêm thông tin

Các phương pháp tốt nhất

  • Cung cấp các hướng dẫn rõ ràng, cụ thể cho tác nhân (agent) của bạn
  • Hãy cân nhắc kỹ lưỡng những công cụ nào là cần thiết cho trường hợp sử dụng của bạn
  • Sắp xếp các tệp một cách phù hợp vào bốn danh mục tải lên
  • Xem lại cài đặt quyền trước khi chia sẻ các agent
  • Kiểm tra kỹ tác nhân của bạn trước khi triển khai cho những người dùng khác

Tóm tắt

  1. Chọn "Agents" từ menu thả xuống của endpoint
  2. Mở bảng điều khiển Agent Builder
  3. Điền các thông tin chi tiết bắt buộc của agent
  4. Cấu hình các khả năng mong muốn (Code Interpreter, File Search, File Context, v.v.)
  5. Thêm các công cụ và tệp cần thiết
  6. Thiết lập quyền chia sẻ nếu muốn
  7. Tạo và bắt đầu sử dụng agent của bạn

Khi trò chuyện với các agent, bạn có thể:

  • Sử dụng "Upload as Text" để bao gồm toàn bộ nội dung tài liệu vào các cuộc trò chuyện (mặc định là phân tích văn bản, được tăng cường bởi OCR)
  • Sử dụng "Upload for File Search" để thực hiện tìm kiếm ngữ nghĩa trên các tài liệu (yêu cầu RAG API)
  • Thêm tệp vào "File Context" của agent để bao gồm toàn bộ nội dung của tệp như một phần trong hướng dẫn hệ thống của agent.

Yêu cầu di chuyển (v0.8.0-rc3+)

Quan trọng: Yêu cầu di chuyển quyền của Agent

Bắt đầu từ phiên bản v0.8.0-rc3, LibreChat sử dụng hệ thống phân quyền dựa trên Danh sách kiểm soát truy cập (ACL) mới cho các agent. Nếu bạn đang nâng cấp từ phiên bản cũ hơn, bạn phải chạy quá trình di chuyển quyền của agent để các agent hiện có vẫn có thể truy cập được.

Những gì quá trình di chuyển thực hiện

Việc di chuyển quyền của agent sẽ chuyển đổi các agent của bạn từ mô hình sở hữu đơn giản sang hệ thống dựa trên ACL tinh vi với nhiều cấp độ quyền:

  • OWNER: Toàn quyền kiểm soát đối với agent
  • EDITOR: Có thể xem và sửa đổi tác nhân (agent)
  • VIEWER: Quyền truy cập chỉ đọc vào agent

Nếu không thực hiện quá trình di chuyển này, các agent hiện có sẽ không thể truy cập được thông qua các endpoint API mới có hỗ trợ quyền truy cập.

Chạy quá trình di chuyển dữ liệu

Chọn lệnh phù hợp dựa trên phương thức triển khai của bạn:

1. Đối với docker-compose.yml mặc định (nếu bạn sử dụng docker compose up để khởi động ứng dụng):

Xem trước các thay đổi (chạy thử):

docker compose exec api npm run migrate:agent-permissions:dry-run

Thực thi di chuyển:

docker compose exec api npm run migrate:agent-permissions

Kích thước lô tùy chỉnh (cho các tập dữ liệu lớn):

docker compose exec api npm run migrate:agent-permissions:batch

2. Đối với deploy-compose.yml

Nếu bạn đã làm theo Hướng dẫn Docker trên Ubuntu:

Xem trước các thay đổi (chạy thử):

docker exec -it LibreChat-API /bin/sh -c "cd .. && npm run migrate:agent-permissions:dry-run"

Thực thi di chuyển:

docker exec -it LibreChat-API /bin/sh -c "cd .. && npm run migrate:agent-permissions"

Kích thước lô tùy chỉnh (cho các tập dữ liệu lớn):

docker exec -it LibreChat-API /bin/sh -c "cd .. && npm run migrate:agent-permissions:batch"

3. Đối với phát triển cục bộ (từ thư mục gốc của dự án):

Xem trước các thay đổi (chạy thử):

npm run migrate:agent-permissions:dry-run

Thực thi di chuyển:

npm run migrate:agent-permissions

Kích thước lô tùy chỉnh (cho các tập dữ liệu lớn):

npm run migrate:agent-permissions:batch

Điều gì xảy ra trong quá trình di chuyển dữ liệu

  • Private Agents: Chỉ người tạo mới có thể truy cập (nhận quyền OWNER)
  • Shared Agents: Nếu một agent đã được chia sẻ trước đó, nó sẽ nhận được các mục ACL thích hợp dưới dạng Public Agent (được chia sẻ cho tất cả người dùng)
  • Phát hiện hệ thống: LibreChat tự động phát hiện các tác nhân (agent) chưa được di chuyển khi khởi động và hiển thị cảnh báo

Bạn có thể điều chỉnh quyền của tác nhân (agent) thu được thông qua giao diện người dùng Agent Builder.

Lưu ý

Quy trình di chuyển tương tự cũng áp dụng cho các prompt. Nếu bạn cũng có các prompt hiện có, hãy chạy quá trình di chuyển quyền của prompt bằng cách sử dụng các lệnh tương tự nhưng thay thế agent bằng prompt trong tên lệnh.

Agents API (Beta)

Các agent của LibreChat cũng có thể được truy cập theo chương trình thông qua API, cho phép các ứng dụng và tập lệnh bên ngoài tương tác với các agent của bạn bằng cách sử dụng các SDK tương thích với OpenAI hoặc định dạng Open Responses.

Xem tài liệu Agents API để biết chi tiết về cách thiết lập và sử dụng.

Bước tiếp theo là gì?

Các Agent trong LibreChat mở ra một kỷ nguyên mới cho ứng dụng, nơi các quy trình trong tương lai có thể được tinh giản thông qua các Agent cho những tác vụ và luồng công việc cụ thể trong suốt trải nghiệm của bạn với LibreChat.

Các bản cập nhật trong tương lai sẽ bao gồm:

  • Các cải tiến chung cho trải nghiệm Agent hiện tại
  • Điều phối đa tác nhân cho các quy trình làm việc phức tạp
  • Khả năng tùy chỉnh các tác nhân cho nhiều chức năng khác nhau: đặt tiêu đề (đặt tên cho luồng trò chuyện), quản lý bộ nhớ (ngữ cảnh/lịch sử người dùng) và tăng cường câu lệnh (hỗ trợ/dự đoán đầu vào)
  • Nhiều công cụ hơn, các tham số công cụ có thể cấu hình, tạo công cụ động.

Hơn nữa, bản cập nhật này giới thiệu một mô hình mới cho LibreChat, vì kiến trúc nền tảng của nó mang lại sự làm mới rất cần thiết cho ứng dụng, tối ưu hóa cả trải nghiệm người dùng lẫn hiệu suất tổng thể của ứng dụng.

Để làm nổi bật một tối ưu hóa đáng chú ý, một quá trình tạo AI với khoảng 1000 token sẽ truyền tải khoảng 1 MB dữ liệu khi sử dụng các endpoint truyền thống (tại thời điểm viết bài này, bất kỳ tùy chọn endpoint nào ngoài Agents và AWS Bedrock).

Khi sử dụng một agent, cùng một quá trình tạo nội dung sẽ chỉ truyền tải khoảng 52 kb dữ liệu, giảm 95% lượng dữ liệu truyền tải, giúp giảm đáng kể tải trọng lên máy chủ và thiết bị của người dùng.


AI Agents trong LibreChat cung cấp một cách mạnh mẽ để tạo ra các trợ lý chuyên biệt mà không cần kiến thức lập trình, đồng thời vẫn duy trì sự linh hoạt để làm việc với các mô hình và nhà cung cấp AI ưa thích của bạn.


#LibreChat #AIAssistants #NoCode #OpenSource

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