diff --git a/.dotnet/src/Custom/Assistants/AssistantModificationOptions.cs b/.dotnet/src/Custom/Assistants/AssistantModificationOptions.cs index 51d6e756b..a7563ffbf 100644 --- a/.dotnet/src/Custom/Assistants/AssistantModificationOptions.cs +++ b/.dotnet/src/Custom/Assistants/AssistantModificationOptions.cs @@ -5,7 +5,7 @@ namespace OpenAI.Assistants; /// /// Represents additional options available when modifying an existing . /// -[CodeGenModel("ModifyAssistantRequest")] +[CodeGenModel("AssistantModificationOptions")] public partial class AssistantModificationOptions { /// @@ -19,18 +19,15 @@ public partial class AssistantModificationOptions /// /// There can be a maximum of 128 tools per assistant. Tools can be of types `code_interpreter`, `file_search`, or `function`. /// - [CodeGenMember("Tools")] public IList DefaultTools { get; init; } = new ChangeTrackingList(); // CUSTOM: reuse common request/response models for tool resources. Note that modification operations use the // response models (which do not contain resource initialization helpers). /// - [CodeGenMember("ToolResources")] public ToolResources ToolResources { get; init; } /// - [CodeGenMember("ResponseFormat")] public AssistantResponseFormat ResponseFormat { get; init; } /// @@ -38,6 +35,5 @@ public partial class AssistantModificationOptions /// /// We generally recommend altering this or temperature but not both. /// - [CodeGenMember("TopP")] public float? NucleusSamplingFactor { get; init; } } \ No newline at end of file diff --git a/.dotnet/src/Custom/OpenAIClient.cs b/.dotnet/src/Custom/OpenAIClient.cs index b530cec98..bb56a781f 100644 --- a/.dotnet/src/Custom/OpenAIClient.cs +++ b/.dotnet/src/Custom/OpenAIClient.cs @@ -20,7 +20,6 @@ namespace OpenAI; /// A top-level client factory that enables convenient creation of scenario-specific sub-clients while reusing shared /// configuration details like endpoint, authentication, and pipeline customization. /// -[CodeGenModel("OpenAIClient")] [CodeGenSuppress("OpenAIClient", typeof(ApiKeyCredential))] [CodeGenSuppress("OpenAIClient", typeof(Uri), typeof(ApiKeyCredential), typeof(OpenAIClientOptions))] [CodeGenSuppress("GetAssistantClientClient")] diff --git a/.dotnet/src/Custom/OpenAIClientOptions.cs b/.dotnet/src/Custom/OpenAIClientOptions.cs index 610341c52..de02db4a0 100644 --- a/.dotnet/src/Custom/OpenAIClientOptions.cs +++ b/.dotnet/src/Custom/OpenAIClientOptions.cs @@ -6,7 +6,6 @@ namespace OpenAI; /// /// Client-level options for the OpenAI service. /// -[CodeGenModel("OpenAIClientOptions")] public partial class OpenAIClientOptions : ClientPipelineOptions { /// diff --git a/.scripts/Invoke-CodeGen.ps1 b/.scripts/Invoke-CodeGen.ps1 index 7858ed05f..431103334 100644 --- a/.scripts/Invoke-CodeGen.ps1 +++ b/.scripts/Invoke-CodeGen.ps1 @@ -12,7 +12,7 @@ try { Invoke { npm ci } Invoke { npm exec --no -- tsp format **/*tsp } Invoke { npm exec --no -- tsp compile main.tsp --emit @typespec/openapi3 } - Invoke { npm exec --no -- tsp compile main.tsp --emit @azure-tools/typespec-csharp --option @azure-tools/typespec-csharp.emitter-output-dir="$dotnetFolder" } + Invoke { npm exec --no -- tsp compile client.tsp --emit @azure-tools/typespec-csharp --option @azure-tools/typespec-csharp.emitter-output-dir="$dotnetFolder" } Invoke { .$PSScriptRoot\Update-ClientModel.ps1 } Invoke { .$PSScriptRoot\ConvertTo-Internal.ps1 } Invoke { .$PSScriptRoot\Add-Customizations.ps1 } diff --git a/.typespec/assistants/client.tsp b/.typespec/assistants/client.tsp new file mode 100644 index 000000000..504f04c30 --- /dev/null +++ b/.typespec/assistants/client.tsp @@ -0,0 +1,9 @@ +import "./main.tsp"; +import "@azure-tools/typespec-client-generator-core"; + +using Azure.ClientGenerator.Core; +using OpenAI; + +@@clientName(ModifyAssistantRequest, "AssistantModificationOptions", "csharp"); +@@clientName(ModifyAssistantRequest.tools, "defaultTools", "csharp"); +@@clientName(ModifyAssistantRequest.top_p, "nucleusSamplingFactor", "csharp"); diff --git a/.typespec/client.tsp b/.typespec/client.tsp new file mode 100644 index 000000000..996eea326 --- /dev/null +++ b/.typespec/client.tsp @@ -0,0 +1,17 @@ +import "./main.tsp"; + +//import "./audio/client.tsp"; +import "./assistants/client.tsp"; +//import "./batch/client.tsp"; +//import "./chat/client.tsp"; +//import "./completions/client.tsp"; +//import "./embeddings/client.tsp"; +//import "./files/client.tsp"; +//import "./fine-tuning/client.tsp"; +//import "./images/client.tsp"; +//import "./messages/client.tsp"; +//import "./models/client.tsp"; +//import "./moderations/client.tsp"; +//import "./runs/client.tsp"; +//import "./threads/client.tsp"; +//import "./vector-stores/client.tsp";