PHPackages                             ruscoe/openai-php - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. ruscoe/openai-php

ActiveLibrary[API Development](/categories/api)

ruscoe/openai-php
=================

PHP library for the OpenAI API

1.3.0(1y ago)330MITPHPPHP &gt;=8.1.0

Since Apr 27Pushed 12mo ago1 watchersCompare

[ Source](https://github.com/ruscoe/openai-php)[ Packagist](https://packagist.org/packages/ruscoe/openai-php)[ Docs](https://github.com/ruscoe/openai-php)[ RSS](/packages/ruscoe-openai-php/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (4)Dependencies (2)Versions (6)Used By (0)

[![openai_php_banner](https://private-user-images.githubusercontent.com/87952/437200549-2da1684b-192d-42ad-b500-3457a70be69b.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzU2MjYzNDIsIm5iZiI6MTc3NTYyNjA0MiwicGF0aCI6Ii84Nzk1Mi80MzcyMDA1NDktMmRhMTY4NGItMTkyZC00MmFkLWI1MDAtMzQ1N2E3MGJlNjliLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA0MDglMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNDA4VDA1MjcyMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTg3NjE5NzNmNTlhMGY0ODMzYzk4MGNlNTU0ZjMwZDUyZTlhOWJhOTg1N2IxMjIxN2Q0MDZhN2ViYmEyMjJkMjgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.WqEJaUJyijuViTFmDMdRTRhvl6w80GUHeraodBHkJMM)](https://private-user-images.githubusercontent.com/87952/437200549-2da1684b-192d-42ad-b500-3457a70be69b.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzU2MjYzNDIsIm5iZiI6MTc3NTYyNjA0MiwicGF0aCI6Ii84Nzk1Mi80MzcyMDA1NDktMmRhMTY4NGItMTkyZC00MmFkLWI1MDAtMzQ1N2E3MGJlNjliLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA0MDglMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNDA4VDA1MjcyMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTg3NjE5NzNmNTlhMGY0ODMzYzk4MGNlNTU0ZjMwZDUyZTlhOWJhOTg1N2IxMjIxN2Q0MDZhN2ViYmEyMjJkMjgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.WqEJaUJyijuViTFmDMdRTRhvl6w80GUHeraodBHkJMM)

PHP library for the OpenAI API
==============================

[](#php-library-for-the-openai-api)

An unofficial library for OpenAI's API.

[![release](https://camo.githubusercontent.com/cb9d00c2a571916e639506062684691333dd7a2b927a20fb8869a9cc1379efb9/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f727573636f652f6f70656e61692d706870)](https://camo.githubusercontent.com/cb9d00c2a571916e639506062684691333dd7a2b927a20fb8869a9cc1379efb9/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f727573636f652f6f70656e61692d706870)

Used by
-------

[](#used-by)

- [DrupalGen](https://github.com/ruscoe/drupalgen) - ChatGPT content generation for Drupal.
- [GPT Fortune](https://github.com/ruscoe/gpt-fortune) - Generates a fortune cookie message using ChatGPT.
- [PHP AI Agents](https://github.com/ruscoe/php-ai-agents) - AI agents written in PHP.

Requirements
------------

[](#requirements)

- PHP 8.1 or above
- [Composer](https://getcomposer.org)
- An [OpenAI API key](https://platform.openai.com/docs/api-reference/authentication)

Quick set up
------------

[](#quick-set-up)

`git clone git@github.com:ruscoe/openai-php.git`

`cd openai-php`

`composer install`

Usage examples
--------------

[](#usage-examples)

The following examples assume you store your API key in an environment variable. To do this on a Linux or MacOS system, run:

`export OPENAI_API_KEY=sk-XA0yN...`

Be sure to substitute your own API key after `OPENAI_API_KEY=`.

### Completions

[](#completions)

This example asks the `gpt-4o` model to describe a keyboard. It instructs the OpenAI API to use more than the default number of tokens so a reasonable length description can be returned.

```
