Commit Graph

263 Commits

Author SHA1 Message Date
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
Alexander Baranov
c47ddfc1a1 Update README.md (#511) 2023-10-10 21:22:45 +04:00
Liu Shuang
b77d01edca Support get http header and x-ratelimit-* headers (#507)
* feat: add headers to http response

* feat: support rate limit headers

* fix: go lint

* fix: test coverage

* refactor streamReader

* refactor streamReader

* refactor: NewRateLimitHeaders to newRateLimitHeaders

* refactor: RateLimitHeaders Resets filed

* refactor: move RateLimitHeaders struct
2023-10-10 19:29:41 +04:00
Simone Vellei
8e165dc9aa Feat Add headers to openai responses (#506)
* feat: add headers to http response

* chore: add test

* fix: rename to httpHeader
2023-10-09 19:41:54 +04:00
Simone Vellei
533935e4fc fix: use any for n_epochs (#499)
* fix: use custom marshaler for n_epochs

* chore: use any for n_epochs
2023-10-06 13:32:21 +04:00
e. alvarez
84f77a0acd Add DotProduct Method and README Example for Embedding Similarity Search (#492)
* Add DotProduct Method and README Example for Embedding Similarity Search

- Implement a DotProduct() method for the Embedding struct to calculate the dot product between two embeddings.
- Add a custom error type for vector length mismatch.
- Update README.md with a complete example demonstrating how to perform an embedding similarity search for user queries.
- Add unit tests to validate the new DotProduct() method and error handling.

* Update README to focus on Embedding Semantic Similarity
2023-10-02 18:39:10 +04:00
Brendan Martin
0d5256fb82 added delete fine tune model endpoint (#497) 2023-09-25 12:08:45 +04:00
Simone Vellei
8e4b7963a3 Chore Support base64 embedding format (#485)
* chore: support base64 embedding format

* fix: add sizeOfFloat32

* chore: refactor base64 decoding

* chore: add tests

* fix linting

* fix test

* fix return error

* fix: use smaller slice for tests

* fix [skip ci]

* chore: refactor test to consider CreateEmbeddings response

* trigger build

* chore: remove named returns

* chore: refactor code to simplify the understanding

* chore: tests have been refactored to match the encoding format passed by request

* chore: fix tests

* fix

* fix
2023-09-11 17:44:46 +04:00
NullpointerW
3589837b22 Update OpenAPI file return struct (#486)
* completionBatchingRequestSupport

* lint fix

* fix Run test fail

* fix TestClientReturnsRequestBuilderErrors fail

* fix Codecov  check

* ignore TestClientReturnsRequestBuilderErrors lint

* fix lint again

* lint again*2

* replace checkPromptType  implementation

* remove nil check

* update file return struct

---------

Co-authored-by: W <825708370@qq.com>
2023-09-07 14:52:47 +04:00
Simone Vellei
25da859c18 Chore Deprecate legacy fine tunes API (#484)
* chore: add deprecation message

* chore: use new fine tuning API in README example
2023-08-31 14:14:39 +04:00
Simone Vellei
a2ca01bb6d feat: implement new fine tuning job API (#479)
* feat: implement new fine tuning job API

* fix: export ListFineTuningJobEventsParameter

* fix: lint errors

* fix: test errors

* fix: code test coverage

* fix: code test coverage

* fix: use any

* chore: use url.Values
2023-08-29 16:04:27 +04:00
渡邉祐一 / Yuichi Watanabe
a14bc103f4 docs: Add Contributing Guidelines (#463) 2023-08-09 13:07:14 +09:00
ZeroDeng
34569895f6 Compatible with the 2023-07-01-preview API interface of Azure Openai, when content interception is triggered, the error message will contain innererror (#460)
* Compatible with Azure Openai's 2023-07-01-preview version API interface about the error information returned by the intercepted interface

* Compatible with the 2023-07-01-preview API interface of Azure Openai, when content interception is triggered, the error message will contain innererror.InnerError struct is only valid for Azure OpenAI Service.
2023-08-09 13:05:39 +09:00
渡邉祐一 / Yuichi Watanabe
71a24931db docs: add Frequently Asked Questions to README.md (#462)
* docs: add Frequently Asked Questions to README.md

* Update README.md

Co-authored-by: Alexander Baranov <677093+sashabaranov@users.noreply.github.com>

---------

Co-authored-by: Alexander Baranov <677093+sashabaranov@users.noreply.github.com>
2023-07-31 04:58:49 +09:00
Yu
62dc817b39 feat: make finish reason nullable in json marshal (#449) 2023-07-28 13:06:48 +09:00
ZeroDeng
1153eb2595 Add support for azure openai new version API (2023-07-01-preview) (#451) 2023-07-20 19:25:58 +03:00
Savannah Ostrowski
1876e0c207 update to json.RawMessage (#441) 2023-07-15 13:33:55 +09:00
Mehul Gohil
0234c1e0c2 add example: fine tune (#438)
* add example for fine tune

* update example for fine tune

* fix comments
2023-07-15 07:13:05 +09:00
Munar
e22a29d84e Check if the model param is valid for moderations endpoint (#437)
* chore: check for models before sending moderation requets to openai endpoint

* chore: table driven tests to include more model cases for moderations endpoint
2023-07-13 13:30:58 +09:00
渡邉祐一 / Yuichi Watanabe
39b2acb5c9 ci: set up closing-inactive-issues in GitHub Action (129) (#428) 2023-07-12 17:15:39 +03:00
渡邉祐一 / Yuichi Watanabe
c3b2451f7c fix: invalid schema for function 'func_name': None is not of type 'object' (#429)(#432) (#434)
* fix: invalid schema for function 'func_name': None is not of type 'object' (#429)(#432)

* test: add integration test for function call (#429)(#432)

* style: remove duplicate import (#429)(#432)
2023-07-11 14:48:15 +03:00
渡邉祐一 / Yuichi Watanabe
f028c289d2 fix: function call error due to nil properties (429) (#431)
* fix: fix function call error due to nil properties (429)

* refactor: refactoring initializeProperties func in jsonschema pkg (429)
2023-07-09 20:07:01 +03:00
渡邉祐一 / Yuichi Watanabe
181fc2ade9 docs: explanation about LogitBias. (129) (#426) 2023-07-09 12:11:39 +03:00
Liu Shuang
7b22898f5d Implement OpenAI July 2023 Updates (#427)
* Implement OpenAI July 2023 Updates

* fix: golangci-lint

* add comment

* fix: remove some model Deprecated
2023-07-09 12:09:50 +03:00
渡邉祐一 / Yuichi Watanabe
619ad71735 docs: added instructions for obtaining OpenAI API key to README (#421)
* docs: added instructions for obtaining OpenAI API key to README

* docs: move 'Getting an OpenAI API key' before 'Other examples'
2023-07-06 00:54:27 +03:00
Jackson Stone
5c7d88212f Allow embeddings requests to be tokens or strings (#417)
* Allow raw tokens to be used as embedding input

* fix linting issues (lines too long)

* add endpoint test for embedding from tokens

* remove redundant comments

* fix comment to match new param name

* change interface to any

* Rename methods and implement convert for base req

* add comments to CreateEmbeddings

* update tests

* shorten line length

* rename parameter
2023-07-06 00:53:53 +03:00
渡邉祐一 / Yuichi Watanabe
204260818e docs: remove medatada in PULL_REQUEST_TEMPLATE.md (#423) 2023-07-03 13:46:38 +03:00
Rick
177c143be7 Fix OpenAI error when properties is empty in function call : object schema missing properties (#419)
Co-authored-by: Rick <medivhzhan@icloud.com>
2023-07-01 07:38:22 +09:00
渡邉祐一 / Yuichi Watanabe
1efcf2d23d fix: move pull request template (#420) 2023-06-30 14:49:36 +04:00
ryomak
9c99f3626f replace deprecated FunctionDefine in chat_test.go (#416) 2023-06-29 09:41:22 +09:00
渡邉祐一 / Yuichi Watanabe
86d0f48d2d chore: add a pull request template (#412) 2023-06-28 21:18:34 +04:00
渡邉祐一 / Yuichi Watanabe
581f70b102 chore: add an issue template for bug report (#408) 2023-06-26 18:33:32 +04:00
渡邉祐一 / Yuichi Watanabe
a3c0b36b35 chore: add an issue template for feature request (#410) 2023-06-26 18:32:57 +04:00
James MacWhyte
0ca4ea4867 move json schema to directory/package (#407)
* move json schema to directory/package

* added jsonschema to README
2023-06-24 20:22:11 +04:00
Alexander Baranov
5f4ef298e3 Update README.md (#406) 2023-06-23 13:07:43 +04:00
渡邉祐一 / Yuichi Watanabe
f1b66967a4 refactor: refactoring http request creation and sending (#395)
* refactoring http request creation and sending

* fix lint error

* increase the test coverage of client.go

* refactor: Change the style of HTTPRequestBuilder.Build func to one-argument-per-line.
2023-06-22 13:57:52 +04:00
渡邉祐一 / Yuichi Watanabe
157de0680f add vvatanabe to FUNDING.yml (#402) 2023-06-22 13:49:46 +04:00
Alexander Baranov
ffa7abc050 Update README.md (#399) 2023-06-21 18:54:10 +04:00
渡邉祐一 / Yuichi Watanabe
e19b074a11 docs: add requires go version in README.md (#397) 2023-06-21 18:53:15 +04:00
Chris Hua
f22da8a7ed feat: allow more input types to functions, fix tests (#377)
* feat: use json.rawMessage, test functions

* chore: lint

* fix: tests

the ChatCompletion mock server doesn't actually run otherwise. N=0
is the default request but the server will treat it as n=1

* fix: tests should default to n=1 completions

* chore: add back removed interfaces, custom marshal

* chore: lint

* chore: lint

* chore: add some tests

* chore: appease lint

* clean up JSON schema + tests

* chore: lint

* feat: remove backwards compatible functions

for illustrative purposes

* fix: revert params change

* chore: use interface{}

* chore: add test

* chore: add back FunctionDefine

* chore: /s/interface{}/any

* chore: add back jsonschemadefinition

* chore: testcov

* chore: lint

* chore: remove pointers

* chore: update comment

* chore: address CR

added test for compatibility as well

---------

Co-authored-by: James <jmacwhyte@MacBooger-II.local>
2023-06-21 16:58:27 +04:00
Liu Shuang
e948150829 fix: chat stream returns an error response with a 'data: ' prefix (#396)
* fix: chat stream resp has 'data: ' prefix

* fix: lint error

* fix: lint error

* fix: lint error
2023-06-20 19:39:19 +04:00
cem-unuvar
720377087f feat: added function call info to chat completions (#390) 2023-06-20 19:33:53 +04:00
渡邉祐一 / Yuichi Watanabe
68f9ef92be split integration test using go build tag (#392) 2023-06-19 12:12:38 +04:00
渡邉祐一 / Yuichi Watanabe
b0959382c8 extract and split integration tests (#389) 2023-06-18 14:51:20 +04:00
渡邉祐一 / Yuichi Watanabe
e49d771fff support for parsing error response message fields even if they are arrays (#381) (#384) 2023-06-17 17:57:29 +04:00
romazu
f0770cfe1d audio: add items to AudioResponseFormat enum (#382)
* audio: add items to AudioResponseFormat enum

* audio: expand AudioResponse struct to accommodate verbose json response

---------

Co-authored-by: Roman Zubov <rzubov@aintsys.com>
2023-06-16 17:13:26 +04:00
Alex Wormuth
ac25f318ba add items, which is required for array type (#373)
* add items, which is required for array type

* use JSONSchemaDefine directly
2023-06-16 17:11:50 +04:00
Liu Shuang
0bd14f9584 refactor: ChatCompletionStreamChoice.FinishReason from string to FinishReason (#372) 2023-06-15 13:58:26 +04:00
Alexander Baranov
43de77162f Create FUNDING.yml (#371) 2023-06-15 12:53:52 +04:00
Ccheers
2bd65aa720 feat(chat): support function call api (#369)
* feat(chat): support function call api

* rename struct & add const ChatMessageRoleFunction
2023-06-15 12:49:54 +04:00