Registry / ai-ml / ai-resilience

ai-resilience

JSON →
library0.3.1jsnpmunverified

Axios retry++ primitives for resilient AI and backend systems. Version 0.3.1 provides smart HTTP retries (exponential backoff, jitter, status code handling), semantic retry for AI responses (JSON repair, Zod validation, empty/refusal detection), provider fallback, circuit breakers, and distributed coordination via Redis. TypeScript-first, ships types. Differentiators: handles both HTTP failures and AI content failures, offers distributed retry coordination, telemetry hooks.

npm install ai-resilience
INSTALL
IMPORT
SIG · AI-RESILIENCE
A
ai-resilience
ai-mljavascriptv0.3.1
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

applyAiResilience
import { applyAiResilience } from 'ai-resilience'
const { applyAiResilience } = require('ai-resilience')
ESM-only package; CommonJS require will fail.
requestWithSemanticRetry
import { requestWithSemanticRetry } from 'ai-resilience'
import { requestWithSemanticRetry } from 'ai-resilience/requestWithSemanticRetry'
Not a subpath export; all symbols from top-level package entry.
ConsoleRetryLogger
import { ConsoleRetryLogger } from 'ai-resilience'
Default export is not available; all are named exports.
RedisRetryCoordinator
import { RedisRetryCoordinator } from 'ai-resilience'
import RedisRetryCoordinator from 'ai-resilience'
Named export only, not default.

Demonstrates applyAiResilience for HTTP retries and requestWithSemanticRetry for AI response validation with Zod schema.

import axios from 'axios'; import { applyAiResilience, ConsoleRetryLogger, requestWithSemanticRetry } from 'ai-resilience'; import { z } from 'zod'; const client = axios.create({ baseURL: 'https://api.example.com' }); // Apply smart retries applyAiResilience(client, { retries: 3, strategy: 'exponential', baseDelayMs: 150, maxDelayMs: 10_000, jitter: 'full', logger: new ConsoleRetryLogger('info'), hooks: { onRetry: ({ attempt, nextDelayMs }) => { console.log(`Retry ${attempt} in ${nextDelayMs}ms`); }, }, }); // Simple GET with retry const response = await client.get('/health'); console.log(response.data); // Semantic retry for AI responses const result = await requestWithSemanticRetry(client, { request: { method: 'post', url: '/generate', data: { prompt: 'Return JSON with title and tags.' }, }, schema: z.object({ title: z.string(), tags: z.array(z.string()) }), repairJson: true, requireJson: true, hooks: { onSemanticRetry: ({ issue, attempt }) => { console.log(`Semantic retry ${attempt}: ${issue.kind}`); }, }, }); console.log(result.data);
Debug
Known issues
breakingPackage is ESM-only. Using require('ai-resilience') will throw a runtime error. Use import syntax or dynamic import().
fix
Change require() to import statements and ensure your project uses ESM or a compatible module bundler.
affects: >=0.0.1
breakingAll exports are named exports. There is no default export. Importing with default import (e.g., import aiResilience from 'ai-resilience') yields undefined.
fix
Use named imports: import { applyAiResilience, requestWithSemanticRetry, ... } from 'ai-resilience'.
affects: >=0.0.1
gotchaapplyAiResilience modifies the Axios instance in-place and may conflict with other interceptors. Order matters: apply after other interceptors or ensure compatibility.
fix
Apply ai-resilience last, after setting up other interceptors. Test for interceptor conflicts.
affects: >=0.0.1
gotchaRedisRetryCoordinator requires ioredis as a peer dependency. Not installing ioredis will cause runtime error when using distributed coordination.
fix
Install ioredis: npm install ioredis
affects: >=0.0.1
deprecatedNo deprecation notices yet as package is pre-1.0.
Errors
Common errors & fixes
ERR_REQUIRE_ESM
Using require() on an ESM-only package.
fix
Change to import syntax: import { applyAiResilience } from 'ai-resilience'
TypeError: (intermediate value).applyAiResilience is not a function
Default import instead of named import.
fix
Use named import: import { applyAiResilience } from 'ai-resilience'
Error: Cannot find module 'ioredis'
Missing peer dependency for RedisRetryCoordinator.
fix
Install ioredis: npm install ioredis
error TS2307: Cannot find module 'ai-resilience' or its corresponding type declarations.
Missing TypeScript type declarations or incorrect moduleResolution.
fix
Ensure tsconfig.json has moduleResolution: 'node' or 'bundler' and includes node_modules types.
Upgrade
Version history
0.3.1latest on npm
Audit
Dependencies
axiosrequiredpeer dependency for HTTP client
axios-retryrequiredpeer dependency for underlying retry logic
Agent activity
47 hits · last 30 days
node
40
OpenAI (training)
1
Resources
ai-resilience — npm install ai-resilience · libregistry