Cấu hình bộ nhớ
Tổng quan
Đối tượng memory cho phép bạn cấu hình bộ nhớ hội thoại và các tính năng cá nhân hóa cho ứng dụng. Cấu hình này kiểm soát cách hệ thống ghi nhớ và cá nhân hóa các cuộc hội thoại, bao gồm giới hạn token, cửa sổ ngữ cảnh tin nhắn và xử lý bộ nhớ dựa trên tác nhân (agent).
Ví dụ
memory:
disabled: false
validKeys: ['user_preferences', 'conversation_context', 'personal_info']
tokenLimit: 2000
charLimit: 10000
maxInputTokens: 12000
personalize: true
messageWindowSize: 5
agent:
provider: 'openAI'
model: 'gpt-4'
instructions: 'You are a helpful assistant that remembers user preferences and context.'
model_parameters:
temperature: 0.7
max_tokens: 1000disabled
| Key | Type | Description | Example |
|---|---|---|---|
| disabled | Boolean | Vô hiệu hóa chức năng bộ nhớ khi được đặt thành true. Khi bị vô hiệu hóa, hệ thống sẽ không lưu trữ hoặc sử dụng bộ nhớ hội thoại. | disabled: false |
Mặc định: false
memory:
disabled: truevalidKeys
| Key | Type | Description | Example |
|---|---|---|---|
| validKeys | Array of Strings | Chỉ định các khóa nào hợp lệ để lưu trữ bộ nhớ. Điều này giúp kiểm soát các loại thông tin có thể được lưu trữ trong bộ nhớ. | validKeys: ["user_name", "preferences", "ngữ cảnh"] |
Mặc định: Không có hạn chế (tất cả các khóa đều hợp lệ)
memory:
validKeys:
- 'user_preferences'
- 'conversation_context'
- 'personal_information'
- 'learned_facts'tokenLimit
| Key | Type | Description | Example |
|---|---|---|---|
| tokenLimit | Number | Thiết lập số lượng token tối đa có thể được sử dụng để lưu trữ và xử lý bộ nhớ. | tokenLimit: 2000 |
Mặc định: Không giới hạn
memory:
tokenLimit: 2000charLimit
| Key | Type | Description | Example |
|---|---|---|---|
| charLimit | Number | Thiết lập số lượng ký tự tối đa cho phép đối với các mục bộ nhớ riêng lẻ. Điều này giúp ngăn chặn các payload bộ nhớ quá lớn có thể ảnh hưởng đến hiệu suất hoặc vượt quá giới hạn API. | charLimit: 10000 |
Mặc định: 10000
memory:
charLimit: 10000maxInputTokens
| Key | Type | Description | Example |
|---|---|---|---|
| maxInputTokens | Number | Thiết lập số lượng token trò chuyện gần đây tối đa được gửi đến tác nhân bộ nhớ tự động trước khi trích xuất bộ nhớ. Các đầu vào dài sẽ bị cắt bớt từ phần đầu để giữ lại ngữ cảnh mới nhất. | maxInputTokens: 12000 |
Mặc định: 12000
memory:
maxInputTokens: 12000personalize
| Key | Type | Description | Example |
|---|---|---|---|
| personalize | Boolean | Khi được đặt thành true, cho phép người dùng chọn tham gia hoặc từ chối sử dụng các tính năng bộ nhớ. Người dùng có thể bật/tắt bộ nhớ trong giao diện trò chuyện của họ. Khi là false, các tính năng bộ nhớ sẽ bị vô hiệu hóa hoàn toàn. | personalize: true |
Mặc định: true
memory:
personalize: falsemessageWindowSize
| Key | Type | Description | Example |
|---|---|---|---|
| messageWindowSize | Number | Chỉ định số lượng tin nhắn gần đây sẽ được đưa vào cửa sổ ngữ cảnh bộ nhớ. | messageWindowSize: 5 |
Mặc định: 5
memory:
messageWindowSize: 10agent
| Key | Type | Description | Example |
|---|---|---|---|
| agent | Object | Union | Cấu hình tác nhân chịu trách nhiệm xử lý bộ nhớ. Có thể là tham chiếu đến một tác nhân hiện có theo ID hoặc cấu hình tác nhân hoàn chỉnh. | agent: { provider: "openAI", model: "gpt-4" } |
Trường agent hỗ trợ hai định dạng cấu hình khác nhau:
Agent theo ID
Khi bạn đã có một agent được cấu hình sẵn, bạn có thể tham chiếu đến nó bằng ID của nó:
memory:
agent:
id: 'memory-agent-001'Cấu hình Agent tùy chỉnh
Để có quyền kiểm soát tốt hơn, bạn có thể xác định cấu hình đại lý hoàn chỉnh:
memory:
agent:
provider: 'openAI'
model: 'gpt-4'
instructions: 'You are a memory assistant that helps maintain conversation context and user preferences.'
model_parameters:
temperature: 0.3
max_tokens: 1500
top_p: 0.9Các trường cấu hình Agent
Khi sử dụng cấu hình tác nhân tùy chỉnh, các trường sau đây sẽ khả dụng:
provider (bắt buộc)
| Key | Type | Description | Example |
|---|---|---|---|
| provider | String | Chỉ định nhà cung cấp AI cho tác nhân bộ nhớ. Có thể là nhà cung cấp tích hợp sẵn (ví dụ: "openAI", "anthropic", "google") hoặc tên endpoint tùy chỉnh. | provider: "openAI" |
model (bắt buộc)
| Key | Type | Description | Example |
|---|---|---|---|
| model | String | Chỉ định model để sử dụng cho việc xử lý bộ nhớ. | model: "gpt-4" |
instructions (tùy chọn)
| Key | Type | Description | Example |
|---|---|---|---|
| instructions | String | Các hướng dẫn tùy chỉnh thay thế cho các hướng dẫn mặc định về thời điểm thiết lập và/hoặc xóa bộ nhớ. Nên được sử dụng chủ yếu khi dùng validKeys yêu cầu xử lý thông tin cụ thể. | instructions: "Only store user preferences and facts when explicitly mentioned." |
model_parameters (tùy chọn)
| Key | Type | Description | Example |
|---|---|---|---|
| model_parameters | Object | Các tham số bổ sung để truyền cho model nhằm tinh chỉnh hành vi của nó. Các giá trị phải là chuỗi, số hoặc boolean. | model_parameters: { temperature: 0.7 } |
Ví dụ cấu hình hoàn chỉnh
Dưới đây là một ví dụ toàn diện hiển thị tất cả các tùy chọn cấu hình bộ nhớ:
version: 1.3.10
cache: true
memory:
disabled: false
validKeys:
- 'user_preferences'
- 'conversation_context'
- 'learned_facts'
- 'personal_information'
tokenLimit: 3000
charLimit: 10000
maxInputTokens: 12000
personalize: true
messageWindowSize: 8
agent:
provider: 'openAI'
model: 'gpt-4'
instructions: |
Store memory using only the specified validKeys. For user_preferences: save
explicitly stated preferences about communication style, topics of interest,
or workflow preferences. For conversation_context: save important facts or
ongoing projects mentioned. For learned_facts: save objective information
about the user. For personal_information: save only what the user explicitly
shares about themselves. Delete outdated or incorrect information promptly.
model_parameters:
temperature: 0.2
max_tokens: 2000
top_p: 0.8
frequency_penalty: 0.1Sử dụng Custom Endpoints
Tính năng bộ nhớ hỗ trợ các endpoint tùy chỉnh. Khi sử dụng một endpoint tùy chỉnh, trường provider phải khớp chính xác với name của endpoint tùy chỉnh đó. Các tiêu đề tùy chỉnh với biến môi trường và trình giữ chỗ người dùng được phân giải đúng cách.
endpoints:
custom:
- name: 'Custom Memory Endpoint'
apiKey: 'dummy'
baseURL: 'https://api.gateway.ai/v1'
headers:
x-gateway-api-key: '${GATEWAY_API_KEY}'
x-gateway-virtual-key: '${GATEWAY_OPENAI_VIRTUAL_KEY}'
X-User-Identifier: '{{LIBRECHAT_USER_EMAIL}}'
X-Application-Identifier: 'LibreChat - Test'
api-key: '${TEST_CUSTOM_API_KEY}'
models:
default:
- 'gpt-4o-mini'
- 'gpt-4o'
fetch: false
memory:
disabled: false
tokenLimit: 3000
maxInputTokens: 12000
personalize: true
messageWindowSize: 10
agent:
provider: 'Custom Memory Endpoint'
model: 'gpt-4o-mini'- Xem Custom Endpoint Headers để biết tất cả các trình giữ chỗ (placeholders) khả dụng
Ghi chú
- Tính năng Memory giúp tăng cường tính liên tục và cá nhân hóa cho cuộc trò chuyện
- Khi
personalizelà true, người dùng sẽ có một nút gạt trong giao diện trò chuyện để kiểm soát việc sử dụng bộ nhớ - Giới hạn token giúp kiểm soát mức sử dụng bộ nhớ và chi phí xử lý.
maxInputTokensgiới hạn ngữ cảnh trò chuyện được gửi đến tác nhân bộ nhớ tự động, trong khitokenLimitkiểm soát mức sử dụng bộ nhớ đã lưu trữ- Các khóa hợp lệ cung cấp khả năng kiểm soát chi tiết đối với thông tin nào có thể được lưu trữ
instructionstùy chỉnh sẽ thay thế các hướng dẫn xử lý bộ nhớ mặc định và nên được sử dụng cùng vớivalidKeys- Cấu hình Agent cho phép tùy chỉnh hành vi xử lý bộ nhớ
- Khi bị vô hiệu hóa, tất cả các tính năng bộ nhớ sẽ bị tắt bất kể các cài đặt khác.
- Kích thước cửa sổ tin nhắn ảnh hưởng đến lượng ngữ cảnh gần đây được xem xét cho việc cập nhật bộ nhớ
Hướng dẫn này thế nào?