This commit is contained in:
@@ -24,6 +24,9 @@ interface LlmWorker {
|
||||
maxConcurrency?: number;
|
||||
enabled?: boolean;
|
||||
vlm?: boolean;
|
||||
/** llama.cpp の prompt 評価進捗(return_progress)を要求。llama.cpp 系専用のオプトイン。 */
|
||||
returnProgress?: boolean;
|
||||
healthcheckIntervalSeconds?: number;
|
||||
/**
|
||||
* Phase 1 compat: older `provider.workers[].proxy: true` rows are
|
||||
* mapped to `connectionType: aao_gateway` by the normalizer. We
|
||||
@@ -35,6 +38,7 @@ interface LlmWorker {
|
||||
|
||||
interface LlmConfigShape {
|
||||
timeoutMinutes?: number;
|
||||
maxStreamMinutes?: number;
|
||||
retry?: {
|
||||
maxAttempts?: number;
|
||||
backoffMs?: number[];
|
||||
@@ -285,6 +289,16 @@ export function LlmWorkersForm({ config, onChange, overriddenByEnv }: SectionFor
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<FieldLabel>{t('llmWorkers.healthcheckInterval')}</FieldLabel>
|
||||
<FieldInput
|
||||
type="number"
|
||||
value={w.healthcheckIntervalSeconds ?? ''}
|
||||
onChange={v => updateWorker(i, { healthcheckIntervalSeconds: v === '' ? undefined : Number(v) })}
|
||||
/>
|
||||
<HelpText>{t('llmWorkers.healthcheckIntervalHelp')}</HelpText>
|
||||
</div>
|
||||
|
||||
<div className="flex items-center gap-5 pt-5 flex-wrap">
|
||||
<label className="flex items-center gap-2 text-sm text-slate-600 cursor-pointer">
|
||||
<input
|
||||
@@ -307,6 +321,18 @@ export function LlmWorkersForm({ config, onChange, overriddenByEnv }: SectionFor
|
||||
/>
|
||||
VLM
|
||||
</label>
|
||||
<label
|
||||
className="flex items-center gap-2 text-sm text-slate-600 cursor-pointer"
|
||||
title={t('llmWorkers.returnProgressTitle')}
|
||||
>
|
||||
<input
|
||||
type="checkbox"
|
||||
checked={w.returnProgress === true}
|
||||
onChange={e => updateWorker(i, { returnProgress: e.target.checked || undefined })}
|
||||
className="rounded"
|
||||
/>
|
||||
{t('llmWorkers.returnProgress')}
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -335,6 +361,16 @@ export function LlmWorkersForm({ config, onChange, overriddenByEnv }: SectionFor
|
||||
<HelpText>{t('llmWorkers.timeoutHelp')}</HelpText>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<FieldLabel>Max Stream (minutes)</FieldLabel>
|
||||
<FieldInput
|
||||
type="number"
|
||||
value={llm.maxStreamMinutes ?? ''}
|
||||
onChange={v => onChange('llm.maxStreamMinutes', v === '' ? undefined : Number(v))}
|
||||
/>
|
||||
<HelpText>{t('llmWorkers.maxStreamHelp')}</HelpText>
|
||||
</div>
|
||||
|
||||
<h3 className="text-sm font-medium text-slate-600 mt-4 pt-3 border-t border-slate-200">
|
||||
{t('llmWorkers.retryTitle')}
|
||||
</h3>
|
||||
|
||||
Reference in New Issue
Block a user