AI-Lib
v1.2.0 · Crates.io

Rust 运行时
适用于 AI-Protocol。

AI-Protocol 高性能 Rust 运行时(v1.2.0)。默认路径:清单 → Pipeline → HttpTransport。 E/P 工作区(ai-lib-core + ai-lib-contact),13 个 V2 标准错误码, 以及 feature 门控的能力模块。

Cargo.toml
ai-lib-rust = "1.2.0"

核心特性

V2 错误码与 Feature 开关

13 个 V2 标准错误码,跨服务商统一错误处理。 Feature 门控模块:7 个可选能力,外加 full 元特性,可按需精简或完整构建。

算子流式管道

流式响应经可组合算子处理:Decoder → Selector → Accumulator → FanOut → EventMapper。各阶段均由协议配置驱动。

协议 + 管道

AiClient 加载清单并运行算子管道 (Decoder → Selector → Accumulator → EventMapper)。支持 V1 / V2 清单路径。

E/P 工作区

ai-lib-core(执行层)与 ai-lib-contact(策略层)分 crate 发布; ai-lib-rust 再导出稳定门面。

Resilience

内置 max_inflight 背压。重试、限流与熔断位于 ai_lib_rust::resilience  opt-in.

嵌入与向量

EmbeddingClient 提供向量运算 ?cosine similarity, Euclidean distance, dot product. 可原生构建语义检索与 RAG 应用。

缓存与批处理

带 TTL 的响应缓存(内存后端)。批处理支持可配置并发、超时与多种执行策略。

插件系统

可扩展插件架构,含钩子与中间件链。无需改动核心即可注入自定义行为。 Guardrails 支持内容过滤与 PII 检测。

统一、简洁的 API

同一套代码适用于全部 37+ 服务商。只需更换模型标识符 ?协议清单会处理其余一切:端点、鉴权、参数映射与流式格式。

Builder 模式提供流畅的请求构造 API。流式结果统一为 StreamingEvent, 与底层服务商无关。

use ai_lib_rust::{AiClient, Message, StreamingEvent};
use futures::StreamExt;

// Works with ANY provider ?protocol-driven
let client = AiClient::new(
    "anthropic/claude-3-5-sonnet"
).await?;

// Builder pattern for chat requests
let mut stream = client.chat()
    .messages(vec![Message::user("Hello")])
    .temperature(0.7)
    .max_tokens(1000)
    .stream()
    .execute_stream()
    .await?;

// Unified streaming events
while let Some(event) = stream.next().await {
    match event? {
        StreamingEvent::PartialContentDelta { content, .. }
            => print!("{content}"),
        StreamingEvent::StreamEnd { stats, .. }
            => println!("\nTokens: {}",
                stats.total_tokens),
        _ => {} // ToolCall, Metadata, etc.
    }
}

内部架构

从面向用户的 API 到 HTTP 传输共五层。流式管道是系统核心。

ai-lib-rust 运行时架构 客户端层 AiClient · AiClientBuilder · ChatRequestBuilder · ChatResponse 策略引擎 Preflight · Validation · ErrorClassification · Signals 协议层 ProtocolLoader · Manifest · Validator 弹性层 CircuitBreaker · RateLimiter · Retry 流式管道 Decoder Selector Accumulator FanOut EventMapper 传输层 HttpTransport (reqwest) · Auth · Middleware OpenAI · Anthropic · Gemini · DeepSeek · Qwen · 37 服务商

模块概览

client/ + error_code/

AiClient、AiClientBuilder、ChatRequestBuilder、执行逻辑、策略引擎、 预检、错误分类、CallStats、CancelHandle。

protocol/

ProtocolLoader(本地 / URL / GitHub)、JSON Schema 校验、ProtocolManifest 结构、UnifiedRequest 编译与配置类型。

pipeline/

Decoder(SSE、JSON Lines)、Selector(JSONPath)、Accumulator(工具调用)、FanOut (多候选)、EventMapper(统一事件),以及 Retry / Fallback 算子。

transport/

HttpTransport(reqwest)、API Key 解析(keyring + 环境变量)、代理 / 超时配置与中间件。

resilience/

熔断器(open / half-open / closed)、令牌桶限流、max-inflight 信号量背压。

embeddings/

EmbeddingClient、EmbeddingClientBuilder,以及向量运算(余弦相似度、欧氏距离、点积)。

cache/ + batch/

带 TTL 的 CacheManager(MemoryCache、NullCache)。BatchCollector / BatchExecutor 支持并发控制与多种策略。

plugins/ + guardrails/ + structured/

Plugin trait、PluginRegistry、HookManager 与中间件链。Guardrails 提供关键词 / 模式过滤与 PII 检测。

开始使用 Rust 构建