1
0

auto-git:

[change] main.js
This commit is contained in:
Victor Giers
2025-12-08 13:13:42 +01:00
parent b10e8e2126
commit 27ad9225e9

18
main.js
View File

@@ -991,9 +991,11 @@ ${JSON.stringify(commits, null, 2)}
} }
// ---- 3. LLM Streaming Call ---- // ---- 3. LLM Streaming Call ----
async function streamLLMCommitMessages(prompt, onDataChunk, win) { async function streamLLMCommitMessages(prompt, onDataChunk, win, timeoutMs = 120000) {
await ensureOllamaRunning(); await ensureOllamaRunning();
const selectedModel = store.get('commitModel') || 'qwen2.5-coder:7b'; const selectedModel = store.get('commitModel') || 'qwen2.5-coder:7b';
const controller = new AbortController();
const timeout = setTimeout(() => controller.abort(), timeoutMs);
const response = await fetch('http://127.0.0.1:11434/api/generate', { const response = await fetch('http://127.0.0.1:11434/api/generate', {
method: 'POST', method: 'POST',
headers: { 'Content-Type': 'application/json' }, headers: { 'Content-Type': 'application/json' },
@@ -1002,8 +1004,9 @@ async function streamLLMCommitMessages(prompt, onDataChunk, win) {
prompt: prompt, prompt: prompt,
stream: true, stream: true,
options: { temperature: 0.3 } options: { temperature: 0.3 }
}) }),
}); signal: controller.signal
}).finally(() => clearTimeout(timeout));
if (!response.body) throw new Error('No stream returned'); if (!response.body) throw new Error('No stream returned');
const reader = response.body.getReader(); const reader = response.body.getReader();
@@ -1044,9 +1047,11 @@ async function streamLLMCommitMessages(prompt, onDataChunk, win) {
return fullOutput; return fullOutput;
} }
async function streamLLMREADME(prompt, onDataChunk, win) { async function streamLLMREADME(prompt, onDataChunk, win, timeoutMs = 120000) {
await ensureOllamaRunning(); await ensureOllamaRunning();
const selectedModel = store.get('readmeModel') || 'qwen2.5-coder:32b'; const selectedModel = store.get('readmeModel') || 'qwen2.5-coder:32b';
const controller = new AbortController();
const timeout = setTimeout(() => controller.abort(), timeoutMs);
const response = await fetch('http://127.0.0.1:11434/api/generate', { const response = await fetch('http://127.0.0.1:11434/api/generate', {
method: 'POST', method: 'POST',
headers: { 'Content-Type': 'application/json' }, headers: { 'Content-Type': 'application/json' },
@@ -1055,8 +1060,9 @@ async function streamLLMREADME(prompt, onDataChunk, win) {
prompt: prompt, prompt: prompt,
stream: true, stream: true,
options: { temperature: 0.4 } options: { temperature: 0.4 }
}) }),
}); signal: controller.signal
}).finally(() => clearTimeout(timeout));
if (!response.body) throw new Error('No stream returned'); if (!response.body) throw new Error('No stream returned');
const reader = response.body.getReader(); const reader = response.body.getReader();