Bring Azure OpenAI code in sync with Azure repo#14
Closed
ralph-msft wants to merge 197 commits intobterlson:mainfrom
Closed
Bring Azure OpenAI code in sync with Azure repo#14ralph-msft wants to merge 197 commits intobterlson:mainfrom
ralph-msft wants to merge 197 commits intobterlson:mainfrom
Conversation
ralph-msft
commented
Aug 28, 2024
- Refactors the code to bring the directory structure in sync with what we have in the Azure repo
- Updates the Azure OpenAI code with all changes from the Azure repo
- Brings over the Azure OpenAI test suite to allow for full testing in this repo (including support for recording/playback of requests)
- Fixes a regression introduced with the latest FineTuningClient pagination changes
…it Update-ClietModel.ps1 script to System.ClientModel 1.1.0-alpha.20240227.1
…CancellationToken parameter
Merge pull request #2 from joseharriaga/Update-ClientModel OpenAI REST API snapshot: https://raw.githubusercontent.com/openai/openai-openapi/b648b7823135e6fa5148ac9a303c16fdad050da6/openapi.yaml
- Fix issue in AssistantClient where `SubmitToolOutputsAsync` was not returning a `ThreadRun` as it should. - Add missing async sample for function calling - Clean up function calling samples to make them more genuine
The objective is to eventually stop depending on these scripts and remove them entirely. With this in mind, I refactored the scripts to split them into smaller parts so that it's easier to remove them incrementally.
Update the fine-tuning TypeSpec to properly match its definition as per the OpenAPI spec here: https://raw.githubusercontent.com/openai/openai-openapi/b648b7823135e6fa5148ac9a303c16fdad050da6/openapi.yaml
* Exposed missing protocol methods publicly * Removed protocol methods that use multipart/form-data for now (`TranscribeAudio`, `TranslateAudio`, `UploadFile`, `GenerateImageEdit`, and `GenerateImageVariation`) * Removed `[EditorBrowsable(EditorBrowsableState.Never)]` attribute from existing protocol methods that do not have a convenience method counterpart * Renamed `RequestOptions` parameter from "context" to "options" in existing protocol methods * Added missing `async` keyword to existing protocol methods when applicable (also `await` and `.ConfigureAwait(false)`) * Added doc comments to protocol methods * Created the `FineTuningClient` to organize the library in a way that aligns more closely to OpenAI's REST API and documentation * Made a small fix to the fine-tuning TypeSpec (the `limit` query parameter should be defined as an `int32`)
Implement support for image edits and variations as convenience methods that do multipart/form-data.
Making sure that the README is up-to-date with the latest samples.
Due to our codegen workarounds, we cannot have a method with the following signature in the custom public `OpenAIClient` class: ```csharp public FineTuningClient GetFineTuningClient() ``` This is because we need codegen to generate a different method that happens to have this same signature in the generated internal `OpenAIClient` class. Because making the generated `OpenAIClient` class internal is part of post-codegen processing, codegen has no way to know that these two are not the same class, so it skips generating the method thinking it has been customized instead. For now, we rename the `FineTuningClient` to `FineTuningManagementClient` to avoid this conflict. We will be able to fix it once we have codegen customizations available.
* Fix typo in AssistantTests * Fix model name in telemetry tests * Export API listing to include model factory APIs
…k with "true" (#205) * PS deserialization fixup * removing unintentionally included and incomplete extra test file
* restore clean run-checks and make it run with CI * GitHub action: prepend dot slash for pwsh
* Export API with model factory changes * Amend CHANGELOG
#201) - Removed client constructors that do not explicitly take an API key parameter or an endpoint via an `OpenAIClientOptions` parameter, making it clearer how to appropriately instantiate a client. - Removed the endpoint parameter from all client constructors, making it clearer that an alternative endpoint must be specified via the `OpenAIClientOptions` parameter. - Removed `OpenAIClient`'s `Endpoint` `protected` property. - Made `OpenAIClient`'s constructor that takes a `ClientPipeline` parameter `protected internal` instead of just `protected`.
This is a placeholder. The test code will be replaced with a version that does not have an Azure.Core.TestFramework dependency soon.
…#214) * minimal public api with full spec update * refusal rename, remove init * refusal tests * add missing refusal parameter to factory * response format update * updates * greatly expanded tool test * minor changelog updates * PR feedback * content part updates to address refusal and future-proof * minor changelog update * superficial refactor * minor: api updated (protected only) * pr feedback including null content fix
Renamed `AudioClient`'s `GenerateSpeechFromText` methods to simply `GenerateSpeech`.
…rties (#208) Use `AssertNotFrozen()` in the setters of `OpenAIClientOptions` properties to help users understand that setting these properties after the client has been instantiated has no effect on it.
* add roger's fix and a test for options bug * changelog
…ion pattern (#197) Move service methods for paginated endpoints to use SCM based pagination pattern
…222) * reflect 2.0.0-beta.10 * fix changelog * touchup changelog
Co-authored-by: ShivangiReja <shivangi.reja@microsoft.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.