AI-Lib
v0.4.0 · npm

TypeScript 运行时
适用于AI-Protocol

协议驱动、流式优先的 TypeScript/Node.js 运行时。V2 清单解析、标准错误码、弹性模式、模型路由、MCP 桥接和多模态支持。

npm install
npm install @hiddenpath/ai-lib-ts

核心特性

V2 清单解析

解析和加载 V2 协议清单,支持标准错误码(13 个)。提供商无关配置,零硬编码逻辑。

弹性模式

内置 RetryPolicy、CircuitBreaker、RateLimiter 和 Backpressure。PreflightChecker 统一请求门控。

模型路由

ModelManager 支持 CostBasedSelector、QualityBasedSelector 和 FallbackChain。智能模型选择优化成本和质量。

多模态支持

SttClient 语音转文字、TtsClient 文字转语音、RerankerClient 文档重排序。完整多模态内容块支持。

MCP 工具桥

将 MCP 工具桥接到 AI-Protocol 格式。无缝集成 MCP 服务器与统一工具调用接口。

批处理与插件

BatchExecutor 并行处理,可配置并发度。插件系统支持请求/响应拦截钩子。

简单统一的 API

同样的代码适用于所有 37 个提供商。只需更改模型标识符 —— 协议清单会处理其余的一切。

  • 1 使用模型 ID 创建客户端
  • 2 使用流式 API 构建聊天请求
  • 3 执行请求或获取流式响应
chat.ts
import { AiClient, Message } from '@hiddenpath/ai-lib-ts';

const client = await AiClient.new('openai/gpt-4o');

const response = await client
  .chat([
    Message.system('You are helpful.'),
    Message.user('Hello!'),
  ])
  .temperature(0.7)
  .execute();

console.log(response.content);

内部架构

协议驱动架构,提供类型安全的执行环境,默认具备弹性,且完全可扩展。

ai-lib-ts 运行时架构 客户端层 AiClient · Message · ChatRequestBuilder · ChatResponse 策略引擎 PreflightChecker · Validator · FallbackChain 协议层 ProtocolLoader · Manifest · Validator 弹性层 RateLimiter · Backpressure · Retry 流式管道 Decoder Selector Accumulator FanOut EventMapper 传输层 HttpTransport (undici/fetch) · Auth · Interceptors OpenAI · Anthropic · Gemini · DeepSeek · Qwen · 37 服务商

模块概览

client/ + errors/

AiClient, ChatRequestBuilder, ChatResponse, CallStats, CancelToken, CancellableStream, 统一错误码。

protocol/

ProtocolLoader (local/fetch/GitHub), V2 清单定义, JSON Schema 验证器, 提供商无关模型。

pipeline/

Decoder (SSE, JSON Lines), Selector (JSONPath), Accumulator, FanOut, EventMapper (协议驱动)。

resilience/

RetryPolicy, CircuitBreaker, RateLimiter, Backpressure, PreflightChecker, SignalsSnapshot, FallbackChain。

routing/

ModelManager, QualityBasedSelector, CostBasedSelector, FallbackChain 用于智能模型选择。

mcp/

McpBridge, McpTool 定义,无缝集成 Model Context Protocol 服务器。

multimodal/

SttClient, TtsClient, RerankerClient,全面支持多模态输入和专业模型。

plugins/ + batch/

PluginRegistry, Hooks。BatchExecutor 用于具有并发限制的并发批处理执行。