Expand description
pi-ai — Unified multi-provider LLM API.
Rust port of the TypeScript package @earendil-works/pi-ai. The original
project supports many providers; this port focuses on the two most common
agent backends: Anthropic Messages and OpenAI Chat Completions. Both share
the same Message/Tool/AssistantMessageEvent types so the agent loop
is provider-agnostic.
Re-exports§
pub use error::Error;pub use error::Result;pub use providers::anthropic::AnthropicProvider;pub use providers::google::GoogleProvider;pub use providers::openai::OpenAiProvider;pub use providers::Provider;pub use stream::AssistantMessageEventStream;pub use types::now_ms;pub use types::AssistantMessage;pub use types::AssistantMessageEvent;pub use types::Content;pub use types::Context;pub use types::Message;pub use types::Model;pub use types::StopReason;pub use types::StreamOptions;pub use types::ThinkingLevel;pub use types::Tool;pub use types::ToolResultMessage;pub use types::Usage;
Modules§
Functions§
- stream_
simple - Entry point that mirrors
streamSimple()in pi-ai TS: pick the provider implementation frommodel.apiand return a stream of message events.