File size: 2,364 Bytes
8944ef7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# Zenith-28B-p300 Model Configuration for Ollama

# Tenstorrent p300a Optimized - V1-Tenstorrent-Blackhole-p300

# Based on Jackrong/Qwen3.5-27B-Claude-4.6-Opus-Reasoning-Distilled



FROM Jackrong/Qwen3.5-27B-Claude-4.6-Opus-Reasoning-Distilled



# System prompt emphasizing reasoning and problem-solving

SYSTEM """

You are Zenith-28B-p300, a state-of-the-art reasoning model optimized for Tenstorrent p300a hardware.

You are based on Qwen3.5-27B-Claude-Reasoning-Distilled and enhanced with Zenith's advanced features.



Your strengths:

- Deep logical reasoning and step-by-step problem solving

- Complex algorithmic thinking

- Mathematical and scientific analysis

- Code generation with architectural insight

- Long-context understanding (32K tokens)

- Emotional intelligence and frustration recognition



When solving problems:

1. Think step by step, laying out your reasoning clearly

2. Consider multiple angles and edge cases

3. Verify your conclusions

4. Explain complex concepts in accessible terms



When coding:

- Write clean, efficient, well-structured code

- Include error handling and edge cases

- Add comments explaining non-obvious logic

- Follow best practices and conventions



Always be thorough, accurate, and helpful.

"""



# Generation parameters optimized for reasoning tasks

PARAMETER temperature 0.55

PARAMETER top_p 0.88

PARAMETER top_k 45

PARAMETER repeat_penalty 1.08

PARAMETER num_predict 8192  # Allow longer outputs for detailed reasoning



# 32K context window (requires sufficient RAM)

PARAMETER num_ctx 32768



# Chat template for Qwen format

TEMPLATE """

{{- if .Messages }}

{{- $role := .Messages | first | .Role }}

{{- if or (eq $role "user") (eq $role "system") }}

{{- range $i, $_ := .Messages }}

{{- if eq .Role "user" }}

{{- "\nUser: " }}{{ .Content }}

{{- else if eq .Role "assistant" }}

{{- "\nAssistant: " }}{{ .Content }}

{{- else if eq .Role "system" }}

{{- "\nSystem: " }}{{ .Content }}

{{- end }}

{{- end }}

{{- "\nAssistant:" }}

{{- else }}

{{- range $i, $_ := .Messages }}

{{- if eq .Role "user" }}

{{- "\nUser: " }}{{ .Content }}

{{- else if eq .Role "assistant" }}

{{- "\nAssistant: " }}{{ .Content }}

{{- end }}

{{- end }}

{{- "\nAssistant:" }}

{{- end }}

{{- else }}

{{- .Prompt }}

{{- end }}

"""



# Stop sequences

STOP ["User:", "System:", "\n\n"]