Releases: prism-php/prism
Releases · prism-php/prism
v0.100.1
v0.100.0
What's Changed
- feat: map Mistral HTTP 503 to PrismProviderOverloadedException by @kachelle in #959
- refactor(anthropic): GA structured output support by @sixlive in #967
- Laravel 13 support for CI by @sixlive in #968
- feat(anthropic): add provider tool support for sturctured mode by @sixlive in #969
Breaking Changes
- Structured output now uses native mode by default instead of prompt-based JSON mode
- Citations can no longer be used with structured output (previously worked via JSON mode workaround, but this is unsupported by the Anthropic API)
- Users who had the beta header configured for structured outputs can remove it
Full Changelog: v0.99.22...v0.100.0
v0.99.22
What's Changed
- fix(openrouter): Null-coalesce json response to prevent TypeError on empty/invalid API responses. by @pocketarc in #939
- fix: handle GPT-5 reasoning model finish reason mapping and enrich exception messages by @thecrazybob in #941
- fix: emit success: false on ToolResultEvent for handled tool errors by @chloe-pomegranate in #933
- fix: prevent duplicate reasoning-end events in Ollama stream by @bishwajitcadhikary in #903
- Feature - Add Perplexity provider by @joao-salomao in #740
- Z.AI Integration by @kevariable in #794
- feat(voyageai): add multimodal image embedding support by @markritterman in #895
- fix: correct the Zai API URL by @delabon in #946
- Enable structured output support for OpenAI gpt-5.4 model by @aivis in #947
- feat(gemini): add multimodal embedding support by @cyppe in #944
- fix(ollama): handle length, unknown, and other finish reasons in Text handler by @ChrisThompsonTLDR in #943
New Contributors
- @thecrazybob made their first contribution in #941
- @bishwajitcadhikary made their first contribution in #903
- @kevariable made their first contribution in #794
- @delabon made their first contribution in #946
- @aivis made their first contribution in #947
- @ChrisThompsonTLDR made their first contribution in #943
Full Changelog: v0.99.21...v0.99.22
v0.99.21
What's Changed
- feat: allow tool_calls for structured OpenRouter by @oleghalin in #930
- fix(anthropic): handle Unix timestamp in rate limit reset headers by @lorisleiva in #931
- fix(anthropic): replace deprecated output_format with output_config.format by @chloe-pomegranate in #929
- feat(anthropic): Add support for automatic caching by @satoved in #917
- fix(anthropic): tool result caching by @sixlive in #867
- feat(openrouter): add support for embedding. by @hipig in #887
- fix: prevent content truncation during OpenRouter reasoning-to-text transition by @alanost in #891
- Support batch embeddings for Gemini provider by @larskoole in #915
New Contributors
- @lorisleiva made their first contribution in #931
- @chloe-pomegranate made their first contribution in #929
- @alanost made their first contribution in #891
Full Changelog: v0.99.20...v0.99.21
v0.99.20
What's Changed
- Fix: Ensure step messages represent input only by @vinitkadam03 in #884
- fix(broadcasting): Citation event broadcasting by @sixlive in #927
- fix(openrouter): de-duplicate tool merging logic by @oleghalin in #923
- feat(ollama): Add dimensions provider option to embeddings by @WoutervdBrink in #913
- Fix static closure bindTo() error on PHP 8.4 in PrismManager::extend() by @cyppe in #911
- fix(streaming): expose "toolCallResultId" in the streamed data by @joao-salomao in #908
- feat(voyageai): add output_dimension support for embeddings by @markritterman in #904
- fix(streaming): add null usage fallback to all providers by @aimbit-ni in #901
- fix: encode empty tool arguments as JSON object instead of array by @MaximeWillinger in #896
- Support Laravel 13 by @taylorotwell in #928
- Add chunking_strategy to OpenAI audio transcription provider options by @kachelle in #892
- Expose request builder methods by @GALCF in #889
- Fixed tool calls message ID reset to empty by @hipig in #886
New Contributors
- @oleghalin made their first contribution in #923
- @WoutervdBrink made their first contribution in #913
- @joao-salomao made their first contribution in #908
- @aimbit-ni made their first contribution in #901
- @MaximeWillinger made their first contribution in #896
- @kachelle made their first contribution in #892
Full Changelog: v0.99.19...v0.99.20
v0.99.19
What's Changed
Breaking Changes
Consumers parsing the raw stream need to update artifact handling:
- if (data.type === 'artifact') {
- artifacts.set(data.toolCallId, data.artifact);
+ if (data.type === 'data-artifact') {
+ artifacts.set(data.data.toolCallId, data.data.artifact);
}Full Changelog: v0.99.18...v0.99.19
v0.99.18
What's Changed
- fix: mark text completed on every text-complete point of response parsing by @vaishnavyogesh in #874
- fix(ResponseBuilder): change return method from toArray() to all() by @vaishnavyogesh in #875
- feat: concurrent tools execution by @vaishnavyogesh in #869
- styles: import fully qualified class names by @vaishnavyogesh in #878
- feat(ToolChoiceMap): add 'required' mapping for ToolChoice::Any and u… by @ggbr in #877
- fix(gemini): add additionalContent with grounding metadata to Structured handler by @angus-mcritchie in #828
- feat(openai): Image generation meta by @sixlive in #879
New Contributors
- @angus-mcritchie made their first contribution in #828
Full Changelog: v0.99.17...v0.99.18
v0.99.17
What's Changed
- Add Skills Support by @pushpak1300 in #865
- Testing stream docs by @sixlive in #866
- feat(tts/gemini): Added Gemini TTS support by @codejutsu1 in #736
- fix return type mismatch by @DGarbs51 in #868
- Update doc paths in SKILL.md search examples by @pushpak1300 in #871
New Contributors
- @codejutsu1 made their first contribution in #736
- @DGarbs51 made their first contribution in #868
Full Changelog: v0.99.16...v0.99.17
v0.99.16
What's Changed
- fix(mistral): streaming with thinking by @sixlive in #862
- fix(anthropic): structured output with tool choice by @sixlive in #860
- docs: fix header anchor symbol visibility by @vaishnavyogesh in #859
- fix: laravel mcp structured usage by @sixlive in #863
- Enhance provider errors by @sixlive in #864
Full Changelog: v0.99.15...v0.99.16
v0.99.15
What's Changed
- fix(openai): Add missing web search actions by @sixlive in #850
- Update value objects to be arrayable by @sixlive in #851
- fix(audio): missing file extension by @sixlive in #852
- fix(gemini): streaming with parallel tool calls by @sixlive in #853
- fix(gemini): structured output with thinking by @sixlive in #854
- fix(anthropic): stream thinking signature by @sixlive in #855
- fix(gemini): streaming thought signatures by @sixlive in #856
- fix: tool choice call loop by @sixlive in #857
Full Changelog: v0.99.14...v0.99.15