@sogni-ai/sogni-client 4.2.0-alpha.1 → 4.2.0-alpha.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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ # [4.2.0-alpha.3](https://github.com/Sogni-AI/sogni-client/compare/v4.2.0-alpha.2...v4.2.0-alpha.3) (2026-04-20)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * use thinkingComplexDefault in LLMModelInfo cost estimates ([162011f](https://github.com/Sogni-AI/sogni-client/commit/162011f698b56229629cea8d09fad1b3e313294f))
7
+
8
+ # [4.2.0-alpha.2](https://github.com/Sogni-AI/sogni-client/compare/v4.2.0-alpha.1...v4.2.0-alpha.2) (2026-04-20)
9
+
10
+
11
+ ### Features
12
+
13
+ * update qwen3.6 chat presets and examples ([96b3e23](https://github.com/Sogni-AI/sogni-client/commit/96b3e23169780874ca8273305e2fd4171d0d8dd3))
14
+
1
15
  # [4.2.0-alpha.1](https://github.com/Sogni-AI/sogni-client/compare/v4.1.1...v4.2.0-alpha.1) (2026-04-06)
2
16
 
3
17
 
package/README.md CHANGED
@@ -19,7 +19,7 @@ Behind the scenes this SDK uses a WebSocket connection for communication between
19
19
  - 🤖 **LLM Text Generation** - Chat completions with streaming, multi-turn conversations, and thinking/reasoning mode via OpenAI-compatible API
20
20
  - 🔧 **LLM Tool Calling** - Define custom tools (functions) that the LLM can invoke during conversations for real-time data and actions
21
21
  - 🎨🎬🎵 **Sogni Platform Tools** - Generate images, videos, and music through natural language chat — the LLM detects media intent, enhances prompts, and calls Sogni's generation APIs automatically
22
- - 👁️ **Vision Chat** - Multimodal image understanding with scene description, OCR, object detection, visual analysis, and multi-image comparison via Qwen3.5 VLM
22
+ - 👁️ **Vision Chat** - Multimodal image understanding with scene description, OCR, object detection, visual analysis, and multi-image comparison via Qwen3.6 VLM
23
23
  ## Migration notes
24
24
  ### v3.x.x to v4.x.x
25
25
  Version 4 adds support for video generation, including the new **Wan 2.2 14B FP8** model family with five workflow types (text-to-video, image-to-video, sound-to-video, animate-move, and animate-replace). There are the following breaking changes:
@@ -633,19 +633,30 @@ Send prompts to LLM workers on the Sogni network and receive text responses —
633
633
 
634
634
  ```javascript
635
635
  // Non-streaming chat completion
636
- const response = await sogni.projects.chatCompletion({
637
- model: 'qwen3.5-35b-a3b-gguf-q4km',
636
+ const result = await sogni.chat.completions.create({
637
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
638
638
  messages: [
639
639
  { role: 'system', content: 'You are a helpful assistant.' },
640
640
  { role: 'user', content: 'What is the Sogni Supernet?' }
641
641
  ],
642
642
  max_tokens: 4096,
643
- temperature: 0.7
643
+ think: false,
644
+ taskProfile: 'general'
644
645
  });
645
646
 
646
- console.log(response.choices[0].message.content);
647
+ console.log(result.content);
647
648
  ```
648
649
 
650
+ Qwen3.6-specific preset selection can be hinted with `think` plus `taskProfile`:
651
+
652
+ - `taskProfile: 'general'` + `think: true` for thoughtful general tasks
653
+ - `taskProfile: 'coding'` + `think: true` for precise coding / webdev work
654
+ - `taskProfile: 'general'` + `think: false` for direct everyday responses
655
+ - `taskProfile: 'reasoning'` + `think: false` for analytical non-thinking tasks
656
+
657
+ You can still override sampling manually with `temperature`, `top_p`, `top_k`,
658
+ `min_p`, `presence_penalty`, and `repetition_penalty`.
659
+
649
660
  ### LLM Tool Calling (Function Calling)
650
661
 
651
662
  Define custom tools that the LLM can invoke during conversations. The LLM decides when a tool is needed, returns structured arguments, and you execute the function locally before feeding results back:
@@ -668,11 +679,13 @@ const tools = [
668
679
  }
669
680
  ];
670
681
 
671
- const response = await sogni.projects.chatCompletion({
672
- model: 'qwen3.5-35b-a3b-gguf-q4km',
682
+ const response = await sogni.chat.completions.create({
683
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
673
684
  messages: [{ role: 'user', content: "What's the weather in Austin?" }],
674
685
  tools: tools,
675
- tool_choice: 'auto'
686
+ tool_choice: 'auto',
687
+ think: false,
688
+ taskProfile: 'reasoning'
676
689
  });
677
690
  ```
678
691
 
@@ -723,7 +736,7 @@ The workflow examples showcase a few powerful open-source frontier models suppor
723
736
  | `qwen_image_edit_2511_fp8_lightning` | **Qwen Image Edit Lightning** - Fast 4-step editing | Rapid reference-based image generation |
724
737
  | `qwen_image_edit_2511_fp8` | **Qwen Image Edit** - High quality 20-step editing | Professional image editing with context awareness |
725
738
  | `wan_v2.2-14b-fp8_t2v_lightx2v` | **Wan 2.2 T2V** - Text-to-video | Generate videos from text prompts |
726
- | `qwen3.5-35b-a3b-gguf-q4km` | **Qwen3.5 35B VLM** - LLM chat, tool calling & vision | Latest model with 32K context, reasoning, tool calling, and multimodal image understanding |
739
+ | `qwen3.6-35b-a3b-gguf-iq4xs` | **Qwen3.6 35B VLM** - LLM chat, tool calling & vision | Latest model with 262,144 native context length, reasoning, tool calling, and multimodal image understanding |
727
740
 
728
741
  All workflow examples include:
729
742
  - Interactive model and parameter selection
@@ -765,7 +778,7 @@ When helping users generate images, videos, or use LLM features with Sogni:
765
778
  3. **Audio generation**: Use `type: 'audio'` with ACE-Step 1.5 models
766
779
  4. **LLM text chat**: Use `sogni.projects.chatCompletion()` for text generation with streaming and tool calling
767
780
  5. **Sogni Platform Tools**: Combine LLM tool calling with Sogni media generation to create images, videos, and music from natural language
768
- 6. **Vision chat**: Use `qwen3.5-35b-a3b-gguf-q4km` VLM for multimodal image understanding with `image_url` content type
781
+ 6. **Vision chat**: Use `qwen3.6-35b-a3b-gguf-iq4xs` VLM for multimodal image understanding with `image_url` content type
769
782
  7. **WAN 2.2 vs LTX-2.3**: These model families have different FPS behaviors - see `llms-full.txt` for details
770
783
 
771
784
  ## API Documentation
@@ -30,7 +30,7 @@ export interface ChatApiEvents {
30
30
  * ```typescript
31
31
  * // Streaming
32
32
  * const stream = await sogni.chat.completions.create({
33
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
33
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
34
34
  * messages: [{ role: 'user', content: 'Hello!' }],
35
35
  * stream: true,
36
36
  * });
@@ -40,7 +40,7 @@ export interface ChatApiEvents {
40
40
  *
41
41
  * // Non-streaming
42
42
  * const result = await sogni.chat.completions.create({
43
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
43
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
44
44
  * messages: [{ role: 'user', content: 'Hello!' }],
45
45
  * });
46
46
  * console.log(result.content);
@@ -89,9 +89,10 @@ declare class ChatApi extends ApiGroup<ChatApiEvents> {
89
89
  * @example
90
90
  * ```typescript
91
91
  * const estimate = await sogni.chat.estimateCost({
92
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
92
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
93
93
  * messages: [{ role: 'user', content: 'Hello!' }],
94
- * max_tokens: 1024,
94
+ * think: true,
95
+ * taskProfile: 'reasoning',
95
96
  * });
96
97
  * console.log(`Estimated cost: ${estimate.costInToken.toFixed(6)}`);
97
98
  * ```
@@ -101,7 +102,10 @@ declare class ChatApi extends ApiGroup<ChatApiEvents> {
101
102
  messages: ChatMessage[];
102
103
  max_tokens?: number;
103
104
  tokenType?: 'sogni' | 'spark';
105
+ think?: boolean;
106
+ taskProfile?: 'general' | 'coding' | 'reasoning';
104
107
  }): Promise<LLMCostEstimation>;
108
+ private resolveEstimatedMaxOutputTokens;
105
109
  private handleSwarmLLMModels;
106
110
  /**
107
111
  * Strip base64 image data from messages before token estimation.
@@ -26,7 +26,7 @@ const getUUID_1 = __importDefault(require("../lib/getUUID"));
26
26
  * ```typescript
27
27
  * // Streaming
28
28
  * const stream = await sogni.chat.completions.create({
29
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
29
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
30
30
  * messages: [{ role: 'user', content: 'Hello!' }],
31
31
  * stream: true,
32
32
  * });
@@ -36,7 +36,7 @@ const getUUID_1 = __importDefault(require("../lib/getUUID"));
36
36
  *
37
37
  * // Non-streaming
38
38
  * const result = await sogni.chat.completions.create({
39
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
39
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
40
40
  * messages: [{ role: 'user', content: 'Hello!' }],
41
41
  * });
42
42
  * console.log(result.content);
@@ -103,9 +103,10 @@ class ChatApi extends ApiGroup_1.default {
103
103
  * @example
104
104
  * ```typescript
105
105
  * const estimate = await sogni.chat.estimateCost({
106
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
106
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
107
107
  * messages: [{ role: 'user', content: 'Hello!' }],
108
- * max_tokens: 1024,
108
+ * think: true,
109
+ * taskProfile: 'reasoning',
109
110
  * });
110
111
  * console.log(`Estimated cost: ${estimate.costInToken.toFixed(6)}`);
111
112
  * ```
@@ -114,7 +115,7 @@ class ChatApi extends ApiGroup_1.default {
114
115
  return __awaiter(this, void 0, void 0, function* () {
115
116
  const tokenType = params.tokenType || 'sogni';
116
117
  const inputTokens = Math.ceil(JSON.stringify(this.stripImageDataForEstimation(params.messages)).length / 4);
117
- const maxOutputTokens = params.max_tokens || 4096;
118
+ const maxOutputTokens = this.resolveEstimatedMaxOutputTokens(params);
118
119
  const pathParams = [tokenType, params.model, inputTokens, maxOutputTokens];
119
120
  const path = pathParams.map((p) => encodeURIComponent(p)).join('/');
120
121
  const r = yield this.client.socket.get(`/api/v1/job-llm/estimate/${path}`);
@@ -128,6 +129,24 @@ class ChatApi extends ApiGroup_1.default {
128
129
  };
129
130
  });
130
131
  }
132
+ resolveEstimatedMaxOutputTokens(params) {
133
+ var _a, _b;
134
+ if (typeof params.max_tokens === 'number' && Number.isFinite(params.max_tokens)) {
135
+ return params.max_tokens;
136
+ }
137
+ const modelInfo = this.availableLLMModels[params.model];
138
+ const defaultFromModel = (_a = modelInfo === null || modelInfo === void 0 ? void 0 : modelInfo.maxOutputTokens) === null || _a === void 0 ? void 0 : _a.default;
139
+ const thinkingComplexDefault = (_b = modelInfo === null || modelInfo === void 0 ? void 0 : modelInfo.maxOutputTokens) === null || _b === void 0 ? void 0 : _b.thinkingComplexDefault;
140
+ const isComplexThinking = params.think === true
141
+ && (params.taskProfile === 'coding' || params.taskProfile === 'reasoning');
142
+ if (isComplexThinking && typeof thinkingComplexDefault === 'number' && Number.isFinite(thinkingComplexDefault)) {
143
+ return thinkingComplexDefault;
144
+ }
145
+ if (typeof defaultFromModel === 'number' && Number.isFinite(defaultFromModel)) {
146
+ return defaultFromModel;
147
+ }
148
+ return 4096;
149
+ }
131
150
  handleSwarmLLMModels(data) {
132
151
  const models = {};
133
152
  for (const [modelId, value] of Object.entries(data)) {
@@ -191,7 +210,7 @@ class ChatApi extends ApiGroup_1.default {
191
210
  const jobID = (0, getUUID_1.default)();
192
211
  // Build chat_template_kwargs from think parameter
193
212
  const chatTemplateKwargs = this.buildChatTemplateKwargs(params.think);
194
- const request = Object.assign({ jobID, type: 'llm', model: params.model, messages: params.messages, max_tokens: params.max_tokens, temperature: params.temperature, top_p: params.top_p, top_k: params.top_k, stream: params.stream, frequency_penalty: params.frequency_penalty, presence_penalty: params.presence_penalty, stop: params.stop, tokenType: params.tokenType, tools: params.tools, tool_choice: params.tool_choice }, (chatTemplateKwargs && { chat_template_kwargs: chatTemplateKwargs }));
213
+ const request = Object.assign({ jobID, type: 'llm', model: params.model, messages: params.messages, max_tokens: params.max_tokens, temperature: params.temperature, top_p: params.top_p, top_k: params.top_k, min_p: params.min_p, stream: params.stream, repetition_penalty: params.repetition_penalty, frequency_penalty: params.frequency_penalty, presence_penalty: params.presence_penalty, stop: params.stop, tokenType: params.tokenType, tools: params.tools, tool_choice: params.tool_choice, taskProfile: params.taskProfile }, (chatTemplateKwargs && { chat_template_kwargs: chatTemplateKwargs }));
195
214
  const stream = new ChatStream_1.default(jobID);
196
215
  this.activeStreams.set(jobID, stream);
197
216
  // Send the job request via socket
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Chat/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Chat/index.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ import { ToolDefinition, ToolCall } from './types';
11
11
  * import { SogniTools } from '@sogni-ai/sogni-client';
12
12
  *
13
13
  * const stream = await sogni.chat.completions.create({
14
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
14
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
15
15
  * messages: [{ role: 'user', content: 'Generate an image of a sunset' }],
16
16
  * tools: SogniTools.all,
17
17
  * tool_choice: 'auto',
@@ -53,7 +53,7 @@ export declare const SogniTools: {
53
53
  * const tools = buildSogniTools(models);
54
54
  *
55
55
  * const stream = await sogni.chat.completions.create({
56
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
56
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
57
57
  * messages,
58
58
  * tools,
59
59
  * stream: true,
@@ -16,7 +16,7 @@ exports.parseToolCallArguments = parseToolCallArguments;
16
16
  * import { SogniTools } from '@sogni-ai/sogni-client';
17
17
  *
18
18
  * const stream = await sogni.chat.completions.create({
19
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
19
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
20
20
  * messages: [{ role: 'user', content: 'Generate an image of a sunset' }],
21
21
  * tools: SogniTools.all,
22
22
  * tool_choice: 'auto',
@@ -197,7 +197,7 @@ exports.SogniTools = {
197
197
  * const tools = buildSogniTools(models);
198
198
  *
199
199
  * const stream = await sogni.chat.completions.create({
200
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
200
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
201
201
  * messages,
202
202
  * tools,
203
203
  * stream: true,
@@ -62,7 +62,9 @@ export interface ChatCompletionParams {
62
62
  temperature?: number;
63
63
  top_p?: number;
64
64
  top_k?: number;
65
+ min_p?: number;
65
66
  stream?: boolean;
67
+ repetition_penalty?: number;
66
68
  frequency_penalty?: number;
67
69
  presence_penalty?: number;
68
70
  stop?: string | string[];
@@ -79,6 +81,8 @@ export interface ChatCompletionParams {
79
81
  * thinking. When omitted, server defaults apply.
80
82
  */
81
83
  think?: boolean;
84
+ /** Hint for server-side preset selection. */
85
+ taskProfile?: 'general' | 'coding' | 'reasoning';
82
86
  /**
83
87
  * Automatically execute Sogni tool calls (image/video/music generation) when the
84
88
  * model requests them. The SDK handles the full multi-round tool calling loop:
@@ -114,13 +118,16 @@ export interface ChatRequestMessage {
114
118
  temperature?: number;
115
119
  top_p?: number;
116
120
  top_k?: number;
121
+ min_p?: number;
117
122
  stream?: boolean;
123
+ repetition_penalty?: number;
118
124
  frequency_penalty?: number;
119
125
  presence_penalty?: number;
120
126
  stop?: string | string[];
121
127
  tokenType?: 'sogni' | 'spark';
122
128
  tools?: ToolDefinition[];
123
129
  tool_choice?: ToolChoice;
130
+ taskProfile?: 'general' | 'coding' | 'reasoning';
124
131
  /** Per-request chat template arguments (e.g. `{ enable_thinking: false }` for llama.cpp). */
125
132
  chat_template_kwargs?: Record<string, unknown>;
126
133
  }
@@ -169,12 +176,15 @@ export interface LLMParamConstraint {
169
176
  max: number;
170
177
  decimals?: number;
171
178
  default: number;
179
+ thinkingComplexDefault?: number;
172
180
  }
173
181
  /** Recommended sampling defaults for a specific thinking mode. */
174
182
  export interface LLMSamplingDefaults {
175
183
  temperature: number;
176
184
  top_p: number;
177
185
  top_k: number;
186
+ min_p?: number;
187
+ repetition_penalty?: number;
178
188
  presence_penalty: number;
179
189
  }
180
190
  export interface LLMModelInfo {
@@ -184,12 +194,18 @@ export interface LLMModelInfo {
184
194
  temperature?: LLMParamConstraint;
185
195
  top_p?: LLMParamConstraint;
186
196
  top_k?: LLMParamConstraint;
197
+ min_p?: LLMParamConstraint;
198
+ repetition_penalty?: LLMParamConstraint;
187
199
  frequency_penalty?: LLMParamConstraint;
188
200
  presence_penalty?: LLMParamConstraint;
189
201
  /** Recommended defaults when thinking mode is enabled. */
190
202
  defaultsThinking?: LLMSamplingDefaults;
203
+ /** Recommended defaults when thinking mode is enabled for precise coding tasks. */
204
+ defaultsThinkingCoding?: LLMSamplingDefaults;
191
205
  /** Recommended defaults when thinking mode is disabled. */
192
206
  defaultsNonThinking?: LLMSamplingDefaults;
207
+ /** Recommended defaults when thinking mode is disabled for analytical reasoning tasks. */
208
+ defaultsNonThinkingReasoning?: LLMSamplingDefaults;
193
209
  }
194
210
  export interface LLMJobCost {
195
211
  /** Actual cost in USD (stringified BigNumber) */
package/llms-full.txt CHANGED
@@ -618,12 +618,12 @@ The Sogni SDK supports LLM text generation through the Supernet, providing an
618
618
  OpenAI-compatible chat completions API with streaming, multi-turn conversations,
619
619
  thinking/reasoning mode, and tool calling.
620
620
 
621
- DEFAULT LLM MODEL: qwen3.5-35b-a3b-gguf-q4km
621
+ DEFAULT LLM MODEL: qwen3.6-35b-a3b-gguf-iq4xs
622
622
 
623
623
  CHAT COMPLETION (Non-Streaming):
624
624
  ```javascript
625
625
  const response = await sogni.projects.chatCompletion({
626
- model: 'qwen3.5-35b-a3b-gguf-q4km',
626
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
627
627
  messages: [
628
628
  { role: 'system', content: 'You are a helpful assistant.' },
629
629
  { role: 'user', content: 'Explain quantum computing briefly.' }
@@ -639,7 +639,7 @@ console.log(response.choices[0].message.content);
639
639
  STREAMING CHAT COMPLETION:
640
640
  ```javascript
641
641
  const stream = await sogni.projects.chatCompletionStream({
642
- model: 'qwen3.5-35b-a3b-gguf-q4km',
642
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
643
643
  messages: [{ role: 'user', content: 'Tell me a story about a cat' }],
644
644
  max_tokens: 4096,
645
645
  stream: true
@@ -660,7 +660,7 @@ const messages = [
660
660
  // Turn 1
661
661
  messages.push({ role: 'user', content: 'What is the Sogni Supernet?' });
662
662
  const response1 = await sogni.projects.chatCompletion({
663
- model: 'qwen3.5-35b-a3b-gguf-q4km',
663
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
664
664
  messages
665
665
  });
666
666
  messages.push(response1.choices[0].message);
@@ -668,7 +668,7 @@ messages.push(response1.choices[0].message);
668
668
  // Turn 2 (with context from turn 1)
669
669
  messages.push({ role: 'user', content: 'How does it compare to centralized services?' });
670
670
  const response2 = await sogni.projects.chatCompletion({
671
- model: 'qwen3.5-35b-a3b-gguf-q4km',
671
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
672
672
  messages
673
673
  });
674
674
  ```
@@ -681,7 +681,7 @@ Enable model reasoning/thinking via `chat_template_kwargs`:
681
681
  LLM CHAT PARAMETERS:
682
682
  | Parameter | Type | Default | Notes |
683
683
  |-----------|------|---------|-------|
684
- | model | string | qwen3.5-35b-a3b-gguf-q4km | LLM model ID |
684
+ | model | string | qwen3.6-35b-a3b-gguf-iq4xs | LLM model ID |
685
685
  | messages | array | - | Chat messages [{role, content}] |
686
686
  | max_tokens | number | 4096 | Maximum output tokens |
687
687
  | temperature | number | 0.7 | Sampling temperature (0-2) |
@@ -745,7 +745,7 @@ TOOL CALLING FLOW:
745
745
  ```javascript
746
746
  // 1. Send message with tools
747
747
  const response = await sogni.projects.chatCompletion({
748
- model: 'qwen3.5-35b-a3b-gguf-q4km',
748
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
749
749
  messages: [{ role: 'user', content: "What's the weather in Austin, TX?" }],
750
750
  tools,
751
751
  tool_choice: 'auto'
@@ -771,7 +771,7 @@ if (message.tool_calls) {
771
771
 
772
772
  // 5. Get final natural language response
773
773
  const finalResponse = await sogni.projects.chatCompletion({
774
- model: 'qwen3.5-35b-a3b-gguf-q4km',
774
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
775
775
  messages,
776
776
  tools
777
777
  });
@@ -840,7 +840,7 @@ and multi-image comparison.
840
840
  VLM MODEL:
841
841
  | Model ID | Name | Description |
842
842
  |----------|------|-------------|
843
- | qwen3.5-35b-a3b-gguf-q4km | Qwen3.5 35B VLM | Vision-language model with 32K context |
843
+ | qwen3.6-35b-a3b-gguf-iq4xs | Qwen3.6 35B VLM | Vision-language model with 262,144 native context length |
844
844
 
845
845
  MULTIMODAL MESSAGE FORMAT:
846
846
  Images are sent as base64-encoded data URIs using the OpenAI-compatible
@@ -860,11 +860,12 @@ const messages = [
860
860
  ];
861
861
 
862
862
  const stream = await sogni.chat.completions.create({
863
- model: 'qwen3.5-35b-a3b-gguf-q4km',
863
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
864
864
  messages,
865
865
  max_tokens: 4096,
866
866
  stream: true,
867
- think: false
867
+ think: false,
868
+ taskProfile: 'general'
868
869
  });
869
870
 
870
871
  for await (const chunk of stream) {
@@ -872,6 +873,17 @@ for await (const chunk of stream) {
872
873
  }
873
874
  ```
874
875
 
876
+ QWEN3.6 PRESET SELECTION:
877
+ - `think: true, taskProfile: 'general'` -> thinking mode for general tasks
878
+ - `think: true, taskProfile: 'coding'` -> thinking mode for precise coding
879
+ - `think: false, taskProfile: 'general'` -> instruct / non-thinking general
880
+ - `think: false, taskProfile: 'reasoning'` -> instruct / non-thinking reasoning
881
+
882
+ MANUAL OVERRIDES:
883
+ You can override the preset with explicit sampling params:
884
+ `temperature`, `top_p`, `top_k`, `min_p`, `presence_penalty`,
885
+ `repetition_penalty`.
886
+
875
887
  MULTI-IMAGE COMPARISON:
876
888
  Send two images in the same message for side-by-side analysis:
877
889
  ```javascript
package/llms.txt CHANGED
@@ -310,7 +310,7 @@ The Sogni SDK supports LLM text generation via the Supernet, providing an OpenAI
310
310
  ### Chat Completion (Non-Streaming)
311
311
  ```javascript
312
312
  const response = await sogni.projects.chatCompletion({
313
- model: 'qwen3.5-35b-a3b-gguf-q4km',
313
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
314
314
  messages: [
315
315
  { role: 'system', content: 'You are a helpful assistant.' },
316
316
  { role: 'user', content: 'Explain quantum computing briefly.' }
@@ -325,7 +325,7 @@ console.log(response.choices[0].message.content);
325
325
  ### Streaming Chat Completion
326
326
  ```javascript
327
327
  const stream = await sogni.projects.chatCompletionStream({
328
- model: 'qwen3.5-35b-a3b-gguf-q4km',
328
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
329
329
  messages: [{ role: 'user', content: 'Tell me a story' }],
330
330
  max_tokens: 4096,
331
331
  stream: true
@@ -338,7 +338,7 @@ for await (const chunk of stream) {
338
338
  ### Key Parameters
339
339
  | Parameter | Type | Default | Notes |
340
340
  |-----------|------|---------|-------|
341
- | model | string | qwen3.5-35b-a3b-gguf-q4km | LLM model ID |
341
+ | model | string | qwen3.6-35b-a3b-gguf-iq4xs | LLM model ID |
342
342
  | messages | array | - | Chat messages (system/user/assistant/tool roles) |
343
343
  | max_tokens | number | 4096 | Maximum output tokens |
344
344
  | temperature | number | 0.7 | Sampling temperature (0-2) |
@@ -376,7 +376,7 @@ const tools = [{
376
376
  }];
377
377
 
378
378
  const response = await sogni.projects.chatCompletion({
379
- model: 'qwen3.5-35b-a3b-gguf-q4km',
379
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
380
380
  messages: [{ role: 'user', content: "What's the weather in Austin?" }],
381
381
  tools,
382
382
  tool_choice: 'auto'
@@ -409,7 +409,7 @@ The SDK supports multimodal vision chat via VLM (Vision-Language Model) workers
409
409
  ### VLM Model
410
410
  | Model ID | Name | Description |
411
411
  |----------|------|-------------|
412
- | `qwen3.5-35b-a3b-gguf-q4km` | Qwen3.5 35B VLM | Vision-language model with 32K context |
412
+ | `qwen3.6-35b-a3b-gguf-iq4xs` | Qwen3.6 35B VLM | Vision-language model with 262,144 native context length |
413
413
 
414
414
  ### Multimodal Message Format
415
415
  ```javascript
@@ -425,13 +425,25 @@ const messages = [
425
425
  ];
426
426
 
427
427
  const stream = await sogni.chat.completions.create({
428
- model: 'qwen3.5-35b-a3b-gguf-q4km',
428
+ model: 'qwen3.6-35b-a3b-gguf-iq4xs',
429
429
  messages,
430
430
  max_tokens: 4096,
431
- stream: true
431
+ stream: true,
432
+ think: false,
433
+ taskProfile: 'general'
432
434
  });
433
435
  ```
434
436
 
437
+ QWEN3.6 PRESET HINTS:
438
+ - General thoughtful work: `think: true, taskProfile: 'general'`
439
+ - Precise coding: `think: true, taskProfile: 'coding'`
440
+ - Everyday direct responses: `think: false, taskProfile: 'general'`
441
+ - Analytical non-thinking tasks: `think: false, taskProfile: 'reasoning'`
442
+
443
+ OPTIONAL SAMPLING OVERRIDES:
444
+ - `temperature`, `top_p`, `top_k`, `min_p`, `presence_penalty`,
445
+ `repetition_penalty`
446
+
435
447
  ### Supported Capabilities
436
448
  - **Scene description** — Detailed image descriptions including subjects, colors, lighting, mood
437
449
  - **OCR / Text extraction** — Extract visible text with layout preservation
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "4.2.0-alpha.1",
6
+ "version": "4.2.0-alpha.3",
7
7
  "description": "Sogni SDK - AI image, video & audio generation plus LLM chat with vision via the Sogni Supernet (Stable Diffusion, Flux, WAN 2.2, LTX-2, Qwen VLM)",
8
8
  "keywords": [
9
9
  "ai",
package/src/Chat/index.ts CHANGED
@@ -46,7 +46,7 @@ export interface ChatApiEvents {
46
46
  * ```typescript
47
47
  * // Streaming
48
48
  * const stream = await sogni.chat.completions.create({
49
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
49
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
50
50
  * messages: [{ role: 'user', content: 'Hello!' }],
51
51
  * stream: true,
52
52
  * });
@@ -56,7 +56,7 @@ export interface ChatApiEvents {
56
56
  *
57
57
  * // Non-streaming
58
58
  * const result = await sogni.chat.completions.create({
59
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
59
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
60
60
  * messages: [{ role: 'user', content: 'Hello!' }],
61
61
  * });
62
62
  * console.log(result.content);
@@ -154,9 +154,10 @@ class ChatApi extends ApiGroup<ChatApiEvents> {
154
154
  * @example
155
155
  * ```typescript
156
156
  * const estimate = await sogni.chat.estimateCost({
157
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
157
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
158
158
  * messages: [{ role: 'user', content: 'Hello!' }],
159
- * max_tokens: 1024,
159
+ * think: true,
160
+ * taskProfile: 'reasoning',
160
161
  * });
161
162
  * console.log(`Estimated cost: ${estimate.costInToken.toFixed(6)}`);
162
163
  * ```
@@ -166,12 +167,14 @@ class ChatApi extends ApiGroup<ChatApiEvents> {
166
167
  messages: ChatMessage[];
167
168
  max_tokens?: number;
168
169
  tokenType?: 'sogni' | 'spark';
170
+ think?: boolean;
171
+ taskProfile?: 'general' | 'coding' | 'reasoning';
169
172
  }): Promise<LLMCostEstimation> {
170
173
  const tokenType = params.tokenType || 'sogni';
171
174
  const inputTokens = Math.ceil(
172
175
  JSON.stringify(this.stripImageDataForEstimation(params.messages)).length / 4
173
176
  );
174
- const maxOutputTokens = params.max_tokens || 4096;
177
+ const maxOutputTokens = this.resolveEstimatedMaxOutputTokens(params);
175
178
  const pathParams = [tokenType, params.model, inputTokens, maxOutputTokens];
176
179
  const path = pathParams.map((p) => encodeURIComponent(p)).join('/');
177
180
  const r = await this.client.socket.get<LLMEstimateResponse>(`/api/v1/job-llm/estimate/${path}`);
@@ -185,6 +188,33 @@ class ChatApi extends ApiGroup<ChatApiEvents> {
185
188
  };
186
189
  }
187
190
 
191
+ private resolveEstimatedMaxOutputTokens(params: {
192
+ model: string;
193
+ max_tokens?: number;
194
+ think?: boolean;
195
+ taskProfile?: 'general' | 'coding' | 'reasoning';
196
+ }): number {
197
+ if (typeof params.max_tokens === 'number' && Number.isFinite(params.max_tokens)) {
198
+ return params.max_tokens;
199
+ }
200
+
201
+ const modelInfo = this.availableLLMModels[params.model];
202
+ const defaultFromModel = modelInfo?.maxOutputTokens?.default;
203
+ const thinkingComplexDefault = modelInfo?.maxOutputTokens?.thinkingComplexDefault;
204
+ const isComplexThinking = params.think === true
205
+ && (params.taskProfile === 'coding' || params.taskProfile === 'reasoning');
206
+
207
+ if (isComplexThinking && typeof thinkingComplexDefault === 'number' && Number.isFinite(thinkingComplexDefault)) {
208
+ return thinkingComplexDefault;
209
+ }
210
+
211
+ if (typeof defaultFromModel === 'number' && Number.isFinite(defaultFromModel)) {
212
+ return defaultFromModel;
213
+ }
214
+
215
+ return 4096;
216
+ }
217
+
188
218
  private handleSwarmLLMModels(data: Record<string, number | LLMModelInfo>): void {
189
219
  const models: Record<string, LLMModelInfo> = {};
190
220
  for (const [modelId, value] of Object.entries(data)) {
@@ -270,13 +300,16 @@ class ChatApi extends ApiGroup<ChatApiEvents> {
270
300
  temperature: params.temperature,
271
301
  top_p: params.top_p,
272
302
  top_k: params.top_k,
303
+ min_p: params.min_p,
273
304
  stream: params.stream,
305
+ repetition_penalty: params.repetition_penalty,
274
306
  frequency_penalty: params.frequency_penalty,
275
307
  presence_penalty: params.presence_penalty,
276
308
  stop: params.stop,
277
309
  tokenType: params.tokenType,
278
310
  tools: params.tools,
279
311
  tool_choice: params.tool_choice,
312
+ taskProfile: params.taskProfile,
280
313
  ...(chatTemplateKwargs && { chat_template_kwargs: chatTemplateKwargs })
281
314
  };
282
315
 
package/src/Chat/tools.ts CHANGED
@@ -12,7 +12,7 @@ import { ToolDefinition, ToolCall } from './types';
12
12
  * import { SogniTools } from '@sogni-ai/sogni-client';
13
13
  *
14
14
  * const stream = await sogni.chat.completions.create({
15
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
15
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
16
16
  * messages: [{ role: 'user', content: 'Generate an image of a sunset' }],
17
17
  * tools: SogniTools.all,
18
18
  * tool_choice: 'auto',
@@ -211,7 +211,7 @@ export const SogniTools = {
211
211
  * const tools = buildSogniTools(models);
212
212
  *
213
213
  * const stream = await sogni.chat.completions.create({
214
- * model: 'qwen3.5-35b-a3b-gguf-q4km',
214
+ * model: 'qwen3.6-35b-a3b-gguf-iq4xs',
215
215
  * messages,
216
216
  * tools,
217
217
  * stream: true,
package/src/Chat/types.ts CHANGED
@@ -71,7 +71,9 @@ export interface ChatCompletionParams {
71
71
  temperature?: number;
72
72
  top_p?: number;
73
73
  top_k?: number;
74
+ min_p?: number;
74
75
  stream?: boolean;
76
+ repetition_penalty?: number;
75
77
  frequency_penalty?: number;
76
78
  presence_penalty?: number;
77
79
  stop?: string | string[];
@@ -88,6 +90,8 @@ export interface ChatCompletionParams {
88
90
  * thinking. When omitted, server defaults apply.
89
91
  */
90
92
  think?: boolean;
93
+ /** Hint for server-side preset selection. */
94
+ taskProfile?: 'general' | 'coding' | 'reasoning';
91
95
  /**
92
96
  * Automatically execute Sogni tool calls (image/video/music generation) when the
93
97
  * model requests them. The SDK handles the full multi-round tool calling loop:
@@ -124,13 +128,16 @@ export interface ChatRequestMessage {
124
128
  temperature?: number;
125
129
  top_p?: number;
126
130
  top_k?: number;
131
+ min_p?: number;
127
132
  stream?: boolean;
133
+ repetition_penalty?: number;
128
134
  frequency_penalty?: number;
129
135
  presence_penalty?: number;
130
136
  stop?: string | string[];
131
137
  tokenType?: 'sogni' | 'spark';
132
138
  tools?: ToolDefinition[];
133
139
  tool_choice?: ToolChoice;
140
+ taskProfile?: 'general' | 'coding' | 'reasoning';
134
141
  /** Per-request chat template arguments (e.g. `{ enable_thinking: false }` for llama.cpp). */
135
142
  chat_template_kwargs?: Record<string, unknown>;
136
143
  }
@@ -184,6 +191,7 @@ export interface LLMParamConstraint {
184
191
  max: number;
185
192
  decimals?: number;
186
193
  default: number;
194
+ thinkingComplexDefault?: number;
187
195
  }
188
196
 
189
197
  /** Recommended sampling defaults for a specific thinking mode. */
@@ -191,6 +199,8 @@ export interface LLMSamplingDefaults {
191
199
  temperature: number;
192
200
  top_p: number;
193
201
  top_k: number;
202
+ min_p?: number;
203
+ repetition_penalty?: number;
194
204
  presence_penalty: number;
195
205
  }
196
206
 
@@ -201,12 +211,18 @@ export interface LLMModelInfo {
201
211
  temperature?: LLMParamConstraint;
202
212
  top_p?: LLMParamConstraint;
203
213
  top_k?: LLMParamConstraint;
214
+ min_p?: LLMParamConstraint;
215
+ repetition_penalty?: LLMParamConstraint;
204
216
  frequency_penalty?: LLMParamConstraint;
205
217
  presence_penalty?: LLMParamConstraint;
206
218
  /** Recommended defaults when thinking mode is enabled. */
207
219
  defaultsThinking?: LLMSamplingDefaults;
220
+ /** Recommended defaults when thinking mode is enabled for precise coding tasks. */
221
+ defaultsThinkingCoding?: LLMSamplingDefaults;
208
222
  /** Recommended defaults when thinking mode is disabled. */
209
223
  defaultsNonThinking?: LLMSamplingDefaults;
224
+ /** Recommended defaults when thinking mode is disabled for analytical reasoning tasks. */
225
+ defaultsNonThinkingReasoning?: LLMSamplingDefaults;
210
226
  }
211
227
 
212
228
  export interface LLMJobCost {