@@ -22,7 +22,7 @@ class ModelConfig < Stagehand::Internal::Type::BaseModel
2222 optional :base_url , String , api_name : :baseURL
2323
2424 # @!attribute headers
25- # Custom headers for the model provider
25+ # Custom headers sent with every request to the model provider
2626 #
2727 # @return [Hash{Symbol=>String}, nil]
2828 optional :headers , Stagehand ::Internal ::Type ::HashOf [ String ]
@@ -33,40 +33,16 @@ class ModelConfig < Stagehand::Internal::Type::BaseModel
3333 # @return [Symbol, Stagehand::Models::ModelConfig::Provider, nil]
3434 optional :provider , enum : -> { Stagehand ::ModelConfig ::Provider }
3535
36- # @!attribute provider_options
37- # Provider-specific options passed through to the AI SDK provider constructor. For
38- # Bedrock: { region, accessKeyId, secretAccessKey, sessionToken }. For Vertex: {
39- # project, location, googleAuthOptions }.
40- #
41- # @return [Stagehand::Models::ModelConfig::ProviderOptions::BedrockAPIKeyProviderOptions, Stagehand::Models::ModelConfig::ProviderOptions::BedrockAwsCredentialsProviderOptions, Stagehand::Models::ModelConfig::ProviderOptions::GoogleVertexProviderOptions, nil]
42- optional :provider_options ,
43- union : -> { Stagehand ::ModelConfig ::ProviderOptions } ,
44- api_name : :providerOptions
45-
46- # @!attribute skip_api_key_fallback
47- # When true, hosted sessions will not copy x-model-api-key into model.apiKey. Use
48- # this when auth is carried through providerOptions instead of an API key.
49- #
50- # @return [Boolean, nil]
51- optional :skip_api_key_fallback , Stagehand ::Internal ::Type ::Boolean , api_name : :skipApiKeyFallback
52-
53- # @!method initialize(model_name:, api_key: nil, base_url: nil, headers: nil, provider: nil, provider_options: nil, skip_api_key_fallback: nil)
54- # Some parameter documentations has been truncated, see
55- # {Stagehand::Models::ModelConfig} for more details.
56- #
36+ # @!method initialize(model_name:, api_key: nil, base_url: nil, headers: nil, provider: nil)
5737 # @param model_name [String] Model name string with provider prefix (e.g., 'openai/gpt-5-nano')
5838 #
5939 # @param api_key [String] API key for the model provider
6040 #
6141 # @param base_url [String] Base URL for the model provider
6242 #
63- # @param headers [Hash{Symbol=>String}] Custom headers for the model provider
43+ # @param headers [Hash{Symbol=>String}] Custom headers sent with every request to the model provider
6444 #
6545 # @param provider [Symbol, Stagehand::Models::ModelConfig::Provider] AI provider for the model (or provide a baseURL endpoint instead)
66- #
67- # @param provider_options [Stagehand::Models::ModelConfig::ProviderOptions::BedrockAPIKeyProviderOptions, Stagehand::Models::ModelConfig::ProviderOptions::BedrockAwsCredentialsProviderOptions, Stagehand::Models::ModelConfig::ProviderOptions::GoogleVertexProviderOptions] Provider-specific options passed through to the AI SDK provider constructor. For
68- #
69- # @param skip_api_key_fallback [Boolean] When true, hosted sessions will not copy x-model-api-key into model.apiKey. Use
7046
7147 # AI provider for the model (or provide a baseURL endpoint instead)
7248 #
@@ -83,194 +59,6 @@ module Provider
8359 # @!method self.values
8460 # @return [Array<Symbol>]
8561 end
86-
87- # Provider-specific options passed through to the AI SDK provider constructor. For
88- # Bedrock: { region, accessKeyId, secretAccessKey, sessionToken }. For Vertex: {
89- # project, location, googleAuthOptions }.
90- #
91- # @see Stagehand::Models::ModelConfig#provider_options
92- module ProviderOptions
93- extend Stagehand ::Internal ::Type ::Union
94-
95- variant -> { Stagehand ::ModelConfig ::ProviderOptions ::BedrockAPIKeyProviderOptions }
96-
97- variant -> { Stagehand ::ModelConfig ::ProviderOptions ::BedrockAwsCredentialsProviderOptions }
98-
99- variant -> { Stagehand ::ModelConfig ::ProviderOptions ::GoogleVertexProviderOptions }
100-
101- class BedrockAPIKeyProviderOptions < Stagehand ::Internal ::Type ::BaseModel
102- # @!attribute region
103- # AWS region for Amazon Bedrock
104- #
105- # @return [String]
106- required :region , String
107-
108- # @!method initialize(region:)
109- # @param region [String] AWS region for Amazon Bedrock
110- end
111-
112- class BedrockAwsCredentialsProviderOptions < Stagehand ::Internal ::Type ::BaseModel
113- # @!attribute access_key_id
114- # AWS access key ID for Bedrock
115- #
116- # @return [String]
117- required :access_key_id , String , api_name : :accessKeyId
118-
119- # @!attribute region
120- # AWS region for Amazon Bedrock
121- #
122- # @return [String]
123- required :region , String
124-
125- # @!attribute secret_access_key
126- # AWS secret access key for Bedrock
127- #
128- # @return [String]
129- required :secret_access_key , String , api_name : :secretAccessKey
130-
131- # @!attribute session_token
132- # Optional AWS session token for temporary credentials
133- #
134- # @return [String, nil]
135- optional :session_token , String , api_name : :sessionToken
136-
137- # @!method initialize(access_key_id:, region:, secret_access_key:, session_token: nil)
138- # @param access_key_id [String] AWS access key ID for Bedrock
139- #
140- # @param region [String] AWS region for Amazon Bedrock
141- #
142- # @param secret_access_key [String] AWS secret access key for Bedrock
143- #
144- # @param session_token [String] Optional AWS session token for temporary credentials
145- end
146-
147- class GoogleVertexProviderOptions < Stagehand ::Internal ::Type ::BaseModel
148- # @!attribute google_auth_options
149- # Optional Google auth options for Vertex AI
150- #
151- # @return [Stagehand::Models::ModelConfig::ProviderOptions::GoogleVertexProviderOptions::GoogleAuthOptions, nil]
152- optional :google_auth_options ,
153- -> {
154- Stagehand ::ModelConfig ::ProviderOptions ::GoogleVertexProviderOptions ::GoogleAuthOptions
155- } ,
156- api_name : :googleAuthOptions
157-
158- # @!attribute headers
159- # Custom headers for Vertex AI requests
160- #
161- # @return [Hash{Symbol=>String}, nil]
162- optional :headers , Stagehand ::Internal ::Type ::HashOf [ String ]
163-
164- # @!attribute location
165- # Google Cloud location for Vertex AI
166- #
167- # @return [String, nil]
168- optional :location , String
169-
170- # @!attribute project
171- # Google Cloud project ID for Vertex AI
172- #
173- # @return [String, nil]
174- optional :project , String
175-
176- # @!method initialize(google_auth_options: nil, headers: nil, location: nil, project: nil)
177- # @param google_auth_options [Stagehand::Models::ModelConfig::ProviderOptions::GoogleVertexProviderOptions::GoogleAuthOptions] Optional Google auth options for Vertex AI
178- #
179- # @param headers [Hash{Symbol=>String}] Custom headers for Vertex AI requests
180- #
181- # @param location [String] Google Cloud location for Vertex AI
182- #
183- # @param project [String] Google Cloud project ID for Vertex AI
184-
185- # @see Stagehand::Models::ModelConfig::ProviderOptions::GoogleVertexProviderOptions#google_auth_options
186- class GoogleAuthOptions < Stagehand ::Internal ::Type ::BaseModel
187- # @!attribute credentials
188- #
189- # @return [Stagehand::Models::ModelConfig::ProviderOptions::GoogleVertexProviderOptions::GoogleAuthOptions::Credentials, nil]
190- optional :credentials ,
191- -> { Stagehand ::ModelConfig ::ProviderOptions ::GoogleVertexProviderOptions ::GoogleAuthOptions ::Credentials }
192-
193- # @!method initialize(credentials: nil)
194- # Optional Google auth options for Vertex AI
195- #
196- # @param credentials [Stagehand::Models::ModelConfig::ProviderOptions::GoogleVertexProviderOptions::GoogleAuthOptions::Credentials]
197-
198- # @see Stagehand::Models::ModelConfig::ProviderOptions::GoogleVertexProviderOptions::GoogleAuthOptions#credentials
199- class Credentials < Stagehand ::Internal ::Type ::BaseModel
200- # @!attribute auth_provider_x509_cert_url
201- #
202- # @return [String, nil]
203- optional :auth_provider_x509_cert_url , String
204-
205- # @!attribute auth_uri
206- #
207- # @return [String, nil]
208- optional :auth_uri , String
209-
210- # @!attribute client_email
211- #
212- # @return [String, nil]
213- optional :client_email , String
214-
215- # @!attribute client_id
216- #
217- # @return [String, nil]
218- optional :client_id , String
219-
220- # @!attribute client_x509_cert_url
221- #
222- # @return [String, nil]
223- optional :client_x509_cert_url , String
224-
225- # @!attribute private_key
226- #
227- # @return [String, nil]
228- optional :private_key , String
229-
230- # @!attribute private_key_id
231- #
232- # @return [String, nil]
233- optional :private_key_id , String
234-
235- # @!attribute project_id
236- #
237- # @return [String, nil]
238- optional :project_id , String
239-
240- # @!attribute token_uri
241- #
242- # @return [String, nil]
243- optional :token_uri , String
244-
245- # @!attribute type
246- #
247- # @return [String, nil]
248- optional :type , String
249-
250- # @!attribute universe_domain
251- #
252- # @return [String, nil]
253- optional :universe_domain , String
254-
255- # @!method initialize(auth_provider_x509_cert_url: nil, auth_uri: nil, client_email: nil, client_id: nil, client_x509_cert_url: nil, private_key: nil, private_key_id: nil, project_id: nil, token_uri: nil, type: nil, universe_domain: nil)
256- # @param auth_provider_x509_cert_url [String]
257- # @param auth_uri [String]
258- # @param client_email [String]
259- # @param client_id [String]
260- # @param client_x509_cert_url [String]
261- # @param private_key [String]
262- # @param private_key_id [String]
263- # @param project_id [String]
264- # @param token_uri [String]
265- # @param type [String]
266- # @param universe_domain [String]
267- end
268- end
269- end
270-
271- # @!method self.variants
272- # @return [Array(Stagehand::Models::ModelConfig::ProviderOptions::BedrockAPIKeyProviderOptions, Stagehand::Models::ModelConfig::ProviderOptions::BedrockAwsCredentialsProviderOptions, Stagehand::Models::ModelConfig::ProviderOptions::GoogleVertexProviderOptions)]
273- end
27462 end
27563 end
27664end
0 commit comments