Commit Graph
312 Commits
Author SHA1 Message Date
Igor Berlenko 69e3bbb1eb Update client.go - allow to skip Authorization header (#658)
* Update client.go - allow to skip Authorization header

* Update client.go
2024-02-16 14:22:38 +04:00
chrbsg ff61bbb322 Add RunRequest field AdditionalInstructions (#656)
AdditionalInstructions is an optional string field used to append
additional instructions at the end of the instructions for the run. This
is useful for modifying the behavior on a per-run basis without
overriding other instructions.

Also, change the Model and Instructions *string fields to string.
2024-02-15 20:12:22 +04:00
66bae3ee73 Content-type fix (#659)
* charset fixes

* make linter happy (#661)

---------

Co-authored-by: grulex <god@vk.com>
Co-authored-by: Alexander Baranov <677093+sashabaranov@users.noreply.github.com>
2024-02-15 20:11:58 +04:00
Alexander Baranov 11ad4b69d0 make linter happy (#661) 2024-02-15 16:02:48 +04:00
shadowpigyandshadowpigy a7954c854c Feat: Add assistant usage (#649)
* Feat: Add assistant usage

---------

Co-authored-by: shadowpigy <shadowpigy@github.com>
2024-02-08 17:08:30 +04:00
xuanming.zhang 6c2e3162df Added support for CreateSpeech Azure models (#657) 2024-02-08 11:40:39 +04:00
chrbsg 69e3fcbc27 Fix typo assitantInstructions (#655) 2024-02-06 23:04:40 +04:00
shadowpigyandshadowpigy bb6ed54530 Fix: Add RunStatusCancelled (#650)
Co-authored-by: shadowpigy <shadowpigy@github.com>
2024-02-02 16:41:39 +04:00
Liu Shuang bc8cdd33d1 add GPT3Dot5Turbo0125 model (#648) 2024-02-02 14:30:24 +04:00
chenhhA 06ff541559 Add new struct filed dimensions for embedding API (#645)
* add new struct filed dimensions for embedding API

* docs: remove long single-line comments

* change embedding request param Dimensions type to int
2024-01-29 11:09:56 +04:00
Daniil 4c41f24a99 Support January 25, 2024, models update. (#644) 2024-01-26 12:41:48 +04:00
Qiying Wang eff8dc1118 fix(audio): fix audioTextResponse decode (#638)
* fix(audio): fix audioTextResponse decode

* test(audio): add audioTextResponse decode test

* test(audio): simplify code
2024-01-17 21:42:07 +04:00
Grey Baker 4ce03a919a Fix Azure embeddings model detection by passing string to fullURL (#637) 2024-01-16 13:32:48 +04:00
韩宏敏andHanHongmin 09f6920ad0 fixed #594 (#609)
APITypeAzure dall-e3 model url

Co-authored-by: HanHongmin <hanhongmin@inmyshow.com>
2024-01-15 16:01:49 +04:00
Matthew Jaffee e01a2d7231 convert EmbeddingModel to string type (#629)
This gives the user the ability to pass in models for embeddings that are not
already defined in the library. Also more closely matches how the completions
API works.
2024-01-15 13:33:02 +04:00
Alexander Kledal 682b7adb0b Update README.md (#631)
Ensure variables in examples are valid
2024-01-11 14:45:15 +04:00
Danai Antoniou f10955ce09 Log probabilities for chat completion output tokens (#625)
* Add logprobs

* Logprobs pointer

* Move toplogporbs

* Create toplogprobs struct

* Remove pointers
2024-01-09 20:50:56 +04:00
xuanming.zhang c9615e0cbe Added support for createImage Azure models (#608) 2024-01-03 17:42:57 +06:00
mikeb26 a09cb0c528 Add completion-with-tool example (#598)
As a user of this go SDK it was not immediately intuitive to me how to
correctly utilize the function calling capability of GPT4
(https://platform.openai.com/docs/guides/function-calling). While the
aformentioned link provides a helpful example written in python, I
initially tripped over how to correclty translate the specification of
function arguments when usingthis go SDK.

To make it easier for others in the future this commit adds a
completion-with-tool example showing how to correctly utilize the
function calling capability of GPT4 using this SDK end-to-end in a
CreateChatCompletion() sequence.
2023-11-26 12:45:28 +04:00
Radosław Kintzi 03caea89b7 Add support for multi part chat messages (and gpt-4-vision-preview model) (#580)
* Add support for multi part chat messages

OpenAI has recently introduced a new model called gpt-4-visual-preview,
which now supports images as input. The chat completion endpoint accepts
multi-part chat messages, where the content can be an array of structs
in addition to the usual string format.

This commit introduces new structures and constants to represent
different types of content parts. It also implements the json.Marshaler
and json.Unmarshaler interfaces on ChatCompletionMessage.

* Add ImageURLDetail and ChatMessagePartType types

* Optimize ChatCompletionMessage deserialization

* Add ErrContentFieldsMisused error
2023-11-24 17:17:00 +04:00
Alexander Baranov 7260991327 Update PULL_REQUEST_TEMPLATE.md (#606) 2023-11-24 13:36:10 +04:00
pjuhaszandPeter Juhasz f87909596f Add canary-tts to speech models (#603)
Co-authored-by: Peter Juhasz <juhasz.peter@uhusystems.com>
2023-11-24 11:34:25 +04:00
Albert Putra Purnama a130cfee26 Add missing response fields for pagination (#584) 2023-11-18 11:01:06 +04:00
Albert Putra Purnama 9efad284d0 Updates the tool call struct (#595) 2023-11-18 10:59:01 +04:00
Charlie Revett 4fd904c292 Add File purposes as constants (#577)
* Add purposes.

* Formatting.
2023-11-18 10:55:58 +04:00
Charlie Revett 18465723f7 Add missing struct properties. (#579) 2023-11-15 20:25:18 +04:00
Ccheers 3220f19ee2 feat(runapi): add RunStepList response args https://platform.openai.com/docs/api-reference/runs/listRunSteps (#573) 2023-11-15 20:23:41 +04:00
Liron Levin 464b85b6d7 Pagination fields are missing from assistants list beta API (#571)
curl "https://api.openai.com/v1/assistants?order=desc&limit=20" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "OpenAI-Beta: assistants=v1"
{
  "object": "list",
  "data": [],
  "first_id": null,
  "last_id": null,
  "has_more": false
}
2023-11-15 20:22:39 +04:00
Donnie Flood 71848ccf69 feat: support direct bytes for file upload (#568)
* feat: support direct bytes for file upload

* add test for errors

* add coverage
2023-11-15 20:08:48 +04:00
Donnie Flood fe67abb97e fix: add beta assistant header to CreateMessage call (#566) 2023-11-15 20:06:57 +04:00
Chris HuaandLachlan Laycock 515de0219d feat: initial TTS support (#528)
* feat: initial TTS support

* chore: lint, omitempty

* chore: dont use pointer in struct

* fix: add mocked server tests to speech_test.go

Co-authored-by: Lachlan Laycock <supagroova@gmail.com>

* chore: update imports

* chore: fix lint

* chore: add an error check

* chore: ignore lint

* chore: add error checks in package

* chore: add test

* chore: fix test

---------

Co-authored-by: Lachlan Laycock <supagroova@gmail.com>
2023-11-13 18:35:34 +04:00
Urjit Singh BhatiaandSimone Vellei b7cac703ac Feat/messages api (#546)
* fix test server setup:
- go map access is not deterministic
- this can lead to a route: /foo/bar/1 matching /foo/bar before matching /foo/bar/1 if the map iteration go through /foo/bar first since the regex match wasn't bound to start and end anchors
- registering handlers now converts * in routes to .* for proper regex matching
- test server route handling now tries to fully match the handler route

* add missing /v1 prefix to fine-tuning job cancel test server handler

* add create message call

* add messages list call

* add get message call

* add modify message call, fix return types for other message calls

* add message file retrieve call

* add list message files call

* code style fixes

* add test for list messages with pagination options

* add beta header to msg calls now that #545 is merged

* Update messages.go

Co-authored-by: Simone Vellei <henomis@gmail.com>

* Update messages.go

Co-authored-by: Simone Vellei <henomis@gmail.com>

* add missing object details for message, fix tests

* fix merge formatting

* minor style fixes

---------

Co-authored-by: Simone Vellei <henomis@gmail.com>
2023-11-13 18:33:26 +04:00
Ikko Eltociear Ashimine 9fefd50e12 Fix typo in chat_test.go (#564)
requetsts -> requests
2023-11-12 15:10:00 +04:00
Kyle Bolton 35495ccd36 Add json:"metadata,omitempty" to RunRequest struct (#561)
Metadata is an optional field per the api spec
https://platform.openai.com/docs/api-reference/runs/createRun
2023-11-12 15:09:40 +04:00
Simone Vellei d6f3bdcdac Feat implement Run APIs (#560)
* chore: first commit

* add apis

* chore: add tests

* feat add apis

* chore: add api and tests

* chore: add tests

* fix

* trigger build

* fix

* chore: formatting code

* chore: add pagination type
2023-11-09 23:17:30 +04:00
Simone Vellei 78862a2798 fix: add missing fields in tool_calls (#558) 2023-11-09 18:05:03 +04:00
Urjit Singh Bhatia 8127072553 fix test server setup: (#549)
* fix test server setup:
- go map access is not deterministic
- this can lead to a route: /foo/bar/1 matching /foo/bar before matching /foo/bar/1 if the map iteration go through /foo/bar first since the regex match wasn't bound to start and end anchors
- registering handlers now converts * in routes to .* for proper regex matching
- test server route handling now tries to fully match the handler route

* add missing /v1 prefix to fine-tuning job cancel test server handler
2023-11-09 12:20:39 +04:00
Gabriel Burt e3e065deb0 Add SystemFingerprint and chatMsg.ToolCallID field (#543)
* fix ToolChoiche typo

* add tool_call_id to ChatCompletionMessage

* add /chat system_fingerprint response field

* check empty ToolCallID JSON marshaling

and add omitempty for tool_call_id

* messages also required; don't omitempty

* add Type to ToolCall, required by the API

* fix test, omitempty for response_format ptr

* fix casing of role values in comments
2023-11-09 12:08:43 +04:00
Simone Vellei bc89139c1d Feat Implement threads API (#536)
* feat: implement threads API

* fix

* add tests

* fix

* trigger£

* trigger

* chore: add beta header
2023-11-09 12:05:44 +04:00
渡邉祐一 / Yuichi Watanabe 08c167fecf test: fix compile error in api integration test (#548) 2023-11-08 13:21:51 +04:00
Simone Vellei a2d2bf6851 Fix Refactor assistant api (#545)
* fix: refactor assistant API

* fix

* trigger build

* fix: use AssistantDeleteResponse
2023-11-08 13:20:20 +04:00
Mike Cutalo a0159ad2b0 Support new fields for /v1/images/generation API (#530)
* add support for new image/generation api

* fix one lint

* add revised_prompt to response

* fix lints

* add CreateImageQualityStandard
2023-11-08 16:16:22 +09:00
Simone Vellei a20eb08b79 fix: use pointer for ChatCompletionResponseFormat (#544) 2023-11-08 06:30:05 +09:00
Simone Vellei 1ad6b6f53d Feat Support tools and tools choice new fileds (#526)
* feat: support tools and tools choice new fileds

* fix: use value not pointers
2023-11-07 19:53:24 +04:00
Simone Vellei 3063e676bf Feat Implement assistants API (#535)
* chore: implement assistants API

* fix

* fix

* chore: add tests

* fix tests

* fix linting
2023-11-07 19:20:59 +04:00
Simone Vellei 6d9c3a6365 Feat Support chat completion response format and seed new fields (#525)
* feat: support chat completion response format

* fix linting error

* fix

* fix linting

* Revert "fix linting"

This reverts commit 015c6ad62aad561218b693225f58670b5619dba8.

* Revert "fix"

This reverts commit 7b2ffe28c3e586b629d23479ec1728bf52f0c66f.

* Revert "fix linting error"

This reverts commit 29960423784e296cb6d22c5db8f8ccf00cac59fd.

* chore: add seed new parameter

* fix
2023-11-07 18:25:21 +04:00
Carson Kahn d07833e19b Doc ways to improve reproducability besides Temp (#532) 2023-11-07 13:27:29 +04:00
Simon Klee 0664105387 lint: fix linter warnings reported by golangci-lint (#522)
- Fix #519
2023-11-07 13:23:06 +04:00
Eli Bendersky 9e0232f941 Fix typo in README: AdaEmbeddingV2 (#516)
Copy-pasting the old sample caused compilation errors
2023-11-07 00:27:08 +04:00
Simon Klee 6c52952b69 feat(completion): add constants for new GPT models (#520)
Added constants for new GPT models including `gpt-4-1106-preview`,
`gpt-4-vision-preview` and `gpt-3.5-turbo-1106`.

The models were announced in the following blog post: https://openai.com/blog/new-models-and-developer-products-announced-at-devday
2023-11-07 00:22:48 +04:00