Tags: mo-inkhan/ai
Tags
Support OpenAI Zero Data Retention via encrypted reasoning (laravel#622) * add failing tests * tighten test assertion for regression test and add another failing test * add assertion * fix * Formatting --------- Co-authored-by: Pushpak Chhajed <pushpak1300@gmail.com>
Set claude-opus-4-8 as Anthropic's smartest text model (laravel#670)
Replace deprecated gemini-3-flash-preview default with gemini-3.5-fla… …sh (laravel#661)
Document @throws annotations across gateways, tools, and pending resp… …onses (laravel#626) Adds missing @throws annotations on methods whose runtime contracts were not advertised in their docblocks. No behavior change. - OpenAiGateway::generateTranscription — @throws LogicException - GeminiGateway::generateAudio — @throws RuntimeException - SimilaritySearch::usingModel — @throws InvalidArgumentException - PendingReranking::__construct — @throws InvalidArgumentException - PendingResponses generate methods — @throws FailoverableException - PendingResponses queue methods — @throws LogicException
Enable failover during stream iteration (laravel#279) * Update Promptable.php * Create AgentStreamFailoverTest.php * Prevent mid-stream failover and propagate conversation state across providers * Convert stream failover tests to Pest * Fix streamed agent failover state handling * Update Promptable.php --------- Co-authored-by: Pushpak Chhajed <pushpak1300@gmail.com> Co-authored-by: Pushpak Chhajed <pushpak@laravel.com>
Expand OpenAI-family streaming finish reason parity tests (laravel#523) Add tool_calls and unknown mapping cases across OpenAI, Azure OpenAI, and xAI streaming tests, plus failed mapping coverage for Azure.
Reindex tool calls and results before persisting to prevent JSON obje… …ct encoding (laravel#473) * Reindex tool calls and results before persisting to prevent JSON object encoding Fixes laravel#455 * Add test coverage * Update DatabaseConversationStoreTest.php * Formatting --------- Co-authored-by: Pushpak Chhajed <pushpak1300@gmail.com>
fix(openai, anthropic): cast empty tool args to object (laravel#419) * Fix empty tool args in Anthropic and OpenAI maps When mapAssistantMessage() rebuilds tool_use blocks from stored ToolCalls, empty arguments were serialized as [] instead of {}, which both APIs reject. Apply the same empty-only coercion used in the other gateways and add tests for empty and non-empty args in both mappers. * Update AgentTest.php --------- Co-authored-by: Pushpak Chhajed <pushpak1300@gmail.com>
Bedrock provider (laravel#270) * [0.x] Add AWS Bedrock provider Adds full support for AWS Bedrock as an AI provider with text generation, embeddings, image generation, and speech transcription capabilities. Features: - Text generation with 50+ models (Claude, Titan, Llama, Mistral) - Tool/function calling with multi-turn conversation support - Streaming text generation via Bedrock's converseStream API - Image generation (Nova Canvas, Titan Image, Stability AI) - Speech transcription (Nova Sonic) with diarization - Embeddings (Titan Embed, Cohere Embed) - Support for IAM credentials, bearer tokens, and default credential chain - Comprehensive exception handling and error recovery - Rate limiting via HandlesRateLimiting trait Closes laravel#39 * Fix structured output for Bedrock via forced tool-use When a HasStructuredOutput schema is provided, the previous implementation simply called json_decode() on the model's text response. Since Bedrock models respond conversationally by default (not as raw JSON), this always returned an empty array. Fix: when a schema is present, inject a synthetic 'structured_output' tool whose inputSchema is built from the agent's schema definition, then set toolChoice to force the model to call that tool. The tool's input block is already parsed JSON by the AWS SDK, so we json_encode() it back for the existing json_decode() path downstream. This matches the industry-standard approach (LangChain, LlamaIndex, etc.) for reliable structured output from Claude on Bedrock. Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com> * Fix Bedrock provider bugs and drop broken Nova Sonic transcription * Register Bedrock provider in default config * Simplify code * Add unit tests for Bedrock gateways and exception mapping * formatting --------- Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com> Co-authored-by: Pushpak Chhajed <pushpak1300@gmail.com> Co-authored-by: Taylor Otwell <taylor@laravel.com>
PreviousNext