Skip to main content

⚙️ Customizing ICE V3

ICE is designed for surgical control. You can configure your cognitive engine at four distinct levels of granularity.

1. Global Defaults

Set app-wide defaults before initialization.

import ice

ice.set_defaults(
post_limit=16384,
max_vram_mb=12288
)

2. The Configured Client

For isolated environments (e.g., multi-tenant SaaS), instantiate a dedicated Client.

# Creates an isolated instance for a specific tenant
acme_client = ice.Client(
tenant_id="acme-corp",
client_budget=ice.CognitiveBudget(post_limit=32000)
)

3. Surgical Request Overrides

For individual queries that require extreme precision or massive context windows, use QueryConfig.

response = await acme_client.query(
"Deep analysis of financial contracts.",
model="claude-3.5-sonnet",
config=ice.QueryConfig(post_limit=128000)
)

Available Customization Features

The following settings can be configured via ice.CognitiveBudget:

SettingTypeDescriptionDefault
post_limitintTotal token budget for the final LLM prompt.8192
pre_limitintMax number of memory "needles" to inject.5
max_vram_mbintVRAM limit for native kernel operations.8192
fidelityfloatSemantic resolution of ingestion (0.0-1.0).0.5
physics_enginestrExecution mode: native or standard."native"

Next: Enterprise Escape Hatches