venice_client 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (586) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +39 -0
  3. data/.gitlab-ci.yml +26 -0
  4. data/.openapi-generator/FILES +395 -0
  5. data/.openapi-generator/VERSION +1 -0
  6. data/.openapi-generator-ignore +23 -0
  7. data/.rspec +2 -0
  8. data/.rubocop.yml +148 -0
  9. data/.travis.yml +11 -0
  10. data/README.md +120 -390
  11. data/Rakefile +2 -0
  12. data/docs/APIKeysApi.md +236 -89
  13. data/docs/AssistantMessage.md +26 -0
  14. data/docs/AssistantMessageContent.md +15 -0
  15. data/docs/AudioApi.md +40 -19
  16. data/docs/AudioModelPricing.md +18 -0
  17. data/docs/AudioModelPricingInput.md +22 -0
  18. data/docs/BillingApi.md +50 -29
  19. data/docs/BillingUsageRequest.md +24 -8
  20. data/docs/BillingUsageResponse.md +16 -4
  21. data/docs/CharactersApi.md +36 -14
  22. data/docs/ChatApi.md +43 -22
  23. data/docs/ChatCompletionRequest.md +66 -28
  24. data/docs/ChatCompletionRequestMessagesInner.md +28 -0
  25. data/docs/ChatCompletionRequestResponseFormat.md +49 -0
  26. data/docs/ChatCompletionRequestStop.md +15 -0
  27. data/docs/ChatCompletionRequestStreamOptions.md +14 -3
  28. data/docs/ChatCompletionRequestToolChoice.md +20 -0
  29. data/docs/ChatCompletionRequestToolChoiceAnyOf.md +20 -0
  30. data/docs/ChatCompletionRequestToolChoiceAnyOfFunction.md +18 -0
  31. data/docs/ChatCompletionRequestVeniceParameters.md +26 -8
  32. data/docs/CreateApiKey200Response.md +20 -0
  33. data/docs/CreateApiKey200ResponseData.md +28 -0
  34. data/docs/CreateApiKeyRequest.md +24 -0
  35. data/docs/CreateApiKeyRequestExpiresAt.md +15 -0
  36. data/docs/CreateChatCompletion200Response.md +32 -0
  37. data/docs/CreateChatCompletion200ResponseChoicesInner.md +26 -0
  38. data/docs/CreateChatCompletion200ResponseChoicesInnerLogprobs.md +24 -0
  39. data/docs/CreateChatCompletion200ResponseChoicesInnerLogprobsTopLogprobsInner.md +22 -0
  40. data/docs/CreateChatCompletion200ResponseChoicesInnerMessage.md +28 -0
  41. data/docs/CreateChatCompletion200ResponseUsage.md +24 -0
  42. data/docs/CreateChatCompletion200ResponseVeniceParameters.md +32 -0
  43. data/docs/CreateChatCompletion200ResponseVeniceParametersWebSearchCitationsInner.md +24 -0
  44. data/docs/CreateChatCompletion400Response.md +20 -0
  45. data/docs/CreateChatCompletion401Response.md +18 -0
  46. data/docs/CreateChatCompletion402Response.md +18 -0
  47. data/docs/CreateChatCompletion415Response.md +18 -0
  48. data/docs/CreateChatCompletion429Response.md +18 -0
  49. data/docs/CreateChatCompletion500Response.md +18 -0
  50. data/docs/CreateChatCompletion503Response.md +18 -0
  51. data/docs/CreateChatCompletion504Response.md +18 -0
  52. data/docs/CreateEmbedding200Response.md +24 -0
  53. data/docs/CreateEmbedding200ResponseDataInner.md +22 -0
  54. data/docs/CreateEmbedding200ResponseUsage.md +20 -0
  55. data/docs/CreateEmbeddingRequestSchema.md +22 -7
  56. data/docs/CreateEmbeddingRequestSchemaInput.md +15 -0
  57. data/docs/CreateEmbeddingRequestSchemaModel.md +15 -0
  58. data/docs/CreateSpeech403Response.md +18 -0
  59. data/docs/CreateSpeechRequestSchema.md +24 -8
  60. data/docs/DeleteApiKey200Response.md +18 -0
  61. data/docs/EditImageRequest.md +20 -0
  62. data/docs/EmbeddingsApi.md +44 -23
  63. data/docs/GenerateImage200Response.md +24 -0
  64. data/docs/GenerateImage200ResponseTiming.md +24 -0
  65. data/docs/GenerateImageRequest.md +44 -18
  66. data/docs/GetApiKeyGenerateWeb3Key200Response.md +20 -0
  67. data/docs/GetApiKeyGenerateWeb3Key200ResponseData.md +18 -0
  68. data/docs/GetApiKeyRateLimitLogs200Response.md +20 -0
  69. data/docs/GetApiKeyRateLimitLogs200ResponseDataInner.md +26 -0
  70. data/docs/GetApiKeyRateLimits200Response.md +18 -0
  71. data/docs/GetApiKeyRateLimits200ResponseData.md +28 -0
  72. data/docs/GetApiKeyRateLimits200ResponseDataApiTier.md +20 -0
  73. data/docs/GetApiKeyRateLimits200ResponseDataBalances.md +22 -0
  74. data/docs/GetApiKeyRateLimits200ResponseDataRateLimitsInner.md +20 -0
  75. data/docs/GetApiKeyRateLimits200ResponseDataRateLimitsInnerRateLimitsInner.md +20 -0
  76. data/docs/GetApiKeys200Response.md +20 -0
  77. data/docs/GetApiKeys200ResponseDataInner.md +34 -0
  78. data/docs/GetApiKeys200ResponseDataInnerConsumptionLimits.md +22 -0
  79. data/docs/GetApiKeys200ResponseDataInnerUsage.md +18 -0
  80. data/docs/GetApiKeys200ResponseDataInnerUsageTrailingSevenDays.md +22 -0
  81. data/docs/GetBillingUsage200Response.md +20 -0
  82. data/docs/GetBillingUsage200ResponseDataInner.md +32 -0
  83. data/docs/GetBillingUsage200ResponseDataInnerInferenceDetails.md +24 -0
  84. data/docs/GetBillingUsage200ResponsePagination.md +24 -0
  85. data/docs/ImageApi.md +198 -102
  86. data/docs/ImageModelConstraints.md +22 -0
  87. data/docs/ImageModelConstraintsSteps.md +20 -0
  88. data/docs/ImageModelPricing.md +20 -0
  89. data/docs/ImageModelPricingGeneration.md +22 -0
  90. data/docs/ImageModelPricingUpscale.md +20 -0
  91. data/docs/ImageModelPricingUpscale2x.md +22 -0
  92. data/docs/ImageModelPricingUpscale4x.md +22 -0
  93. data/docs/ImageStylesGet200Response.md +20 -0
  94. data/docs/ImageStylesGet500Response.md +18 -0
  95. data/docs/ImageURLObject.md +18 -0
  96. data/docs/ImageUrl.md +20 -0
  97. data/docs/JsonObject.md +18 -0
  98. data/docs/JsonSchema.md +20 -0
  99. data/docs/LLMModelPricing.md +20 -0
  100. data/docs/LLMModelPricingInput.md +22 -0
  101. data/docs/LLMModelPricingOutput.md +22 -0
  102. data/docs/ListCharacters200Response.md +20 -0
  103. data/docs/ListCharacters200ResponseDataInner.md +36 -0
  104. data/docs/ListCharacters200ResponseDataInnerStats.md +18 -0
  105. data/docs/ListModelCompatibilityMapping200Response.md +22 -0
  106. data/docs/ListModelTraits200Response.md +22 -0
  107. data/docs/ListModels200Response.md +22 -0
  108. data/docs/ListModels200ResponseType.md +15 -0
  109. data/docs/ListModelsTypeParameter.md +15 -0
  110. data/docs/ModelResponse.md +24 -8
  111. data/docs/ModelResponseModelSpec.md +32 -11
  112. data/docs/ModelResponseModelSpecCapabilities.md +28 -10
  113. data/docs/ModelResponseModelSpecConstraints.md +26 -0
  114. data/docs/ModelResponseModelSpecPricing.md +24 -0
  115. data/docs/ModelsApi.md +112 -49
  116. data/docs/ObjectsInner.md +49 -0
  117. data/docs/PostApiKeyGenerateWeb3KeyRequest.md +30 -0
  118. data/docs/PreviewApi.md +36 -14
  119. data/docs/SimpleGenerateImage200Response.md +20 -0
  120. data/docs/SimpleGenerateImage200ResponseDataInner.md +20 -0
  121. data/docs/SimpleGenerateImage200ResponseDataInnerAnyOf.md +18 -0
  122. data/docs/SimpleGenerateImage200ResponseDataInnerAnyOf1.md +18 -0
  123. data/docs/SimpleGenerateImageRequest.md +36 -14
  124. data/docs/SpeechApi.md +40 -19
  125. data/docs/SystemMessage.md +22 -0
  126. data/docs/SystemMessageContent.md +15 -0
  127. data/docs/Text.md +20 -0
  128. data/docs/TextModelConstraints.md +20 -0
  129. data/docs/TextModelConstraintsTemperature.md +18 -0
  130. data/docs/TextModelConstraintsTopP.md +18 -0
  131. data/docs/ToolCall.md +18 -5
  132. data/docs/ToolCallFunction.md +22 -0
  133. data/docs/ToolMessage.md +28 -0
  134. data/docs/UpscaleImageRequest.md +24 -8
  135. data/docs/UpscaleImageRequestEnhance.md +15 -0
  136. data/docs/UserMessage.md +20 -0
  137. data/docs/UserMessageContent.md +15 -0
  138. data/git_push.sh +11 -9
  139. data/lib/venice_client/api/api_keys_api.rb +122 -65
  140. data/lib/venice_client/api/audio_api.rb +26 -14
  141. data/lib/venice_client/api/billing_api.rb +46 -23
  142. data/lib/venice_client/api/characters_api.rb +20 -11
  143. data/lib/venice_client/api/chat_api.rb +28 -16
  144. data/lib/venice_client/api/embeddings_api.rb +34 -22
  145. data/lib/venice_client/api/image_api.rb +146 -119
  146. data/lib/venice_client/api/models_api.rb +62 -37
  147. data/lib/venice_client/api/preview_api.rb +20 -11
  148. data/lib/venice_client/api/speech_api.rb +26 -14
  149. data/lib/venice_client/api_client.rb +99 -94
  150. data/lib/venice_client/api_error.rb +7 -5
  151. data/lib/venice_client/configuration.rb +129 -24
  152. data/lib/venice_client/models/assistant_message.rb +304 -0
  153. data/lib/venice_client/models/assistant_message_content.rb +104 -0
  154. data/lib/venice_client/models/audio_model_pricing.rb +238 -0
  155. data/lib/venice_client/models/audio_model_pricing_input.rb +292 -0
  156. data/lib/venice_client/models/billing_usage_request.rb +99 -38
  157. data/lib/venice_client/models/billing_usage_response.rb +68 -30
  158. data/lib/venice_client/models/chat_completion_request.rb +389 -61
  159. data/lib/venice_client/models/chat_completion_request_messages_inner.rb +106 -0
  160. data/lib/venice_client/models/chat_completion_request_response_format.rb +106 -0
  161. data/lib/venice_client/models/chat_completion_request_stop.rb +105 -0
  162. data/lib/venice_client/models/chat_completion_request_stream_options.rb +43 -29
  163. data/lib/venice_client/models/chat_completion_request_tool_choice.rb +104 -0
  164. data/lib/venice_client/models/chat_completion_request_tool_choice_any_of.rb +263 -0
  165. data/lib/venice_client/models/chat_completion_request_tool_choice_any_of_function.rb +237 -0
  166. data/lib/venice_client/models/chat_completion_request_venice_parameters.rb +71 -48
  167. data/lib/venice_client/models/{inline_response_200_8.rb → create_api_key200_response.rb} +70 -32
  168. data/lib/venice_client/models/{inline_response_200_8_data.rb → create_api_key200_response_data.rb} +92 -43
  169. data/lib/venice_client/models/{api_keys_body.rb → create_api_key_request.rb} +65 -38
  170. data/lib/venice_client/models/create_api_key_request_expires_at.rb +104 -0
  171. data/lib/venice_client/models/{inline_response_200.rb → create_chat_completion200_response.rb} +120 -42
  172. data/lib/venice_client/models/{inline_response_200_choices.rb → create_chat_completion200_response_choices_inner.rb} +82 -44
  173. data/lib/venice_client/models/{inline_response_200_logprobs.rb → create_chat_completion200_response_choices_inner_logprobs.rb} +72 -34
  174. data/lib/venice_client/models/{inline_response_200_logprobs_top_logprobs.rb → create_chat_completion200_response_choices_inner_logprobs_top_logprobs_inner.rb} +71 -33
  175. data/lib/venice_client/models/create_chat_completion200_response_choices_inner_message.rb +104 -0
  176. data/lib/venice_client/models/{inline_response_200_usage.rb → create_chat_completion200_response_usage.rb} +83 -33
  177. data/lib/venice_client/models/{inline_response_200_venice_parameters.rb → create_chat_completion200_response_venice_parameters.rb} +131 -40
  178. data/lib/venice_client/models/{inline_response_200_venice_parameters_web_search_citations.rb → create_chat_completion200_response_venice_parameters_web_search_citations_inner.rb} +72 -34
  179. data/lib/venice_client/models/{inline_response_400.rb → create_chat_completion400_response.rb} +57 -31
  180. data/lib/venice_client/models/{inline_response_401.rb → create_chat_completion401_response.rb} +57 -31
  181. data/lib/venice_client/models/{inline_response_402.rb → create_chat_completion402_response.rb} +57 -31
  182. data/lib/venice_client/models/create_chat_completion415_response.rb +238 -0
  183. data/lib/venice_client/models/create_chat_completion429_response.rb +238 -0
  184. data/lib/venice_client/models/create_chat_completion500_response.rb +238 -0
  185. data/lib/venice_client/models/create_chat_completion503_response.rb +238 -0
  186. data/lib/venice_client/models/create_chat_completion504_response.rb +238 -0
  187. data/lib/venice_client/models/{inline_response_200_14.rb → create_embedding200_response.rb} +88 -36
  188. data/lib/venice_client/models/{inline_response_200_14_data.rb → create_embedding200_response_data_inner.rb} +75 -35
  189. data/lib/venice_client/models/{inline_response_200_14_usage.rb → create_embedding200_response_usage.rb} +70 -32
  190. data/lib/venice_client/models/create_embedding_request_schema.rb +92 -37
  191. data/lib/venice_client/models/create_embedding_request_schema_input.rb +107 -0
  192. data/lib/venice_client/models/create_embedding_request_schema_model.rb +104 -0
  193. data/lib/venice_client/models/{inline_response_403.rb → create_speech403_response.rb} +57 -31
  194. data/lib/venice_client/models/create_speech_request_schema.rb +112 -40
  195. data/lib/venice_client/models/{inline_response_200_12.rb → delete_api_key200_response.rb} +58 -46
  196. data/lib/venice_client/models/edit_image_request.rb +260 -0
  197. data/lib/venice_client/models/{inline_response_200_1.rb → generate_image200_response.rb} +83 -33
  198. data/lib/venice_client/models/{inline_response_200_1_timing.rb → generate_image200_response_timing.rb} +96 -34
  199. data/lib/venice_client/models/generate_image_request.rb +289 -46
  200. data/lib/venice_client/models/get_api_key_generate_web3_key200_response.rb +263 -0
  201. data/lib/venice_client/models/{inline_response_200_12_data.rb → get_api_key_generate_web3_key200_response_data.rb} +57 -31
  202. data/lib/venice_client/models/{inline_response_200_13.rb → get_api_key_rate_limit_logs200_response.rb} +63 -34
  203. data/lib/venice_client/models/{inline_response_200_11_data.rb → get_api_key_rate_limit_logs200_response_data_inner.rb} +107 -35
  204. data/lib/venice_client/models/{inline_response_200_10.rb → get_api_key_rate_limits200_response.rb} +57 -31
  205. data/lib/venice_client/models/{inline_response_200_10_data.rb → get_api_key_rate_limits200_response_data.rb} +112 -41
  206. data/lib/venice_client/models/{inline_response_200_10_data_api_tier.rb → get_api_key_rate_limits200_response_data_api_tier.rb} +71 -33
  207. data/lib/venice_client/models/{inline_response_200_10_data_balances.rb → get_api_key_rate_limits200_response_data_balances.rb} +60 -36
  208. data/lib/venice_client/models/{inline_response_200_10_data_rate_limits_1.rb → get_api_key_rate_limits200_response_data_rate_limits_inner.rb} +58 -32
  209. data/lib/venice_client/models/{inline_response_200_10_data_rate_limits.rb → get_api_key_rate_limits200_response_data_rate_limits_inner_rate_limits_inner.rb} +70 -32
  210. data/lib/venice_client/models/{inline_response_200_7.rb → get_api_keys200_response.rb} +62 -34
  211. data/lib/venice_client/models/{inline_response_200_7_data.rb → get_api_keys200_response_data_inner.rb} +99 -56
  212. data/lib/venice_client/models/get_api_keys200_response_data_inner_consumption_limits.rb +287 -0
  213. data/lib/venice_client/models/{inline_response_200_7_usage.rb → get_api_keys200_response_data_inner_usage.rb} +57 -31
  214. data/lib/venice_client/models/get_api_keys200_response_data_inner_usage_trailing_seven_days.rb +292 -0
  215. data/lib/venice_client/models/{inline_response_200_15.rb → get_billing_usage200_response.rb} +70 -32
  216. data/lib/venice_client/models/{billing_usage_response_data.rb → get_billing_usage200_response_data_inner.rb} +131 -45
  217. data/lib/venice_client/models/{billing_usage_response_inference_details.rb → get_billing_usage200_response_data_inner_inference_details.rb} +56 -54
  218. data/lib/venice_client/models/{billing_usage_response_pagination.rb → get_billing_usage200_response_pagination.rb} +96 -34
  219. data/lib/venice_client/models/image_model_constraints.rb +292 -0
  220. data/lib/venice_client/models/image_model_constraints_steps.rb +265 -0
  221. data/lib/venice_client/models/image_model_pricing.rb +264 -0
  222. data/lib/venice_client/models/image_model_pricing_generation.rb +292 -0
  223. data/lib/venice_client/models/image_model_pricing_upscale.rb +263 -0
  224. data/lib/venice_client/models/image_model_pricing_upscale2x.rb +292 -0
  225. data/lib/venice_client/models/image_model_pricing_upscale4x.rb +292 -0
  226. data/lib/venice_client/models/{inline_response_200_3.rb → image_styles_get200_response.rb} +62 -34
  227. data/lib/venice_client/models/{inline_response_415.rb → image_styles_get500_response.rb} +57 -31
  228. data/lib/venice_client/models/image_url.rb +288 -0
  229. data/lib/venice_client/models/{inline_response_200_7_usage_trailing_seven_days.rb → image_url_object.rb} +68 -56
  230. data/lib/venice_client/models/json_object.rb +262 -0
  231. data/lib/venice_client/models/json_schema.rb +290 -0
  232. data/lib/venice_client/models/{inline_response_200_11.rb → list_characters200_response.rb} +62 -35
  233. data/lib/venice_client/models/{inline_response_200_13_data.rb → list_characters200_response_data_inner.rb} +154 -50
  234. data/lib/venice_client/models/{inline_response_200_13_stats.rb → list_characters200_response_data_inner_stats.rb} +57 -31
  235. data/lib/venice_client/models/{inline_response_200_6.rb → list_model_compatibility_mapping200_response.rb} +79 -37
  236. data/lib/venice_client/models/{inline_response_200_5.rb → list_model_traits200_response.rb} +79 -37
  237. data/lib/venice_client/models/{inline_response_200_4.rb → list_models200_response.rb} +75 -36
  238. data/lib/venice_client/models/list_models200_response_type.rb +104 -0
  239. data/lib/venice_client/models/list_models_type_parameter.rb +104 -0
  240. data/lib/venice_client/models/llm_model_pricing.rb +264 -0
  241. data/lib/venice_client/models/llm_model_pricing_input.rb +292 -0
  242. data/lib/venice_client/models/llm_model_pricing_output.rb +292 -0
  243. data/lib/venice_client/models/model_response.rb +84 -40
  244. data/lib/venice_client/models/model_response_model_spec.rb +62 -40
  245. data/lib/venice_client/models/model_response_model_spec_capabilities.rb +138 -38
  246. data/lib/venice_client/models/model_response_model_spec_constraints.rb +105 -0
  247. data/lib/venice_client/models/model_response_model_spec_pricing.rb +106 -0
  248. data/lib/venice_client/models/objects_inner.rb +105 -0
  249. data/lib/venice_client/models/{api_keys_generate_web3_key_body.rb → post_api_key_generate_web3_key_request.rb} +91 -40
  250. data/lib/venice_client/models/{inline_response_200_2.rb → simple_generate_image200_response.rb} +73 -35
  251. data/lib/venice_client/models/simple_generate_image200_response_data_inner.rb +104 -0
  252. data/lib/venice_client/models/simple_generate_image200_response_data_inner_any_of.rb +238 -0
  253. data/lib/venice_client/models/{api_keys_consumption_limit.rb → simple_generate_image200_response_data_inner_any_of1.rb} +67 -57
  254. data/lib/venice_client/models/simple_generate_image_request.rb +146 -54
  255. data/lib/venice_client/models/system_message.rb +297 -0
  256. data/lib/venice_client/models/system_message_content.rb +104 -0
  257. data/lib/venice_client/models/text.rb +298 -0
  258. data/lib/venice_client/models/text_model_constraints.rb +264 -0
  259. data/lib/venice_client/models/text_model_constraints_temperature.rb +238 -0
  260. data/lib/venice_client/models/text_model_constraints_top_p.rb +238 -0
  261. data/lib/venice_client/models/tool_call.rb +57 -31
  262. data/lib/venice_client/models/{chat_completion_request_function.rb → tool_call_function.rb} +59 -33
  263. data/lib/venice_client/models/tool_message.rb +344 -0
  264. data/lib/venice_client/models/upscale_image_request.rb +146 -40
  265. data/lib/venice_client/models/upscale_image_request_enhance.rb +105 -0
  266. data/lib/venice_client/models/user_message.rb +288 -0
  267. data/lib/venice_client/models/user_message_content.rb +104 -0
  268. data/lib/venice_client/version.rb +5 -4
  269. data/lib/venice_client.rb +134 -108
  270. data/openapitools.json +7 -0
  271. data/spec/api/api_keys_api_spec.rb +43 -41
  272. data/spec/api/audio_api_spec.rb +18 -16
  273. data/spec/api/billing_api_spec.rb +23 -21
  274. data/spec/api/characters_api_spec.rb +17 -15
  275. data/spec/api/chat_api_spec.rb +19 -17
  276. data/spec/api/embeddings_api_spec.rb +19 -17
  277. data/spec/api/image_api_spec.rb +43 -46
  278. data/spec/api/models_api_spec.rb +28 -26
  279. data/spec/api/preview_api_spec.rb +17 -15
  280. data/spec/api/speech_api_spec.rb +18 -16
  281. data/spec/models/assistant_message_content_spec.rb +21 -0
  282. data/spec/models/assistant_message_spec.rb +64 -0
  283. data/spec/models/audio_model_pricing_input_spec.rb +48 -0
  284. data/spec/models/audio_model_pricing_spec.rb +36 -0
  285. data/spec/models/billing_usage_request_spec.rb +19 -23
  286. data/spec/models/billing_usage_response_spec.rb +12 -16
  287. data/spec/models/chat_completion_request_messages_inner_spec.rb +21 -0
  288. data/spec/models/chat_completion_request_response_format_spec.rb +32 -0
  289. data/spec/models/chat_completion_request_spec.rb +74 -71
  290. data/spec/models/chat_completion_request_stop_spec.rb +21 -0
  291. data/spec/models/chat_completion_request_stream_options_spec.rb +11 -15
  292. data/spec/models/chat_completion_request_tool_choice_any_of_function_spec.rb +36 -0
  293. data/spec/models/chat_completion_request_tool_choice_any_of_spec.rb +42 -0
  294. data/spec/models/chat_completion_request_tool_choice_spec.rb +21 -0
  295. data/spec/models/chat_completion_request_venice_parameters_spec.rb +35 -32
  296. data/spec/models/create_api_key200_response_data_spec.rb +70 -0
  297. data/spec/models/create_api_key200_response_spec.rb +42 -0
  298. data/spec/models/create_api_key_request_expires_at_spec.rb +21 -0
  299. data/spec/models/create_api_key_request_spec.rb +58 -0
  300. data/spec/models/create_chat_completion200_response_choices_inner_logprobs_spec.rb +54 -0
  301. data/spec/models/create_chat_completion200_response_choices_inner_logprobs_top_logprobs_inner_spec.rb +48 -0
  302. data/spec/models/create_chat_completion200_response_choices_inner_message_spec.rb +21 -0
  303. data/spec/models/create_chat_completion200_response_choices_inner_spec.rb +68 -0
  304. data/spec/models/create_chat_completion200_response_spec.rb +82 -0
  305. data/spec/models/create_chat_completion200_response_usage_spec.rb +54 -0
  306. data/spec/models/create_chat_completion200_response_venice_parameters_spec.rb +82 -0
  307. data/spec/models/create_chat_completion200_response_venice_parameters_web_search_citations_inner_spec.rb +54 -0
  308. data/spec/models/create_chat_completion400_response_spec.rb +42 -0
  309. data/spec/models/create_chat_completion401_response_spec.rb +36 -0
  310. data/spec/models/create_chat_completion402_response_spec.rb +36 -0
  311. data/spec/models/create_chat_completion415_response_spec.rb +36 -0
  312. data/spec/models/create_chat_completion429_response_spec.rb +36 -0
  313. data/spec/models/create_chat_completion500_response_spec.rb +36 -0
  314. data/spec/models/create_chat_completion503_response_spec.rb +36 -0
  315. data/spec/models/create_chat_completion504_response_spec.rb +36 -0
  316. data/spec/models/create_embedding200_response_data_inner_spec.rb +52 -0
  317. data/spec/models/create_embedding200_response_spec.rb +58 -0
  318. data/spec/models/create_embedding200_response_usage_spec.rb +42 -0
  319. data/spec/models/create_embedding_request_schema_input_spec.rb +21 -0
  320. data/spec/models/create_embedding_request_schema_model_spec.rb +21 -0
  321. data/spec/models/create_embedding_request_schema_spec.rb +16 -20
  322. data/spec/models/create_speech403_response_spec.rb +36 -0
  323. data/spec/models/create_speech_request_schema_spec.rb +31 -34
  324. data/spec/models/delete_api_key200_response_spec.rb +36 -0
  325. data/spec/models/edit_image_request_spec.rb +42 -0
  326. data/spec/models/generate_image200_response_spec.rb +54 -0
  327. data/spec/models/generate_image200_response_timing_spec.rb +54 -0
  328. data/spec/models/generate_image_request_spec.rb +27 -31
  329. data/spec/models/get_api_key_generate_web3_key200_response_data_spec.rb +36 -0
  330. data/spec/models/get_api_key_generate_web3_key200_response_spec.rb +42 -0
  331. data/spec/models/get_api_key_rate_limit_logs200_response_data_inner_spec.rb +60 -0
  332. data/spec/models/get_api_key_rate_limit_logs200_response_spec.rb +46 -0
  333. data/spec/models/get_api_key_rate_limits200_response_data_api_tier_spec.rb +42 -0
  334. data/spec/models/get_api_key_rate_limits200_response_data_balances_spec.rb +48 -0
  335. data/spec/models/get_api_key_rate_limits200_response_data_rate_limits_inner_rate_limits_inner_spec.rb +42 -0
  336. data/spec/models/get_api_key_rate_limits200_response_data_rate_limits_inner_spec.rb +42 -0
  337. data/spec/models/get_api_key_rate_limits200_response_data_spec.rb +66 -0
  338. data/spec/models/get_api_key_rate_limits200_response_spec.rb +36 -0
  339. data/spec/models/get_api_keys200_response_data_inner_consumption_limits_spec.rb +48 -0
  340. data/spec/models/get_api_keys200_response_data_inner_spec.rb +88 -0
  341. data/spec/models/get_api_keys200_response_data_inner_usage_spec.rb +36 -0
  342. data/spec/models/get_api_keys200_response_data_inner_usage_trailing_seven_days_spec.rb +48 -0
  343. data/spec/models/get_api_keys200_response_spec.rb +46 -0
  344. data/spec/models/get_billing_usage200_response_data_inner_inference_details_spec.rb +54 -0
  345. data/spec/models/get_billing_usage200_response_data_inner_spec.rb +82 -0
  346. data/spec/models/get_billing_usage200_response_pagination_spec.rb +54 -0
  347. data/spec/models/get_billing_usage200_response_spec.rb +42 -0
  348. data/spec/models/image_model_constraints_spec.rb +48 -0
  349. data/spec/models/image_model_constraints_steps_spec.rb +42 -0
  350. data/spec/models/image_model_pricing_generation_spec.rb +48 -0
  351. data/spec/models/image_model_pricing_spec.rb +42 -0
  352. data/spec/models/image_model_pricing_upscale2x_spec.rb +48 -0
  353. data/spec/models/image_model_pricing_upscale4x_spec.rb +48 -0
  354. data/spec/models/image_model_pricing_upscale_spec.rb +42 -0
  355. data/spec/models/image_styles_get200_response_spec.rb +46 -0
  356. data/spec/models/image_styles_get500_response_spec.rb +36 -0
  357. data/spec/models/image_url_object_spec.rb +36 -0
  358. data/spec/models/image_url_spec.rb +46 -0
  359. data/spec/models/json_object_spec.rb +40 -0
  360. data/spec/models/json_schema_spec.rb +46 -0
  361. data/spec/models/list_characters200_response_data_inner_spec.rb +90 -0
  362. data/spec/models/list_characters200_response_data_inner_stats_spec.rb +36 -0
  363. data/spec/models/list_characters200_response_spec.rb +46 -0
  364. data/spec/models/list_model_compatibility_mapping200_response_spec.rb +52 -0
  365. data/spec/models/list_model_traits200_response_spec.rb +52 -0
  366. data/spec/models/list_models200_response_spec.rb +52 -0
  367. data/spec/models/list_models200_response_type_spec.rb +21 -0
  368. data/spec/models/list_models_type_parameter_spec.rb +21 -0
  369. data/spec/models/llm_model_pricing_input_spec.rb +48 -0
  370. data/spec/models/llm_model_pricing_output_spec.rb +48 -0
  371. data/spec/models/llm_model_pricing_spec.rb +42 -0
  372. data/spec/models/model_response_model_spec_capabilities_spec.rb +33 -36
  373. data/spec/models/model_response_model_spec_constraints_spec.rb +21 -0
  374. data/spec/models/model_response_model_spec_pricing_spec.rb +21 -0
  375. data/spec/models/model_response_model_spec_spec.rb +40 -37
  376. data/spec/models/model_response_spec.rb +32 -35
  377. data/spec/models/objects_inner_spec.rb +32 -0
  378. data/spec/models/post_api_key_generate_web3_key_request_spec.rb +76 -0
  379. data/spec/models/simple_generate_image200_response_data_inner_any_of1_spec.rb +36 -0
  380. data/spec/models/simple_generate_image200_response_data_inner_any_of_spec.rb +36 -0
  381. data/spec/models/simple_generate_image200_response_data_inner_spec.rb +21 -0
  382. data/spec/models/simple_generate_image200_response_spec.rb +42 -0
  383. data/spec/models/simple_generate_image_request_spec.rb +29 -33
  384. data/spec/models/system_message_content_spec.rb +21 -0
  385. data/spec/models/system_message_spec.rb +52 -0
  386. data/spec/models/text_model_constraints_spec.rb +42 -0
  387. data/spec/models/text_model_constraints_temperature_spec.rb +36 -0
  388. data/spec/models/text_model_constraints_top_p_spec.rb +36 -0
  389. data/spec/models/text_spec.rb +46 -0
  390. data/spec/models/tool_call_function_spec.rb +48 -0
  391. data/spec/models/tool_call_spec.rb +22 -25
  392. data/spec/models/tool_message_spec.rb +70 -0
  393. data/spec/models/upscale_image_request_enhance_spec.rb +21 -0
  394. data/spec/models/upscale_image_request_spec.rb +28 -31
  395. data/spec/models/user_message_content_spec.rb +21 -0
  396. data/spec/models/user_message_spec.rb +46 -0
  397. data/spec/spec_helper.rb +7 -6
  398. data/swagger.yaml +4791 -0
  399. data/update.sh +9 -0
  400. metadata +440 -356
  401. data/docs/AnyOfChatCompletionRequestMessagesItems.md +0 -6
  402. data/docs/AnyOfChatCompletionRequestStop.md +0 -6
  403. data/docs/AnyOfChatCompletionRequestToolChoice.md +0 -6
  404. data/docs/AnyOfCreateEmbeddingRequestSchemaInput.md +0 -6
  405. data/docs/AnyOfCreateEmbeddingRequestSchemaModel.md +0 -6
  406. data/docs/AnyOfModelResponseModelSpecConstraints.md +0 -6
  407. data/docs/AnyOfModelResponseModelSpecPricing.md +0 -6
  408. data/docs/AnyOfUpscaleImageRequestEnhance.md +0 -6
  409. data/docs/AnyOfUpscaleImageRequestImage.md +0 -6
  410. data/docs/AnyOfapiKeysBodyExpiresAt.md +0 -6
  411. data/docs/AnyOfapiKeysConsumptionLimitUsd.md +0 -6
  412. data/docs/AnyOfapiKeysConsumptionLimitVcu.md +0 -6
  413. data/docs/AnyOfapiKeysGenerateWeb3KeyBodyExpiresAt.md +0 -6
  414. data/docs/AnyOfinlineResponse2002DataItems.md +0 -6
  415. data/docs/AnyOfinlineResponse2004Type.md +0 -6
  416. data/docs/AnyOfinlineResponse2005Type.md +0 -6
  417. data/docs/AnyOfinlineResponse2006Type.md +0 -6
  418. data/docs/AnyOfinlineResponse200ChoicesMessage.md +0 -6
  419. data/docs/AnyOfinlineResponse200PromptLogprobs.md +0 -6
  420. data/docs/ApiKeysBody.md +0 -10
  421. data/docs/ApiKeysConsumptionLimit.md +0 -8
  422. data/docs/ApiKeysGenerateWeb3KeyBody.md +0 -13
  423. data/docs/BillingUsageResponseData.md +0 -14
  424. data/docs/BillingUsageResponseInferenceDetails.md +0 -10
  425. data/docs/BillingUsageResponsePagination.md +0 -10
  426. data/docs/ChatCompletionRequestFunction.md +0 -9
  427. data/docs/InlineResponse200.md +0 -14
  428. data/docs/InlineResponse2001.md +0 -10
  429. data/docs/InlineResponse20010.md +0 -7
  430. data/docs/InlineResponse20010Data.md +0 -12
  431. data/docs/InlineResponse20010DataApiTier.md +0 -8
  432. data/docs/InlineResponse20010DataBalances.md +0 -8
  433. data/docs/InlineResponse20010DataRateLimits.md +0 -8
  434. data/docs/InlineResponse20010DataRateLimits1.md +0 -8
  435. data/docs/InlineResponse20011.md +0 -8
  436. data/docs/InlineResponse20011Data.md +0 -11
  437. data/docs/InlineResponse20012.md +0 -8
  438. data/docs/InlineResponse20012Data.md +0 -7
  439. data/docs/InlineResponse20013.md +0 -8
  440. data/docs/InlineResponse20013Data.md +0 -16
  441. data/docs/InlineResponse20013Stats.md +0 -7
  442. data/docs/InlineResponse20014.md +0 -10
  443. data/docs/InlineResponse20014Data.md +0 -9
  444. data/docs/InlineResponse20014Usage.md +0 -8
  445. data/docs/InlineResponse20015.md +0 -8
  446. data/docs/InlineResponse2001Timing.md +0 -10
  447. data/docs/InlineResponse2002.md +0 -8
  448. data/docs/InlineResponse2003.md +0 -8
  449. data/docs/InlineResponse2004.md +0 -9
  450. data/docs/InlineResponse2005.md +0 -9
  451. data/docs/InlineResponse2006.md +0 -9
  452. data/docs/InlineResponse2007.md +0 -8
  453. data/docs/InlineResponse2007Data.md +0 -15
  454. data/docs/InlineResponse2007Usage.md +0 -7
  455. data/docs/InlineResponse2007UsageTrailingSevenDays.md +0 -8
  456. data/docs/InlineResponse2008.md +0 -8
  457. data/docs/InlineResponse2008Data.md +0 -12
  458. data/docs/InlineResponse2009.md +0 -7
  459. data/docs/InlineResponse200Choices.md +0 -11
  460. data/docs/InlineResponse200Logprobs.md +0 -10
  461. data/docs/InlineResponse200LogprobsTopLogprobs.md +0 -9
  462. data/docs/InlineResponse200Usage.md +0 -10
  463. data/docs/InlineResponse200VeniceParameters.md +0 -13
  464. data/docs/InlineResponse200VeniceParametersWebSearchCitations.md +0 -10
  465. data/docs/InlineResponse400.md +0 -8
  466. data/docs/InlineResponse401.md +0 -7
  467. data/docs/InlineResponse402.md +0 -7
  468. data/docs/InlineResponse403.md +0 -7
  469. data/docs/InlineResponse415.md +0 -7
  470. data/docs/InlineResponse429.md +0 -7
  471. data/docs/InlineResponse500.md +0 -7
  472. data/docs/InlineResponse5001.md +0 -7
  473. data/docs/InlineResponse503.md +0 -7
  474. data/docs/ModelCompatibilitySchema.md +0 -6
  475. data/docs/ModelTraitSchema.md +0 -6
  476. data/docs/OneOfChatCompletionRequestResponseFormat.md +0 -6
  477. data/docs/Type.md +0 -6
  478. data/lib/venice_client/models/any_of_chat_completion_request_messages_items.rb +0 -197
  479. data/lib/venice_client/models/any_of_chat_completion_request_stop.rb +0 -197
  480. data/lib/venice_client/models/any_of_chat_completion_request_tool_choice.rb +0 -197
  481. data/lib/venice_client/models/any_of_create_embedding_request_schema_input.rb +0 -197
  482. data/lib/venice_client/models/any_of_create_embedding_request_schema_model.rb +0 -197
  483. data/lib/venice_client/models/any_of_model_response_model_spec_constraints.rb +0 -197
  484. data/lib/venice_client/models/any_of_model_response_model_spec_pricing.rb +0 -197
  485. data/lib/venice_client/models/any_of_upscale_image_request_enhance.rb +0 -197
  486. data/lib/venice_client/models/any_of_upscale_image_request_image.rb +0 -197
  487. data/lib/venice_client/models/any_ofapi_keys_body_expires_at.rb +0 -197
  488. data/lib/venice_client/models/any_ofapi_keys_consumption_limit_usd.rb +0 -197
  489. data/lib/venice_client/models/any_ofapi_keys_consumption_limit_vcu.rb +0 -195
  490. data/lib/venice_client/models/any_ofapi_keys_generate_web3_key_body_expires_at.rb +0 -197
  491. data/lib/venice_client/models/any_ofinline_response_200_2_data_items.rb +0 -197
  492. data/lib/venice_client/models/any_ofinline_response_200_4_type.rb +0 -197
  493. data/lib/venice_client/models/any_ofinline_response_200_5_type.rb +0 -197
  494. data/lib/venice_client/models/any_ofinline_response_200_6_type.rb +0 -197
  495. data/lib/venice_client/models/any_ofinline_response_200_choices_message.rb +0 -197
  496. data/lib/venice_client/models/any_ofinline_response_200_prompt_logprobs.rb +0 -197
  497. data/lib/venice_client/models/inline_response_200_9.rb +0 -211
  498. data/lib/venice_client/models/inline_response_429.rb +0 -212
  499. data/lib/venice_client/models/inline_response_500.rb +0 -212
  500. data/lib/venice_client/models/inline_response_500_1.rb +0 -212
  501. data/lib/venice_client/models/inline_response_503.rb +0 -212
  502. data/lib/venice_client/models/model_compatibility_schema.rb +0 -202
  503. data/lib/venice_client/models/model_trait_schema.rb +0 -200
  504. data/lib/venice_client/models/one_of_chat_completion_request_response_format.rb +0 -197
  505. data/lib/venice_client/models/type.rb +0 -198
  506. data/spec/api_client_spec.rb +0 -225
  507. data/spec/base_object_spec.rb +0 -109
  508. data/spec/configuration_spec.rb +0 -41
  509. data/spec/models/any_of_chat_completion_request_messages_items_spec.rb +0 -34
  510. data/spec/models/any_of_chat_completion_request_stop_spec.rb +0 -34
  511. data/spec/models/any_of_chat_completion_request_tool_choice_spec.rb +0 -34
  512. data/spec/models/any_of_create_embedding_request_schema_input_spec.rb +0 -34
  513. data/spec/models/any_of_create_embedding_request_schema_model_spec.rb +0 -34
  514. data/spec/models/any_of_model_response_model_spec_constraints_spec.rb +0 -34
  515. data/spec/models/any_of_model_response_model_spec_pricing_spec.rb +0 -34
  516. data/spec/models/any_of_upscale_image_request_enhance_spec.rb +0 -34
  517. data/spec/models/any_of_upscale_image_request_image_spec.rb +0 -34
  518. data/spec/models/any_ofapi_keys_body_expires_at_spec.rb +0 -34
  519. data/spec/models/any_ofapi_keys_consumption_limit_usd_spec.rb +0 -34
  520. data/spec/models/any_ofapi_keys_consumption_limit_vcu_spec.rb +0 -34
  521. data/spec/models/any_ofapi_keys_generate_web3_key_body_expires_at_spec.rb +0 -34
  522. data/spec/models/any_ofinline_response_200_2_data_items_spec.rb +0 -34
  523. data/spec/models/any_ofinline_response_200_4_type_spec.rb +0 -34
  524. data/spec/models/any_ofinline_response_200_5_type_spec.rb +0 -34
  525. data/spec/models/any_ofinline_response_200_6_type_spec.rb +0 -34
  526. data/spec/models/any_ofinline_response_200_choices_message_spec.rb +0 -34
  527. data/spec/models/any_ofinline_response_200_prompt_logprobs_spec.rb +0 -34
  528. data/spec/models/api_keys_body_spec.rb +0 -61
  529. data/spec/models/api_keys_consumption_limit_spec.rb +0 -46
  530. data/spec/models/api_keys_generate_web3_key_body_spec.rb +0 -80
  531. data/spec/models/billing_usage_response_data_spec.rb +0 -86
  532. data/spec/models/billing_usage_response_inference_details_spec.rb +0 -57
  533. data/spec/models/billing_usage_response_pagination_spec.rb +0 -58
  534. data/spec/models/chat_completion_request_function_spec.rb +0 -52
  535. data/spec/models/inline_response_200_10_data_api_tier_spec.rb +0 -45
  536. data/spec/models/inline_response_200_10_data_balances_spec.rb +0 -45
  537. data/spec/models/inline_response_200_10_data_rate_limits_1_spec.rb +0 -45
  538. data/spec/models/inline_response_200_10_data_rate_limits_spec.rb +0 -46
  539. data/spec/models/inline_response_200_10_data_spec.rb +0 -69
  540. data/spec/models/inline_response_200_10_spec.rb +0 -40
  541. data/spec/models/inline_response_200_11_data_spec.rb +0 -64
  542. data/spec/models/inline_response_200_11_spec.rb +0 -50
  543. data/spec/models/inline_response_200_12_data_spec.rb +0 -39
  544. data/spec/models/inline_response_200_12_spec.rb +0 -46
  545. data/spec/models/inline_response_200_13_data_spec.rb +0 -93
  546. data/spec/models/inline_response_200_13_spec.rb +0 -49
  547. data/spec/models/inline_response_200_13_stats_spec.rb +0 -40
  548. data/spec/models/inline_response_200_14_data_spec.rb +0 -55
  549. data/spec/models/inline_response_200_14_spec.rb +0 -61
  550. data/spec/models/inline_response_200_14_usage_spec.rb +0 -45
  551. data/spec/models/inline_response_200_15_spec.rb +0 -45
  552. data/spec/models/inline_response_200_1_spec.rb +0 -57
  553. data/spec/models/inline_response_200_1_timing_spec.rb +0 -58
  554. data/spec/models/inline_response_200_2_spec.rb +0 -46
  555. data/spec/models/inline_response_200_3_spec.rb +0 -50
  556. data/spec/models/inline_response_200_4_spec.rb +0 -55
  557. data/spec/models/inline_response_200_5_spec.rb +0 -55
  558. data/spec/models/inline_response_200_6_spec.rb +0 -55
  559. data/spec/models/inline_response_200_7_data_spec.rb +0 -91
  560. data/spec/models/inline_response_200_7_spec.rb +0 -50
  561. data/spec/models/inline_response_200_7_usage_spec.rb +0 -39
  562. data/spec/models/inline_response_200_7_usage_trailing_seven_days_spec.rb +0 -45
  563. data/spec/models/inline_response_200_8_data_spec.rb +0 -73
  564. data/spec/models/inline_response_200_8_spec.rb +0 -45
  565. data/spec/models/inline_response_200_9_spec.rb +0 -39
  566. data/spec/models/inline_response_200_choices_spec.rb +0 -72
  567. data/spec/models/inline_response_200_logprobs_spec.rb +0 -57
  568. data/spec/models/inline_response_200_logprobs_top_logprobs_spec.rb +0 -51
  569. data/spec/models/inline_response_200_spec.rb +0 -85
  570. data/spec/models/inline_response_200_usage_spec.rb +0 -57
  571. data/spec/models/inline_response_200_venice_parameters_spec.rb +0 -80
  572. data/spec/models/inline_response_200_venice_parameters_web_search_citations_spec.rb +0 -57
  573. data/spec/models/inline_response_400_spec.rb +0 -45
  574. data/spec/models/inline_response_401_spec.rb +0 -39
  575. data/spec/models/inline_response_402_spec.rb +0 -39
  576. data/spec/models/inline_response_403_spec.rb +0 -40
  577. data/spec/models/inline_response_415_spec.rb +0 -40
  578. data/spec/models/inline_response_429_spec.rb +0 -39
  579. data/spec/models/inline_response_500_1_spec.rb +0 -40
  580. data/spec/models/inline_response_500_spec.rb +0 -39
  581. data/spec/models/inline_response_503_spec.rb +0 -40
  582. data/spec/models/model_compatibility_schema_spec.rb +0 -34
  583. data/spec/models/model_trait_schema_spec.rb +0 -34
  584. data/spec/models/one_of_chat_completion_request_response_format_spec.rb +0 -34
  585. data/spec/models/type_spec.rb +0 -34
  586. data/venice_client.gemspec +0 -38
@@ -3,16 +3,18 @@
3
3
 
4
4
  #The Venice.ai API.
5
5
 
6
- OpenAPI spec version: 20250521.233203
6
+ The version of the OpenAPI document: 20250709.013306
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.14.0
7
10
 
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 3.0.68
10
11
  =end
11
12
 
12
13
  require 'date'
14
+ require 'time'
13
15
 
14
16
  module VeniceClient
15
- class ChatCompletionRequestFunction
17
+ class ToolCallFunction
16
18
  attr_accessor :description
17
19
 
18
20
  attr_accessor :name
@@ -28,12 +30,22 @@ module VeniceClient
28
30
  }
29
31
  end
30
32
 
33
+ # Returns attribute mapping this model knows about
34
+ def self.acceptable_attribute_map
35
+ attribute_map
36
+ end
37
+
38
+ # Returns all the JSON keys this model knows about
39
+ def self.acceptable_attributes
40
+ acceptable_attribute_map.values
41
+ end
42
+
31
43
  # Attribute type mapping.
32
44
  def self.openapi_types
33
45
  {
34
- :'description' => :'Object',
35
- :'name' => :'Object',
36
- :'parameters' => :'Object'
46
+ :'description' => :'String',
47
+ :'name' => :'String',
48
+ :'parameters' => :'Hash<String, Object>'
37
49
  }
38
50
  end
39
51
 
@@ -42,18 +54,19 @@ module VeniceClient
42
54
  Set.new([
43
55
  ])
44
56
  end
45
-
57
+
46
58
  # Initializes the object
47
59
  # @param [Hash] attributes Model attributes in the form of hash
48
60
  def initialize(attributes = {})
49
61
  if (!attributes.is_a?(Hash))
50
- fail ArgumentError, "The input argument (attributes) must be a hash in `VeniceClient::ChatCompletionRequestFunction` initialize method"
62
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeniceClient::ToolCallFunction` initialize method"
51
63
  end
52
64
 
53
65
  # check to see if the attribute exists and convert string to symbol for hash key
66
+ acceptable_attribute_map = self.class.acceptable_attribute_map
54
67
  attributes = attributes.each_with_object({}) { |(k, v), h|
55
- if (!self.class.attribute_map.key?(k.to_sym))
56
- fail ArgumentError, "`#{k}` is not a valid attribute in `VeniceClient::ChatCompletionRequestFunction`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
68
+ if (!acceptable_attribute_map.key?(k.to_sym))
69
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeniceClient::ToolCallFunction`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
57
70
  end
58
71
  h[k.to_sym] = v
59
72
  }
@@ -64,6 +77,8 @@ module VeniceClient
64
77
 
65
78
  if attributes.key?(:'name')
66
79
  self.name = attributes[:'name']
80
+ else
81
+ self.name = nil
67
82
  end
68
83
 
69
84
  if attributes.key?(:'parameters')
@@ -76,6 +91,7 @@ module VeniceClient
76
91
  # Show invalid properties with the reasons. Usually used together with valid?
77
92
  # @return Array for valid properties with the reasons
78
93
  def list_invalid_properties
94
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
79
95
  invalid_properties = Array.new
80
96
  if @name.nil?
81
97
  invalid_properties.push('invalid value for "name", name cannot be nil.')
@@ -87,10 +103,21 @@ module VeniceClient
87
103
  # Check to see if the all the properties in the model are valid
88
104
  # @return true if the model is valid
89
105
  def valid?
106
+ warn '[DEPRECATED] the `valid?` method is obsolete'
90
107
  return false if @name.nil?
91
108
  true
92
109
  end
93
110
 
111
+ # Custom attribute writer method with validation
112
+ # @param [Object] name Value to be assigned
113
+ def name=(name)
114
+ if name.nil?
115
+ fail ArgumentError, 'name cannot be nil'
116
+ end
117
+
118
+ @name = name
119
+ end
120
+
94
121
  # Checks equality by comparing each attribute.
95
122
  # @param [Object] Object to be compared
96
123
  def ==(o)
@@ -117,39 +144,33 @@ module VeniceClient
117
144
  # @param [Hash] attributes Model attributes in the form of hash
118
145
  # @return [Object] Returns the model itself
119
146
  def self.build_from_hash(attributes)
120
- new.build_from_hash(attributes)
121
- end
122
-
123
- # Builds the object from hash
124
- # @param [Hash] attributes Model attributes in the form of hash
125
- # @return [Object] Returns the model itself
126
- def build_from_hash(attributes)
127
147
  return nil unless attributes.is_a?(Hash)
128
- self.class.openapi_types.each_pair do |key, type|
129
- if type =~ /\AArray<(.*)>/i
148
+ attributes = attributes.transform_keys(&:to_sym)
149
+ transformed_hash = {}
150
+ openapi_types.each_pair do |key, type|
151
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
152
+ transformed_hash["#{key}"] = nil
153
+ elsif type =~ /\AArray<(.*)>/i
130
154
  # check to ensure the input is an array given that the attribute
131
155
  # is documented as an array but the input is not
132
- if attributes[self.class.attribute_map[key]].is_a?(Array)
133
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
156
+ if attributes[attribute_map[key]].is_a?(Array)
157
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
134
158
  end
135
- elsif !attributes[self.class.attribute_map[key]].nil?
136
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
137
- elsif attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
138
- self.send("#{key}=", nil)
159
+ elsif !attributes[attribute_map[key]].nil?
160
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
139
161
  end
140
162
  end
141
-
142
- self
163
+ new(transformed_hash)
143
164
  end
144
165
 
145
166
  # Deserializes the data based on type
146
167
  # @param string type Data type
147
168
  # @param string value Value to be deserialized
148
169
  # @return [Object] Deserialized data
149
- def _deserialize(type, value)
170
+ def self._deserialize(type, value)
150
171
  case type.to_sym
151
- when :DateTime
152
- DateTime.parse(value)
172
+ when :Time
173
+ Time.parse(value)
153
174
  when :Date
154
175
  Date.parse(value)
155
176
  when :String
@@ -179,7 +200,9 @@ module VeniceClient
179
200
  end
180
201
  end
181
202
  else # model
182
- VeniceClient.const_get(type).build_from_hash(value)
203
+ # models (e.g. Pet) or oneOf
204
+ klass = VeniceClient.const_get(type)
205
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
183
206
  end
184
207
  end
185
208
 
@@ -227,5 +250,8 @@ module VeniceClient
227
250
  else
228
251
  value
229
252
  end
230
- end end
253
+ end
254
+
255
+ end
256
+
231
257
  end
@@ -0,0 +1,344 @@
1
+ =begin
2
+ #Venice.ai API
3
+
4
+ #The Venice.ai API.
5
+
6
+ The version of the OpenAPI document: 20250709.013306
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.14.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module VeniceClient
17
+ # The tool message is a special message that is used to call a tool. It is not part of the conversation and is not visible to the user.
18
+ class ToolMessage
19
+ attr_accessor :content
20
+
21
+ attr_accessor :name
22
+
23
+ attr_accessor :reasoning_content
24
+
25
+ attr_accessor :role
26
+
27
+ attr_accessor :tool_call_id
28
+
29
+ attr_accessor :tool_calls
30
+
31
+ class EnumAttributeValidator
32
+ attr_reader :datatype
33
+ attr_reader :allowable_values
34
+
35
+ def initialize(datatype, allowable_values)
36
+ @allowable_values = allowable_values.map do |value|
37
+ case datatype.to_s
38
+ when /Integer/i
39
+ value.to_i
40
+ when /Float/i
41
+ value.to_f
42
+ else
43
+ value
44
+ end
45
+ end
46
+ end
47
+
48
+ def valid?(value)
49
+ !value || allowable_values.include?(value)
50
+ end
51
+ end
52
+
53
+ # Attribute mapping from ruby-style variable name to JSON key.
54
+ def self.attribute_map
55
+ {
56
+ :'content' => :'content',
57
+ :'name' => :'name',
58
+ :'reasoning_content' => :'reasoning_content',
59
+ :'role' => :'role',
60
+ :'tool_call_id' => :'tool_call_id',
61
+ :'tool_calls' => :'tool_calls'
62
+ }
63
+ end
64
+
65
+ # Returns attribute mapping this model knows about
66
+ def self.acceptable_attribute_map
67
+ attribute_map
68
+ end
69
+
70
+ # Returns all the JSON keys this model knows about
71
+ def self.acceptable_attributes
72
+ acceptable_attribute_map.values
73
+ end
74
+
75
+ # Attribute type mapping.
76
+ def self.openapi_types
77
+ {
78
+ :'content' => :'String',
79
+ :'name' => :'String',
80
+ :'reasoning_content' => :'String',
81
+ :'role' => :'String',
82
+ :'tool_call_id' => :'String',
83
+ :'tool_calls' => :'Array<Object>'
84
+ }
85
+ end
86
+
87
+ # List of attributes with nullable: true
88
+ def self.openapi_nullable
89
+ Set.new([
90
+ :'reasoning_content',
91
+ ])
92
+ end
93
+
94
+ # Initializes the object
95
+ # @param [Hash] attributes Model attributes in the form of hash
96
+ def initialize(attributes = {})
97
+ if (!attributes.is_a?(Hash))
98
+ fail ArgumentError, "The input argument (attributes) must be a hash in `VeniceClient::ToolMessage` initialize method"
99
+ end
100
+
101
+ # check to see if the attribute exists and convert string to symbol for hash key
102
+ acceptable_attribute_map = self.class.acceptable_attribute_map
103
+ attributes = attributes.each_with_object({}) { |(k, v), h|
104
+ if (!acceptable_attribute_map.key?(k.to_sym))
105
+ fail ArgumentError, "`#{k}` is not a valid attribute in `VeniceClient::ToolMessage`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
106
+ end
107
+ h[k.to_sym] = v
108
+ }
109
+
110
+ if attributes.key?(:'content')
111
+ self.content = attributes[:'content']
112
+ else
113
+ self.content = nil
114
+ end
115
+
116
+ if attributes.key?(:'name')
117
+ self.name = attributes[:'name']
118
+ end
119
+
120
+ if attributes.key?(:'reasoning_content')
121
+ self.reasoning_content = attributes[:'reasoning_content']
122
+ end
123
+
124
+ if attributes.key?(:'role')
125
+ self.role = attributes[:'role']
126
+ else
127
+ self.role = nil
128
+ end
129
+
130
+ if attributes.key?(:'tool_call_id')
131
+ self.tool_call_id = attributes[:'tool_call_id']
132
+ else
133
+ self.tool_call_id = nil
134
+ end
135
+
136
+ if attributes.key?(:'tool_calls')
137
+ if (value = attributes[:'tool_calls']).is_a?(Array)
138
+ self.tool_calls = value
139
+ end
140
+ end
141
+ end
142
+
143
+ # Show invalid properties with the reasons. Usually used together with valid?
144
+ # @return Array for valid properties with the reasons
145
+ def list_invalid_properties
146
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
147
+ invalid_properties = Array.new
148
+ if @content.nil?
149
+ invalid_properties.push('invalid value for "content", content cannot be nil.')
150
+ end
151
+
152
+ if @role.nil?
153
+ invalid_properties.push('invalid value for "role", role cannot be nil.')
154
+ end
155
+
156
+ if @tool_call_id.nil?
157
+ invalid_properties.push('invalid value for "tool_call_id", tool_call_id cannot be nil.')
158
+ end
159
+
160
+ invalid_properties
161
+ end
162
+
163
+ # Check to see if the all the properties in the model are valid
164
+ # @return true if the model is valid
165
+ def valid?
166
+ warn '[DEPRECATED] the `valid?` method is obsolete'
167
+ return false if @content.nil?
168
+ return false if @role.nil?
169
+ role_validator = EnumAttributeValidator.new('String', ["tool"])
170
+ return false unless role_validator.valid?(@role)
171
+ return false if @tool_call_id.nil?
172
+ true
173
+ end
174
+
175
+ # Custom attribute writer method with validation
176
+ # @param [Object] content Value to be assigned
177
+ def content=(content)
178
+ if content.nil?
179
+ fail ArgumentError, 'content cannot be nil'
180
+ end
181
+
182
+ @content = content
183
+ end
184
+
185
+ # Custom attribute writer method checking allowed values (enum).
186
+ # @param [Object] role Object to be assigned
187
+ def role=(role)
188
+ validator = EnumAttributeValidator.new('String', ["tool"])
189
+ unless validator.valid?(role)
190
+ fail ArgumentError, "invalid value for \"role\", must be one of #{validator.allowable_values}."
191
+ end
192
+ @role = role
193
+ end
194
+
195
+ # Custom attribute writer method with validation
196
+ # @param [Object] tool_call_id Value to be assigned
197
+ def tool_call_id=(tool_call_id)
198
+ if tool_call_id.nil?
199
+ fail ArgumentError, 'tool_call_id cannot be nil'
200
+ end
201
+
202
+ @tool_call_id = tool_call_id
203
+ end
204
+
205
+ # Checks equality by comparing each attribute.
206
+ # @param [Object] Object to be compared
207
+ def ==(o)
208
+ return true if self.equal?(o)
209
+ self.class == o.class &&
210
+ content == o.content &&
211
+ name == o.name &&
212
+ reasoning_content == o.reasoning_content &&
213
+ role == o.role &&
214
+ tool_call_id == o.tool_call_id &&
215
+ tool_calls == o.tool_calls
216
+ end
217
+
218
+ # @see the `==` method
219
+ # @param [Object] Object to be compared
220
+ def eql?(o)
221
+ self == o
222
+ end
223
+
224
+ # Calculates hash code according to all attributes.
225
+ # @return [Integer] Hash code
226
+ def hash
227
+ [content, name, reasoning_content, role, tool_call_id, tool_calls].hash
228
+ end
229
+
230
+ # Builds the object from hash
231
+ # @param [Hash] attributes Model attributes in the form of hash
232
+ # @return [Object] Returns the model itself
233
+ def self.build_from_hash(attributes)
234
+ return nil unless attributes.is_a?(Hash)
235
+ attributes = attributes.transform_keys(&:to_sym)
236
+ transformed_hash = {}
237
+ openapi_types.each_pair do |key, type|
238
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
239
+ transformed_hash["#{key}"] = nil
240
+ elsif type =~ /\AArray<(.*)>/i
241
+ # check to ensure the input is an array given that the attribute
242
+ # is documented as an array but the input is not
243
+ if attributes[attribute_map[key]].is_a?(Array)
244
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
245
+ end
246
+ elsif !attributes[attribute_map[key]].nil?
247
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
248
+ end
249
+ end
250
+ new(transformed_hash)
251
+ end
252
+
253
+ # Deserializes the data based on type
254
+ # @param string type Data type
255
+ # @param string value Value to be deserialized
256
+ # @return [Object] Deserialized data
257
+ def self._deserialize(type, value)
258
+ case type.to_sym
259
+ when :Time
260
+ Time.parse(value)
261
+ when :Date
262
+ Date.parse(value)
263
+ when :String
264
+ value.to_s
265
+ when :Integer
266
+ value.to_i
267
+ when :Float
268
+ value.to_f
269
+ when :Boolean
270
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
271
+ true
272
+ else
273
+ false
274
+ end
275
+ when :Object
276
+ # generic object (usually a Hash), return directly
277
+ value
278
+ when /\AArray<(?<inner_type>.+)>\z/
279
+ inner_type = Regexp.last_match[:inner_type]
280
+ value.map { |v| _deserialize(inner_type, v) }
281
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
282
+ k_type = Regexp.last_match[:k_type]
283
+ v_type = Regexp.last_match[:v_type]
284
+ {}.tap do |hash|
285
+ value.each do |k, v|
286
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
287
+ end
288
+ end
289
+ else # model
290
+ # models (e.g. Pet) or oneOf
291
+ klass = VeniceClient.const_get(type)
292
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
293
+ end
294
+ end
295
+
296
+ # Returns the string representation of the object
297
+ # @return [String] String presentation of the object
298
+ def to_s
299
+ to_hash.to_s
300
+ end
301
+
302
+ # to_body is an alias to to_hash (backward compatibility)
303
+ # @return [Hash] Returns the object in the form of hash
304
+ def to_body
305
+ to_hash
306
+ end
307
+
308
+ # Returns the object in the form of hash
309
+ # @return [Hash] Returns the object in the form of hash
310
+ def to_hash
311
+ hash = {}
312
+ self.class.attribute_map.each_pair do |attr, param|
313
+ value = self.send(attr)
314
+ if value.nil?
315
+ is_nullable = self.class.openapi_nullable.include?(attr)
316
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
317
+ end
318
+
319
+ hash[param] = _to_hash(value)
320
+ end
321
+ hash
322
+ end
323
+
324
+ # Outputs non-array value in the form of hash
325
+ # For object, use to_hash. Otherwise, just return the value
326
+ # @param [Object] value Any valid value
327
+ # @return [Hash] Returns the value in the form of hash
328
+ def _to_hash(value)
329
+ if value.is_a?(Array)
330
+ value.compact.map { |v| _to_hash(v) }
331
+ elsif value.is_a?(Hash)
332
+ {}.tap do |hash|
333
+ value.each { |k, v| hash[k] = _to_hash(v) }
334
+ end
335
+ elsif value.respond_to? :to_hash
336
+ value.to_hash
337
+ else
338
+ value
339
+ end
340
+ end
341
+
342
+ end
343
+
344
+ end