Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Client Laravel Package

openai-php/client

Community-maintained PHP client for the OpenAI API. Works with models, responses, chat/conversations, files, images, audio, embeddings, fine-tuning, and more. Simple, typed SDK with streaming support, built for modern PHP and Laravel setups.

View on GitHub
Deep Wiki
Context7
v0.15.0

Added

  • Add updateAttributes method to VectorStoresFiles (#626)
  • Add support for chat completion audio modality (#629)
  • Add Containers API (#636)
  • Add model field to CreateResponse for embeddings (#634)

Fixed

  • Fix streamed response tool call without arguments in VLLM (#623)
  • Fix support for code_interpreter_call on retrieve response (#632)
  • Fix JSON encoding to preserve UTF-8 characters using JSON_UNESCAPED_UNICODE (#628)
v0.14.0

Added

  • Add helper method output_text to Responses API (#579)
  • Add support for response cancel in Responses API (#588)
  • Add support for Image Generation Tool to Responses API (#594)
  • Add streaming for Image Generation in Responses API (#602)
  • Add support for Code Interpreter to Responses API (#610)
  • Add support for Remote MCP Tool in Responses API (#601)
  • Add realtime ephemeral tokens (#591)
  • Add streaming support for Audio transcriptions (#603)
  • Add realtime key documentation (#597)

Fixed

  • Add missing index to CreateStreamedResponseToolCall (#562)
  • Make $parameters optional in thread create() method (#577)
  • Support Azure model.list endpoint (#599)
  • Add reasoning_effort support to Assistants (#606)
  • Use proper parameter order in Response constructor (#615)
  • Support reused prompts/instructions in Responses API (#616)

Changed

  • Use proper header notation for Responses API docs (#596)
  • Collapse legacy/deprecated sections by default in docs (#609)

Deprecated

  • mark Assistants API as deprecated (#607)
  • mark Completions API as legacy (#608)
v0.13.0

Added

  • Add support for Responses API (#541)

Fixed

  • Add Throwable type support to ClientFake responses (#576)
v0.12.0

Changed

  • Removed PHP 8.1 support
v0.11.0

Added

  • Add logprobs to Chat Response (#533)
  • Add ResponseHasMetaInformationContract contract to ThreadRunStepResponse (#523)
  • Add support for 'attributes' on vector store files (#551)
  • Add OpenAI compatibility support for Google Gemini (#502)
  • Add compatibility for Aliyun LLM APIs (#530)
  • Add ability to pass arguments to files list request (#557)
  • Add search vector store functionality (#559)
  • Add Image Response usage (#571)
  • Add category applied input types to moderation response (#572)
  • Add support for annotations in Chat response (Web Search) (#564)
  • Add test coverage for assistants streaming and related functionality (#444)

Changed

  • Update GitHub Action deprecations & opt into Dependabot (#544)
  • Draw attention away from deprecated completions endpoints in docs (#548)

Fixed

  • Fix type definition for responses in ClientFake::addResponses method (#382)
  • Fix Content retrieval in HttpTransport with custom HttpClient (#343)
  • Fix correct completion endpoint when logprobs missing (#550)
  • Fix chat completion choices to allow responses without logprobs field (#554)
  • Fix support for streaming of non-OpenAI models that return "ping" (#556)
  • Fix OpenRouter token usage response (#560)
  • Fix Gemini list models (#567)
v0.10.3

Added

  • Add http status to ErrorException (#487)
  • Add cached_usage to CreateResponseUsage for Chat (#494)
  • Add moderation categories (Illicit*) (#495)

Fixed

  • Fix missing parameters on FineTuning RetrieveJobResponse (#496)
  • Fix nullable description on Assistants Tool Function (#484)
  • Fix attachment key missing on ThreadMessageResponse (#471)
v0.10.2

Added

  • Add thread.run.incomplete to ThreadRunStreamResponse (#421)
  • Add withProject to configure the project for the client (#377)
  • Add fake b64_json to support mocking (#462)

Fixed

  • Fix image url content type to use url instead of file_id (#422)
  • Fix type error on VectorStoresFilesTestResources (#460)
  • Fix vector store cancel method (#435)
v0.10.1

Added

  • Add support for Assistants API v2 and Vector Stores endpoints (#420)

Docs

  • Add vector store endpoints documentation (#420)
v0.9.2

Added

  • Support for usage stream option on chat endpoint (#398)

Fixed

  • Missing output parameter on streamed code interpreter output (#406)
v0.10.0-beta.1

Added

  • Add support for Assistants API v2 and Vector Stores endpoint (#405)
v0.9.1

Added

  • Add support for Batches endpoint (#403)
v0.9.0

Added

  • Assistants: add streaming support (#367)
v0.8.5

Added

  • Audio: add support for timestamp_granularities (#374)
v0.8.4

Fixed

  • Fix default fake data for meta information (#332)
v0.8.3

Added

  • ThreadRun: Add "usage" property to the response (#330)
v0.8.2

Fixed

  • ThreadRunStep: "content" missing in response if result has not been submitted (#319)
  • Files: "bytes" in retrieve response is may null (#325)
v0.8.1

Added

  • Add support for Assistants and Threads endpoint (#271)
  • Add stream support for Text To Speech (#235)
  • Add test resources for Assistants and Threads (#279)

Changed

  • Remove thread messages delete endpoint (#309)

Fixed

  • Handle x-request-id in meta information (#283)
  • Handle meta information from azure headers (#307)
  • Add missing default system_fingerprint to chat create response fixture (#308)
  • Convert headers to lower case before creation meta information (#306)

Docs

  • Remove threads list endpoint from README.md (#275)
  • Clarify assistants files docs (#278)
  • Fix image creation example (#297)
  • Fix outdated links (#299)
  • Add troubleshooting section and explain how to configure HTTP client timeouts
v0.8.0-beta.3

Removed

  • Remove list() from Threads resource
v0.8.0

Added

  • Add support for Assistants and Threads endpoint (#271)
v0.8.0-beta.2

Fixed

  • instruction on ThreadRunResponse may be nullable
v0.7.9

Added

  • Add revised_prompt property to CreateResponseData on the image create endpoint (#257)

Docs

  • Fix model in one of the examples
v0.7.10

Added

  • Add RetrieveJobResponseError and batch_size, learning_rate_multiplier parameters on RetrieveJobResponseHyperparameters for fine-tuning endpoint (#255)
v0.8.0-beta.1

Added

  • Add support for Assistants and Threads endpoint (#243)
v0.7.8

Added

  • Add support for GTP-4 vision on the chat completion endpoint (#241)
v0.7.7

Added

  • Add support for tool calls on the chat completion endpoint (#239)
v0.7.6

Added

  • Add support for the audio speech endpoint (#237)
v0.7.5

Changed

  • Update Models endpoint response object to the latest API changes (#235)

Docs

  • Update FineTuning job id names (#230)
  • Use Chat resource as the primary example
v0.7.4

Fixed

  • nEpochs on RetrieveJobResponseHyperparameters may be string
  • processingMs ond MetaInformationOpenAI may be null (#218)
v0.7.3

Added

  • Add "has_more" to fine-tuning jobs and events list responses (#206)

Changed

  • Add parameters to the fine-tuning jobs list request to filter the results (#206)

Fixed

  • error_code may be int
v0.7.2

Fixed

  • Missing openai-version header from Azure
v0.7.1

Fixed

  • Typo in class name MetaInformationOpenAI
v0.7.0

Added

  • Add support for the fine-tuning API (#199)
  • Provide access to header / meta information for all responses (#195)

Changed

  • Mark FineTunes resource as deprecated
  • Mark Edits resource as deprecated
  • Add missing moderation enums (#178)

Fixed

  • Chat completion create response with function calling on Azure (#184)
  • Breaking change on OpenAI API regarding "transient" field in Audio translations (#168)
  • Docs: fix OpenAI URL
v0.6.3

Fixed

  • Breaking change on OpenAI API regarding "transient" field in Audio (#160)
v0.6.2

Changed

  • Error handling: use error code as exception message if error message is empty (#150)

Fixed

  • Error handling: Catch error in stream responses (#150)
  • Error handling: Handle errors where message is an array (#150)
v0.6.1

Fixed

  • Chat/CreateResponse faking with function_call (#145)
v0.6.0

Added

  • Add support for function calling in the Chat Completions API (#144)
v0.5.3

Fixed

  • Exception handling for server error with non default content type header (#134)
  • Faking embedding responses for multidimensional vectors (#131)
v0.5.2

Added

  • Add support for psr/http-message ^2.0 (#130)
v0.5.1

Fixed

  • fix: stream broken after checking for errors (regression of #113)
v0.5.0

Added

  • Support for HTTP base uri (#106)

Changed

  • unify exception handling between HTTP client implementations (#113)

Fixed

  • fix toArray() on CreateStreamedResponseDelta to match the original API response (#108)

Docs

  • explain usage for "OpenAI on Azure" (#109)
v0.4.2

Added

  • Testing support (#71)

Changed

  • Trim ApiKey before sending it to the API (#101)

Fixed

  • Nullable fields on error response (#102)
v0.4.1

Added

  • Stream support (#84)
v0.4.0

Changed

  • Removed dependency for guzzlehttp/guzzle and use PSR-18 client discovery instead (#75)
  • Add Client factory which allows for a custom HTTP client
  • Client factory further accepts custom HTTP headers, query parameters and API URI
v0.3.5

Fixed

  • status_details can be a string in file responses. Affects Files and FineTunes resources (#68)
v0.3.4

Added

  • Audio resource to turn audio into text powered by whisper-1 (#62)
v0.3.3

Added

  • Chat resource aka ChatGPT powered by gpt-3.5-turbo (#60)
v0.3.2

Fixed

  • Nullable finish_reason on Completions CreateResponse (#52, 545e0ab)
v0.3.1

Fixed

  • Missing events on FineTunes RetrieveResponse (#41)
v0.3.0

Changed

  • OpenAI::client() first argument changed from apiToken to apiKey (#25)

Fixed

  • Getting contents from Guzzle's response causing issues with middleware (#33)
v0.2.1

Fixed

  • FineTunes create response: batch_size, learning_rate and fine_tuned_model are nullable (#16)
  • File responses: add missing fields status and status_details
v0.2.0

Added

  • Add images() resource to interact with DALL-E

Fixed

  • Parse completions create response with logprobs correctly
v0.1.0

Added

  • First version
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport