feat: enable batch indexing by default
This commit is contained in:
@@ -6,6 +6,7 @@ Docs: https://docs.clawd.bot
|
|||||||
|
|
||||||
### Changes
|
### Changes
|
||||||
- Memory: add OpenAI Batch API indexing for embeddings when configured.
|
- Memory: add OpenAI Batch API indexing for embeddings when configured.
|
||||||
|
- Memory: enable OpenAI batch indexing by default for OpenAI embeddings.
|
||||||
|
|
||||||
### Fixes
|
### Fixes
|
||||||
- Memory: retry transient 5xx errors (Cloudflare) during embedding indexing.
|
- Memory: retry transient 5xx errors (Cloudflare) during embedding indexing.
|
||||||
|
|||||||
@@ -109,7 +109,7 @@ If you don't want to set an API key, use `memorySearch.provider = "local"` or se
|
|||||||
`memorySearch.fallback = "none"`.
|
`memorySearch.fallback = "none"`.
|
||||||
|
|
||||||
Batch indexing (OpenAI only):
|
Batch indexing (OpenAI only):
|
||||||
- Set `agents.defaults.memorySearch.remote.batch.enabled = true` to submit embeddings via the OpenAI Batch API.
|
- Enabled by default for OpenAI embeddings. Set `agents.defaults.memorySearch.remote.batch.enabled = false` to disable.
|
||||||
- Default behavior waits for batch completion; tune `remote.batch.wait`, `remote.batch.pollIntervalMs`, and `remote.batch.timeoutMinutes` if needed.
|
- Default behavior waits for batch completion; tune `remote.batch.wait`, `remote.batch.pollIntervalMs`, and `remote.batch.timeoutMinutes` if needed.
|
||||||
- Batch mode currently applies only when `memorySearch.provider = "openai"` and uses your OpenAI API key.
|
- Batch mode currently applies only when `memorySearch.provider = "openai"` and uses your OpenAI API key.
|
||||||
|
|
||||||
@@ -123,7 +123,7 @@ agents: {
|
|||||||
model: "text-embedding-3-small",
|
model: "text-embedding-3-small",
|
||||||
fallback: "openai",
|
fallback: "openai",
|
||||||
remote: {
|
remote: {
|
||||||
batch: { enabled: true }
|
batch: { enabled: false }
|
||||||
},
|
},
|
||||||
sync: { watch: true }
|
sync: { watch: true }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -98,7 +98,7 @@ describe("memory search config", () => {
|
|||||||
apiKey: "default-key",
|
apiKey: "default-key",
|
||||||
headers: { "X-Default": "on" },
|
headers: { "X-Default": "on" },
|
||||||
batch: {
|
batch: {
|
||||||
enabled: false,
|
enabled: true,
|
||||||
wait: true,
|
wait: true,
|
||||||
pollIntervalMs: 5000,
|
pollIntervalMs: 5000,
|
||||||
timeoutMinutes: 60,
|
timeoutMinutes: 60,
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ function mergeConfig(
|
|||||||
const provider = overrides?.provider ?? defaults?.provider ?? "openai";
|
const provider = overrides?.provider ?? defaults?.provider ?? "openai";
|
||||||
const hasRemote = Boolean(defaults?.remote || overrides?.remote);
|
const hasRemote = Boolean(defaults?.remote || overrides?.remote);
|
||||||
const batch = {
|
const batch = {
|
||||||
enabled: overrides?.remote?.batch?.enabled ?? defaults?.remote?.batch?.enabled ?? false,
|
enabled: overrides?.remote?.batch?.enabled ?? defaults?.remote?.batch?.enabled ?? true,
|
||||||
wait: overrides?.remote?.batch?.wait ?? defaults?.remote?.batch?.wait ?? true,
|
wait: overrides?.remote?.batch?.wait ?? defaults?.remote?.batch?.wait ?? true,
|
||||||
pollIntervalMs:
|
pollIntervalMs:
|
||||||
overrides?.remote?.batch?.pollIntervalMs ??
|
overrides?.remote?.batch?.pollIntervalMs ??
|
||||||
|
|||||||
@@ -367,7 +367,7 @@ const FIELD_HELP: Record<string, string> = {
|
|||||||
"agents.defaults.memorySearch.remote.headers":
|
"agents.defaults.memorySearch.remote.headers":
|
||||||
"Extra headers for remote embeddings (merged; remote overrides OpenAI headers).",
|
"Extra headers for remote embeddings (merged; remote overrides OpenAI headers).",
|
||||||
"agents.defaults.memorySearch.remote.batch.enabled":
|
"agents.defaults.memorySearch.remote.batch.enabled":
|
||||||
"Enable OpenAI Batch API for memory embeddings (default: false).",
|
"Enable OpenAI Batch API for memory embeddings (default: true).",
|
||||||
"agents.defaults.memorySearch.remote.batch.wait":
|
"agents.defaults.memorySearch.remote.batch.wait":
|
||||||
"Wait for OpenAI batch completion when indexing (default: true).",
|
"Wait for OpenAI batch completion when indexing (default: true).",
|
||||||
"agents.defaults.memorySearch.remote.batch.pollIntervalMs":
|
"agents.defaults.memorySearch.remote.batch.pollIntervalMs":
|
||||||
|
|||||||
@@ -159,7 +159,7 @@ export type MemorySearchConfig = {
|
|||||||
apiKey?: string;
|
apiKey?: string;
|
||||||
headers?: Record<string, string>;
|
headers?: Record<string, string>;
|
||||||
batch?: {
|
batch?: {
|
||||||
/** Enable OpenAI Batch API for embedding indexing (default: false). */
|
/** Enable OpenAI Batch API for embedding indexing (default: true). */
|
||||||
enabled?: boolean;
|
enabled?: boolean;
|
||||||
/** Wait for batch completion (default: true). */
|
/** Wait for batch completion (default: true). */
|
||||||
wait?: boolean;
|
wait?: boolean;
|
||||||
|
|||||||
Reference in New Issue
Block a user