核心特�?/h2>
V2 错误码与特性标�?/h3>
13 �?V2 标准错误码,跨提供商统一错误处理。按特性门控的模块�?
个可选特性加完整元特性,支持最小或完整构建�?
基于算子的管�?/h3>
流式响应通过可组合算子:Decoder → Selector → Accumulator → FanOut
→ EventMapper。各阶段由协议配置�?
协议加载
从本地文件、环境变量或 GitHub
后备加载提供商清单。支持通过文件监听实现热重载。配置更新无需重启�?
弹性模�?/h3>
内置熔断器、令牌桶限流、指数退避重试与最大并发背压。均可通过环境变量配置�?
嵌入与向�?/h3>
EmbeddingClient 提供向量运算:余弦相似度、欧氏距离、点积。原生构建语义搜索与 RAG
应用�?
缓存与批处理
�?TTL 的响应缓存(内存后端)。可配置并发、超时及多种处理策略的批处理执行�?
插件系统
可扩展的插件架构,含钩子与中间件链。无需修改核心代码即可添加自定义行为。用于内容过滤与
PII 检测的护栏�?
V2 错误码与特性标�?/h3>
13 �?V2 标准错误码,跨提供商统一错误处理。按特性门控的模块�? 个可选特性加完整元特性,支持最小或完整构建�?
基于算子的管�?/h3>
流式响应通过可组合算子:Decoder → Selector → Accumulator → FanOut → EventMapper。各阶段由协议配置�?
协议加载
从本地文件、环境变量或 GitHub 后备加载提供商清单。支持通过文件监听实现热重载。配置更新无需重启�?
弹性模�?/h3>
内置熔断器、令牌桶限流、指数退避重试与最大并发背压。均可通过环境变量配置�?
嵌入与向�?/h3>
EmbeddingClient 提供向量运算:余弦相似度、欧氏距离、点积。原生构建语义搜索与 RAG 应用�?
缓存与批处理
�?TTL 的响应缓存(内存后端)。可配置并发、超时及多种处理策略的批处理执行�?
插件系统
可扩展的插件架构,含钩子与中间件链。无需修改核心代码即可添加自定义行为。用于内容过滤与 PII 检测的护栏�?
简单统一�?API
同一套代码适用于全�?37 个提供商。只需修改模型标识�?—�? 协议清单会处理其余一切:端点、认证、参数映射、流式格式�?
建造者模式提供流畅的请求构�?API。流式结果以统一�?StreamingEvent 类型返回,与底层提供商无关�?
use ai_lib_rust::{AiClient, Message, StreamingEvent{'}'};
// 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()
.user("Explain AI-Protocol")
.temperature(0.7)
.max_tokens(1000)
.stream()
.execute_stream()
.await?;
// Unified streaming events
while let Some(event) = stream.next().await {'{'}
match event? {'{'}
StreamingEvent::ContentDelta {'{'} text, .. {'}'}
=> print!("{'{'}text{'}'}"),
StreamingEvent::StreamEnd {'{'} stats, .. {'}'}
=> println!("
Tokens: {'{'}{'}'}",
stats.total_tokens),
_ => {'{'}{'}'} // ToolCall, Metadata, etc.
{'}'}
{'}'}
内部架构
从用�?API �?HTTP 传输的五层结构。流式管道是系统的核心�?
模块概览
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 密钥解析(keyring + env vars)、代�?超时配置、中间件支持�?
resilience/
熔断器(开/半开/闭)、令牌桶限流、最大并发信号量背压�?
embeddings/
EmbeddingClient、EmbeddingClientBuilder、向量运算(余弦相似度、欧氏距离、点积)�?
cache/ + batch/
�?TTL �?CacheManager(MemoryCache、NullCache)。带并发控制与多种策略的 BatchCollector �?BatchExecutor�?
plugins/ + guardrails/ + structured/
Plugin trait、PluginRegistry、HookManager、中间件链。含关键�?模式过滤�?PII 检测的护栏�?