Thin facade for interacting with AI providers.
Usage
AI.chat(
[%PhoenixAI.Message{role: :user, content: "Hello"}],
provider: :openai,
model: "gpt-4o"
)Configuration Cascade
Options resolve in order: call-site > config.exs > env vars > provider defaults.
Summary
Functions
@spec chat( [PhoenixAI.Message.t()], keyword() ) :: {:ok, PhoenixAI.Response.t()} | {:error, term()}
@spec stream( [PhoenixAI.Message.t()], keyword() ) :: {:ok, PhoenixAI.Response.t()} | {:error, term()}