Skip to content
This repository has been archived by the owner on Oct 23, 2023. It is now read-only.

Commit

Permalink
v1.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
om4james committed Nov 7, 2022
1 parent 8e7e508 commit de5535a
Show file tree
Hide file tree
Showing 36 changed files with 2,489 additions and 213 deletions.
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,18 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## 1.2.0 - 2022-11-07

### Added
- Add support for DALL·E [image generation](https://beta.openai.com/docs/guides/images).
- Add new `ImageGenerations` Handler, which creates an image given a prompt.
- Add new `ImagesEdits` Handler, which creates an edited or extended image given an original image and a prompt
- Add new `ImagesVariations` Handler, which creates a variation of a given image.

### Changed
- Improve Handler unit tests.
- API version updated from 1.0.6 to 1.1.0.

## 1.1.0 - 2022-10-31

### Changed
Expand Down
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,13 +87,13 @@ In the **Usage** code above, customize the `Authentication` constructor to your

The primary class you will interact with is the `Client` class (`Tectalic\OpenAi\Client`).

This `Client` class also contains the helper methods that let you quickly access the 10 API Handlers.
This `Client` class also contains the helper methods that let you quickly access the 13 API Handlers.

Please see below for a complete list of supported handlers and methods.

### Supported API Handlers and Methods

This package supports 17 API Methods, which are grouped into 10 API Handlers.
This package supports 20 API Methods, which are grouped into 13 API Handlers.

See the table below for a full list of API Handlers and Methods.

Expand All @@ -113,6 +113,9 @@ See the table below for a full list of API Handlers and Methods.
|`FineTunes::retrieve()`|Gets info about the fine-tune job.<br />Learn more about Fine-tuning|`GET` `/fine-tunes/{fine_tune_id}`|
|`FineTunesCancel::cancelFineTune()`|Immediately cancel a fine-tune job.|`POST` `/fine-tunes/{fine_tune_id}/cancel`|
|`FineTunesEvents::listFineTune()`|Get fine-grained status updates for a fine-tune job.|`GET` `/fine-tunes/{fine_tune_id}/events`|
|`ImagesEdits::createImage()`|Creates an edited or extended image given an original image and a prompt.|`POST` `/images/edits`|
|`ImagesGenerations::create()`|Creates an image given a prompt.|`POST` `/images/generations`|
|`ImagesVariations::createImage()`|Creates a variation of a given image.|`POST` `/images/variations`|
|`Models::list()`|Lists the currently available models, and provides basic information about each one such as the owner and availability.|`GET` `/models`|
|`Models::retrieve()`|Retrieves a model instance, providing basic information about the model such as the owner and permissioning.|`GET` `/models/{model}`|
|`Models::delete()`|Delete a fine-tuned model. You must have the Owner role in your organization.|`DELETE` `/models/{model}`|
Expand Down
76 changes: 76 additions & 0 deletions artifacts/build-issues.txt
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,56 @@ Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/edits].Oper
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/edits].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[usage].Schema[prompt_tokens].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/edits].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[usage].Schema[completion_tokens].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/edits].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[usage].Schema[total_tokens].
No PathItem summary or description. Source: OpenApi.Paths.PathItem[/images/generations]. Target: Api.Handler[ImagesGenerations].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].RequestBody.
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].RequestBody.MediaType[application/json].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].RequestBody.MediaType[application/json].Schema.Schema[prompt].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].RequestBody.MediaType[application/json].Schema.Schema[n].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].RequestBody.MediaType[application/json].Schema.Schema[size].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].RequestBody.MediaType[application/json].Schema.Schema[response_format].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].RequestBody.MediaType[application/json].Schema.Schema[user].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].Responses.
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].Responses.Response[200].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].Responses.Response[200].MediaType[application/json].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[created].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].Schema[items].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].Schema[items].Schema[url].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/generations].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].Schema[items].Schema[b64_json].
No PathItem summary or description. Source: OpenApi.Paths.PathItem[/images/edits]. Target: Api.Handler[ImagesEdits].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].RequestBody.
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].RequestBody.MediaType[multipart/form-data].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[image].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[mask].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[prompt].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[n].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[size].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[response_format].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[user].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].Responses.
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].Responses.Response[200].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].Responses.Response[200].MediaType[application/json].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[created].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].Schema[items].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].Schema[items].Schema[url].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/edits].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].Schema[items].Schema[b64_json].
No PathItem summary or description. Source: OpenApi.Paths.PathItem[/images/variations]. Target: Api.Handler[ImagesVariations].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].RequestBody.
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].RequestBody.MediaType[multipart/form-data].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[image].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[n].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[size].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[response_format].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].RequestBody.MediaType[multipart/form-data].Schema.Schema[user].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].Responses.
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].Responses.Response[200].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].Responses.Response[200].MediaType[application/json].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[created].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].Schema[items].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].Schema[items].Schema[url].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/images/variations].Operation[post].Responses.Response[200].MediaType[application/json].Schema.Schema[data].Schema[items].Schema[b64_json].
No PathItem summary or description. Source: OpenApi.Paths.PathItem[/embeddings]. Target: Api.Handler[Embeddings].
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/embeddings].Operation[post].RequestBody.
Ignored. No visitors for this input. Source: OpenApi.Paths.PathItem[/embeddings].Operation[post].RequestBody.MediaType[application/json].
Expand Down Expand Up @@ -552,6 +602,32 @@ Component ignored. Source: OpenApi.Components.Schema[CreateEditResponse].Schema[
Component ignored. Source: OpenApi.Components.Schema[CreateEditResponse].Schema[usage].Schema[prompt_tokens].
Component ignored. Source: OpenApi.Components.Schema[CreateEditResponse].Schema[usage].Schema[completion_tokens].
Component ignored. Source: OpenApi.Components.Schema[CreateEditResponse].Schema[usage].Schema[total_tokens].
Component ignored. Source: OpenApi.Components.Schema[CreateImageRequest].
Component ignored. Source: OpenApi.Components.Schema[CreateImageRequest].Schema[prompt].
Component ignored. Source: OpenApi.Components.Schema[CreateImageRequest].Schema[n].
Component ignored. Source: OpenApi.Components.Schema[CreateImageRequest].Schema[size].
Component ignored. Source: OpenApi.Components.Schema[CreateImageRequest].Schema[response_format].
Component ignored. Source: OpenApi.Components.Schema[CreateImageRequest].Schema[user].
Component ignored. Source: OpenApi.Components.Schema[ImagesResponse].
Component ignored. Source: OpenApi.Components.Schema[ImagesResponse].Schema[created].
Component ignored. Source: OpenApi.Components.Schema[ImagesResponse].Schema[data].
Component ignored. Source: OpenApi.Components.Schema[ImagesResponse].Schema[data].Schema[items].
Component ignored. Source: OpenApi.Components.Schema[ImagesResponse].Schema[data].Schema[items].Schema[url].
Component ignored. Source: OpenApi.Components.Schema[ImagesResponse].Schema[data].Schema[items].Schema[b64_json].
Component ignored. Source: OpenApi.Components.Schema[CreateImageEditRequest].
Component ignored. Source: OpenApi.Components.Schema[CreateImageEditRequest].Schema[image].
Component ignored. Source: OpenApi.Components.Schema[CreateImageEditRequest].Schema[mask].
Component ignored. Source: OpenApi.Components.Schema[CreateImageEditRequest].Schema[prompt].
Component ignored. Source: OpenApi.Components.Schema[CreateImageEditRequest].Schema[n].
Component ignored. Source: OpenApi.Components.Schema[CreateImageEditRequest].Schema[size].
Component ignored. Source: OpenApi.Components.Schema[CreateImageEditRequest].Schema[response_format].
Component ignored. Source: OpenApi.Components.Schema[CreateImageEditRequest].Schema[user].
Component ignored. Source: OpenApi.Components.Schema[CreateImageVariationRequest].
Component ignored. Source: OpenApi.Components.Schema[CreateImageVariationRequest].Schema[image].
Component ignored. Source: OpenApi.Components.Schema[CreateImageVariationRequest].Schema[n].
Component ignored. Source: OpenApi.Components.Schema[CreateImageVariationRequest].Schema[size].
Component ignored. Source: OpenApi.Components.Schema[CreateImageVariationRequest].Schema[response_format].
Component ignored. Source: OpenApi.Components.Schema[CreateImageVariationRequest].Schema[user].
Component ignored. Source: OpenApi.Components.Schema[CreateModerationRequest].
Component ignored. Source: OpenApi.Components.Schema[CreateModerationRequest].Schema[input].
Component ignored. Source: OpenApi.Components.Schema[CreateModerationRequest].Schema[input].Schema[0].
Expand Down
6 changes: 3 additions & 3 deletions manifest.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"libraryVersion": "1.0.1",
"apiVersion": "1.0.6",
"buildVersion": "1.1.4"
"libraryVersion": "1.2.0",
"apiVersion": "1.1.0",
"buildVersion": "1.1.5"
}
38 changes: 37 additions & 1 deletion src/Client.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@
use Tectalic\OpenAi\Handlers\FineTunes;
use Tectalic\OpenAi\Handlers\FineTunesCancel;
use Tectalic\OpenAi\Handlers\FineTunesEvents;
use Tectalic\OpenAi\Handlers\ImagesEdits;
use Tectalic\OpenAi\Handlers\ImagesGenerations;
use Tectalic\OpenAi\Handlers\ImagesVariations;
use Tectalic\OpenAi\Handlers\Models;
use Tectalic\OpenAi\Handlers\Moderations;
use Tectalic\OpenAi\Models\AbstractModel;
Expand Down Expand Up @@ -86,6 +89,39 @@ public function edits(): Edits
return new \Tectalic\OpenAi\Handlers\Edits($this);
}

/**
* Access to the imagesGenerations handler.
*
* @api
* @return ImagesGenerations
*/
public function imagesGenerations(): ImagesGenerations
{
return new \Tectalic\OpenAi\Handlers\ImagesGenerations($this);
}

/**
* Access to the imagesEdits handler.
*
* @api
* @return ImagesEdits
*/
public function imagesEdits(): ImagesEdits
{
return new \Tectalic\OpenAi\Handlers\ImagesEdits($this);
}

/**
* Access to the imagesVariations handler.
*
* @api
* @return ImagesVariations
*/
public function imagesVariations(): ImagesVariations
{
return new \Tectalic\OpenAi\Handlers\ImagesVariations($this);
}

/**
* Access to the embeddings handler.
*
Expand Down Expand Up @@ -333,7 +369,7 @@ private function mergeRequestParts(

$request = $request->withHeader(
'User-Agent',
'Tectalic OpenAI REST API Client/1.0.1'
'Tectalic OpenAI REST API Client/1.2.0'
);

// Merge Headers.
Expand Down
Loading

0 comments on commit de5535a

Please sign in to comment.