mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-08-10 07:28:41 -04:00
Merge verified Odysseus fixes
This commit is contained in:
@@ -261,17 +261,6 @@ async function _clearGpuProcesses(panel) {
|
||||
await _runQuickCmd(panel, _gpuCleanupCommand());
|
||||
}
|
||||
|
||||
// Infer the gated base repo that single-file checkpoints need configs from
|
||||
function _inferBaseRepo(text) {
|
||||
if (!text) return null;
|
||||
const t = text.toLowerCase();
|
||||
if (t.includes('sd3.5') || t.includes('stable-diffusion-3.5')) return 'stabilityai/stable-diffusion-3.5-large';
|
||||
if (t.includes('sd3') || t.includes('stable-diffusion-3')) return 'stabilityai/stable-diffusion-3-medium-diffusers';
|
||||
if (t.includes('flux')) return 'black-forest-labs/FLUX.1-schnell';
|
||||
if (t.includes('sdxl') || t.includes('stable-diffusion-xl')) return 'stabilityai/stable-diffusion-xl-base-1.0';
|
||||
return null;
|
||||
}
|
||||
|
||||
export const ERROR_PATTERNS = [
|
||||
{
|
||||
pattern: /tmux is required|tmux.*not found|tmux:\s*command not found|command not found:\s*tmux|No such file or directory:\s*['"]?tmux/i,
|
||||
@@ -450,11 +439,10 @@ export const ERROR_PATTERNS = [
|
||||
message: 'Single-file checkpoint needs a base model for missing components (text encoder, VAE). The base model may be gated — accept the license and set your HF token.',
|
||||
fixes: [
|
||||
{ label: 'Request access to base model', action: (panel, _text) => {
|
||||
// Extract gated repo from error, or infer from model name
|
||||
const gated = _text && _text.match(/Access to model\s+(\S+)\s+is restricted/i);
|
||||
const base = _text && _text.match(/config=([^\s,)]+)/i);
|
||||
const model = _text && _text.match(/load model from\s+(\S+)/i);
|
||||
const repo = (gated && gated[1]) || (base && base[1]) || _inferBaseRepo(_text);
|
||||
const repo = (gated && gated[1]) || (base && base[1]);
|
||||
if (repo) window.open('https://huggingface.co/' + repo, '_blank');
|
||||
else if (model && model[1]) window.open('https://huggingface.co/' + model[1].replace(/[.]$/, ''), '_blank');
|
||||
}},
|
||||
@@ -464,13 +452,21 @@ export const ERROR_PATTERNS = [
|
||||
}},
|
||||
],
|
||||
},
|
||||
{
|
||||
pattern: /OmniGen2Pipeline|module diffusers has no attribute .*Pipeline|custom_pipeline=.*failed/i,
|
||||
message: 'This image model uses a custom Diffusers pipeline that your launch environment does not know yet.',
|
||||
fixes: [
|
||||
{ label: 'Update image dependencies', action: () => _openCookbookDependencies('diffusers') },
|
||||
{ label: 'Copy diagnosis', action: (_panel, _text) => navigator.clipboard?.writeText(_text || '') },
|
||||
],
|
||||
},
|
||||
{
|
||||
pattern: /Entry Not Found.*model_index\.json|Could not load model.*Check diffusers/i,
|
||||
message: 'Single-file model — needs base config from a gated repo. Accept the license and set your HF token.',
|
||||
message: 'Single-file model may need an explicit base config. Add --single-file-config <repo_or_path> if the checkpoint is missing components.',
|
||||
fixes: [
|
||||
{ label: 'Request access to base model', action: (panel, _text) => {
|
||||
const gated = _text && _text.match(/Access to model\s+(\S+)\s+is restricted/i);
|
||||
const repo = (gated && gated[1]) || _inferBaseRepo(_text);
|
||||
const repo = gated && gated[1];
|
||||
if (repo) window.open('https://huggingface.co/' + repo, '_blank');
|
||||
else window.open('https://huggingface.co/settings/gated-repos', '_blank');
|
||||
}},
|
||||
@@ -560,6 +556,15 @@ export const ERROR_PATTERNS = [
|
||||
{ label: 'Copy install command', action: () => _copyText('python3 -m pip install -U mlx-lm') },
|
||||
],
|
||||
},
|
||||
{
|
||||
pattern: /mflux-generate-qwen.*not found|mflux-generate.*not found|MLX image serving requires mflux|No module named ['"]?mflux/i,
|
||||
message: 'MLX image serving requires mflux on this Apple Silicon server.',
|
||||
suggestion: 'Suggested action: install mflux in the selected Python environment. This is for MLX image generation, not text MLX-LM.',
|
||||
fixes: [
|
||||
{ label: 'Open Dependencies', action: () => _openCookbookDependencies('mflux') },
|
||||
{ label: 'Copy install command', action: () => _copyText('python3 -m pip install -U mflux fastapi uvicorn') },
|
||||
],
|
||||
},
|
||||
{
|
||||
pattern: /Unable to quantize model of type <class ['"]mlx_lm\.models\.switch_layers\.QuantizedSwitchLinear['"]>|QuantizedSwitchLinear/i,
|
||||
message: 'MLX-LM tried to quantize an already-quantized DeepSeek switch layer.',
|
||||
@@ -725,11 +730,11 @@ export const ERROR_PATTERNS = [
|
||||
],
|
||||
},
|
||||
{
|
||||
pattern: /No module named ['"]?torch|No module named ['"]?diffusers|diffusers.*command not found/i,
|
||||
message: 'Diffusion serving needs PyTorch and diffusers. Install diffusers from Cookbook → Dependencies.',
|
||||
pattern: /No module named ['"]?torch|No module named ['"]?torchvision|No module named ['"]?diffusers|No module named ['"]?scipy|install scipy if you want to use beta sigmas|requires the Torchvision library|diffusers.*command not found/i,
|
||||
message: 'Diffusion serving needs PyTorch, Torchvision, Diffusers, Accelerate, and SciPy. Install Diffusers image deps from Cookbook → Dependencies.',
|
||||
fixes: [
|
||||
{ label: 'Open Dependencies', action: () => _openCookbookDependencies('diffusers') },
|
||||
{ label: 'Copy install command', action: () => _copyText('python3 -m pip install "diffusers[torch]"') },
|
||||
{ label: 'Copy install command', action: () => _copyText('python3 -m pip install "diffusers[torch]" torchvision accelerate scipy python-multipart') },
|
||||
],
|
||||
},
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user