From 0de5b769985d412494b01d334410423502fb97e0 Mon Sep 17 00:00:00 2001 From: Li Tai Chen Date: Thu, 30 Jul 2026 12:37:44 -0400 Subject: [PATCH 1/2] feat(models): add Tencent Hy3 model Add Tencent's Hy3 (295B Mixture-of-Experts, 21B active) with provider mappings for DeepInfra and Novita. Native 256K context and three reasoning modes for complex reasoning and agentic tasks. Provider mappings (per-token prices in e-6 notation): DeepInfra (tencent/Hy3): input 0.14e-6, cached 0.035e-6, output 0.58e-6 context 262144, maxOutput 131072, fp8, reasoning/tools/jsonOutput Novita (tencent/hy3): input 0.14e-6, cached 0.035e-6, output 0.58e-6 context 262144, maxOutput 262144, reasoning/tools/jsonOutput reasoningEfforts: ["none", "low", "high"] on both. Verified live against DeepInfra's API that "none" disables reasoning and "low"/"high" enable it. DeepInfra's maxOutput is 131072 (max_output_tokens from its model metadata); the page's "max_tokens 262144" is the full context window, not the output cap. Novita's max_output_tokens is 262144. Refs: https://deepinfra.com/tencent/Hy3 https://novita.ai/models/model-detail/tencent-hy3 https://openrouter.ai/tencent/hy3 https://github.com/Tencent-Hunyuan/Hy3 Co-Authored-By: Claude --- packages/models/src/models.ts | 2 ++ packages/models/src/models/tencent.ts | 47 +++++++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 packages/models/src/models/tencent.ts diff --git a/packages/models/src/models.ts b/packages/models/src/models.ts index 1d82d23290..0a2c0389ec 100644 --- a/packages/models/src/models.ts +++ b/packages/models/src/models.ts @@ -19,6 +19,7 @@ import { openbmbModels } from "./models/openbmb.js"; import { perplexityModels } from "./models/perplexity.js"; import { reveModels } from "./models/reve.js"; import { sakanaModels } from "./models/sakana.js"; +import { tencentModels } from "./models/tencent.js"; import { xaiModels } from "./models/xai.js"; import { xiaomiModels } from "./models/xiaomi.js"; import { zaiModels } from "./models/zai.js"; @@ -736,6 +737,7 @@ export const models = [ ...nousresearchModels, ...reveModels, ...sakanaModels, + ...tencentModels, ...nvidiaModels, ...openbmbModels, ...zaiModels, diff --git a/packages/models/src/models/tencent.ts b/packages/models/src/models/tencent.ts new file mode 100644 index 0000000000..49cd7eacfc --- /dev/null +++ b/packages/models/src/models/tencent.ts @@ -0,0 +1,47 @@ +import type { ModelDefinition } from "@/models.js"; + +export const tencentModels = [ + { + id: "hy3", + name: "Hy3", + description: + "Tencent's 295B Mixture-of-Experts model with 21B active parameters, native 256K context support, and three reasoning modes for complex reasoning and agentic tasks.", + family: "tencent", + releasedAt: new Date("2026-07-06"), + providers: [ + { + providerId: "deepinfra", + externalId: "tencent/Hy3", + inputPrice: "0.14e-6", + cachedInputPrice: "0.035e-6", + outputPrice: "0.58e-6", + requestPrice: "0", + contextSize: 262144, + maxOutput: 131072, + quantization: "fp8", + streaming: true, + reasoning: true, + reasoningEfforts: ["none", "low", "high"], + vision: false, + tools: true, + jsonOutput: true, + }, + { + providerId: "novita", + externalId: "tencent/hy3", + inputPrice: "0.14e-6", + cachedInputPrice: "0.035e-6", + outputPrice: "0.58e-6", + requestPrice: "0", + contextSize: 262144, + maxOutput: 262144, + streaming: true, + reasoning: true, + reasoningEfforts: ["none", "low", "high"], + vision: false, + tools: true, + jsonOutput: true, + }, + ], + }, +] as const satisfies ModelDefinition[]; From 2f0de7e80b12bfb8223b19839a42081b1c0137b5 Mon Sep 17 00:00:00 2001 From: Luca Steeb Date: Fri, 31 Jul 2026 00:30:04 +0100 Subject: [PATCH 2/2] fix(models): correct hy3 json output flags Novita's tencent/hy3 rejects the json_object response format (400, "Supported formats: json_schema"); it only supports json_schema. DeepInfra's tencent/Hy3 supports both. Verified against both provider APIs directly and via the scoped e2e run. Co-Authored-By: Claude --- packages/models/src/models/tencent.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/models/src/models/tencent.ts b/packages/models/src/models/tencent.ts index 49cd7eacfc..f24e53b921 100644 --- a/packages/models/src/models/tencent.ts +++ b/packages/models/src/models/tencent.ts @@ -25,6 +25,7 @@ export const tencentModels = [ vision: false, tools: true, jsonOutput: true, + jsonOutputSchema: true, }, { providerId: "novita", @@ -40,7 +41,7 @@ export const tencentModels = [ reasoningEfforts: ["none", "low", "high"], vision: false, tools: true, - jsonOutput: true, + jsonOutputSchema: true, }, ], },