심심하면(?) VRAM 부족으로 터져서

$ python3 main.py --listen 0.0.0.0
setup plugin alembic.autogenerate.schemas
setup plugin alembic.autogenerate.tables
setup plugin alembic.autogenerate.types
setup plugin alembic.autogenerate.constraints
setup plugin alembic.autogenerate.defaults
setup plugin alembic.autogenerate.comments
WARNING: You need pytorch with cu130 or higher to use optimized CUDA operations.
Found comfy_kitchen backend cuda: {'available': True, 'disabled': True, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'scaled_mm_nvfp4']}
Found comfy_kitchen backend eager: {'available': True, 'disabled': False, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'dequantize_mxfp8', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'scaled_mm_mxfp8', 'scaled_mm_nvfp4']}
Found comfy_kitchen backend triton: {'available': True, 'disabled': True, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8']}
Checkpoint files will always be loaded safely.
Total VRAM 11165 MB, total RAM 31755 MB
pytorch version: 2.7.1+cu118
Set vram state to: NORMAL_VRAM
Device: cuda:0 NVIDIA GeForce GTX 1080 Ti : cudaMallocAsync
Using async weight offloading with 2 streams
Enabled pinned memory 28579.0
Using pytorch attention
Unsupported Pytorch detected. DynamicVRAM support requires Pytorch version 2.8 or later. Falling back to legacy ModelPatcher. VRAM estimates may be unreliable especially on Windows
Python version: 3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]
ComfyUI version: 0.21.1
comfy-aimdo version: 0.3.0
comfy-kitchen version: 0.2.8
comfyui-frontend-package version: 1.43.18
comfyui-workflow-templates version: 0.9.77
comfyui-embedded-docs version: 0.5.0
comfy-kitchen version: 0.2.8
comfy-aimdo version: 0.3.0
[Prompt Server] web root: /home/minimonk/.local/lib/python3.10/site-packages/comfyui_frontend_package/static
Asset seeder disabled

Import times for custom nodes:
   0.0 seconds: /mnt/Downloads/ComfyUI/custom_nodes/websocket_image_save.py

Context impl SQLiteImpl.
Will assume non-transactional DDL.
Starting server

To see the GUI go to: http://0.0.0.0:8188
got prompt
Using pytorch attention in VAE
Using pytorch attention in VAE
VAE load device: cuda:0, offload device: cpu, dtype: torch.float32
Found quantization metadata version 1
Using MixedPrecisionOps for text encoder
Requested to load WanTEModel
loaded completely;  6419.48 MB loaded, full load: True
CLIP/text encoder model load device: cpu, offload device: cpu, current: cpu, dtype: torch.float16
Requested to load WanVAE
0 models unloaded.
loaded partially; 0.00 MB usable, 0.00 MB loaded, 484.00 MB offloaded, 45.57 MB buffer reserved, lowvram patches: 0
Found quantization metadata version 1
Detected mixed precision quantization
Using mixed precision operations
Native ops:  , emulated ops: mxfp8, float8_e4m3fn, float8_e5m2, nvfp4
model weight dtype torch.float16, manual cast: torch.float32
model_type FLOW
Requested to load WAN21
0 models unloaded.
loaded partially; 0.00 MB usable, 0.00 MB loaded, 13636.09 MB offloaded, 885.22 MB buffer reserved, lowvram patches: 0
  0%|                                                    | 0/10 [00:33<?, ?it/s]
!!! Exception during processing !!! Allocation on device 
Traceback (most recent call last):
  File "/mnt/Downloads/ComfyUI/execution.py", line 535, in execute
    output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)
  File "/mnt/Downloads/ComfyUI/execution.py", line 335, in get_output_data
    return_values = await _async_map_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)
  File "/mnt/Downloads/ComfyUI/execution.py", line 309, in _async_map_node_over_list
    await process_inputs(input_dict, i)
  File "/mnt/Downloads/ComfyUI/execution.py", line 297, in process_inputs
    result = f(**inputs)
  File "/mnt/Downloads/ComfyUI/nodes.py", line 1612, in sample
    return common_ksampler(model, noise_seed, steps, cfg, sampler_name, scheduler, positive, negative, latent_image, denoise=denoise, disable_noise=disable_noise, start_step=start_at_step, last_step=end_at_step, force_full_denoise=force_full_denoise)
  File "/mnt/Downloads/ComfyUI/nodes.py", line 1542, in common_ksampler
    samples = comfy.sample.sample(model, noise, steps, cfg, sampler_name, scheduler, positive, negative, latent_image,
  File "/mnt/Downloads/ComfyUI/comfy/sample.py", line 74, in sample
    samples = sampler.sample(noise, positive, negative, cfg=cfg, latent_image=latent_image, start_step=start_step, last_step=last_step, force_full_denoise=force_full_denoise, denoise_mask=noise_mask, sigmas=sigmas, callback=callback, disable_pbar=disable_pbar, seed=seed)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 1180, in sample
    return sample(self.model, noise, positive, negative, cfg, self.device, sampler, sigmas, self.model_options, latent_image=latent_image, denoise_mask=denoise_mask, callback=callback, disable_pbar=disable_pbar, seed=seed)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 1070, in sample
    return cfg_guider.sample(noise, latent_image, sampler, sigmas, denoise_mask, callback, disable_pbar, seed)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 1052, in sample
    output = executor.execute(noise, latent_image, sampler, sigmas, denoise_mask, callback, disable_pbar, seed, latent_shapes=latent_shapes)
  File "/mnt/Downloads/ComfyUI/comfy/patcher_extension.py", line 112, in execute
    return self.original(*args, **kwargs)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 995, in outer_sample
    output = self.inner_sample(noise, latent_image, device, sampler, sigmas, denoise_mask, callback, disable_pbar, seed, latent_shapes=latent_shapes)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 981, in inner_sample
    samples = executor.execute(self, sigmas, extra_args, callback, noise, latent_image, denoise_mask, disable_pbar)
  File "/mnt/Downloads/ComfyUI/comfy/patcher_extension.py", line 112, in execute
    return self.original(*args, **kwargs)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 751, in sample
    samples = self.sampler_function(model_k, noise, sigmas, extra_args=extra_args, callback=k_callback, disable=disable_pbar, **self.extra_options)
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 116, in decorate_context
    return func(*args, **kwargs)
  File "/mnt/Downloads/ComfyUI/comfy/k_diffusion/sampling.py", line 205, in sample_euler
    denoised = model(x, sigma_hat * s_in, **extra_args)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 400, in __call__
    out = self.inner_model(x, sigma, model_options=model_options, seed=seed)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 954, in __call__
    return self.outer_predict_noise(*args, **kwargs)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 961, in outer_predict_noise
    ).execute(x, timestep, model_options, seed)
  File "/mnt/Downloads/ComfyUI/comfy/patcher_extension.py", line 112, in execute
    return self.original(*args, **kwargs)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 964, in predict_noise
    return sampling_function(self.inner_model, x, timestep, self.conds.get("negative", None), self.conds.get("positive", None), self.cfg, model_options=model_options, seed=seed)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 380, in sampling_function
    out = calc_cond_batch(model, conds, x, timestep, model_options)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 205, in calc_cond_batch
    return _calc_cond_batch_outer(model, conds, x_in, timestep, model_options)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 213, in _calc_cond_batch_outer
    return executor.execute(model, conds, x_in, timestep, model_options)
  File "/mnt/Downloads/ComfyUI/comfy/patcher_extension.py", line 112, in execute
    return self.original(*args, **kwargs)
  File "/mnt/Downloads/ComfyUI/comfy/samplers.py", line 325, in _calc_cond_batch
    output = model.apply_model(input_x, timestep_, **c).chunk(batch_chunks)
  File "/mnt/Downloads/ComfyUI/comfy/model_base.py", line 182, in apply_model
    return comfy.patcher_extension.WrapperExecutor.new_class_executor(
  File "/mnt/Downloads/ComfyUI/comfy/patcher_extension.py", line 112, in execute
    return self.original(*args, **kwargs)
  File "/mnt/Downloads/ComfyUI/comfy/model_base.py", line 226, in _apply_model
    model_output = self.diffusion_model(xc, t, context=context, control=control, transformer_options=transformer_options, **extra_conds)
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1751, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1762, in _call_impl
    return forward_call(*args, **kwargs)
  File "/mnt/Downloads/ComfyUI/comfy/ldm/wan/model.py", line 644, in forward
    return comfy.patcher_extension.WrapperExecutor.new_class_executor(
  File "/mnt/Downloads/ComfyUI/comfy/patcher_extension.py", line 112, in execute
    return self.original(*args, **kwargs)
  File "/mnt/Downloads/ComfyUI/comfy/ldm/wan/model.py", line 664, in _forward
    return self.forward_orig(x, timestep, context, clip_fea=clip_fea, freqs=freqs, transformer_options=transformer_options, **kwargs)[:, :, :t, :h, :w]
  File "/mnt/Downloads/ComfyUI/comfy/ldm/wan/model.py", line 597, in forward_orig
    x = block(x, e=e0, freqs=freqs, context=context, context_img_len=context_img_len, transformer_options=transformer_options)
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1751, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1762, in _call_impl
    return forward_call(*args, **kwargs)
  File "/mnt/Downloads/ComfyUI/comfy/ldm/wan/model.py", line 258, in forward
    y = self.ffn(torch.addcmul(repeat_e(e[3], x), self.norm2(x), 1 + repeat_e(e[4], x)))
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1751, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1762, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/nn/modules/container.py", line 240, in forward
    input = module(input)
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1751, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1762, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/minimonk/.local/lib/python3.10/site-packages/torch/nn/modules/activation.py", line 734, in forward
    return F.gelu(input, approximate=self.approximate)
torch.OutOfMemoryError: Allocation on device 

Memory summary:
|===========================================================================|
|                  PyTorch CUDA memory summary, device ID 0                 |
|---------------------------------------------------------------------------|
|            CUDA OOMs: 0            |        cudaMalloc retries: 0         |
|===========================================================================|
|        Metric         | Cur Usage  | Peak Usage | Tot Alloc  | Tot Freed  |
|---------------------------------------------------------------------------|
| Allocated memory      |   5675 MiB |   7030 MiB |      0 B   |      0 B   |
|       from large pool |      0 MiB |      0 MiB |      0 B   |      0 B   |
|       from small pool |      0 MiB |      0 MiB |      0 B   |      0 B   |
|---------------------------------------------------------------------------|
| Active memory         |   5675 MiB |   7030 MiB |      0 B   |      0 B   |
|       from large pool |      0 MiB |      0 MiB |      0 B   |      0 B   |
|       from small pool |      0 MiB |      0 MiB |      0 B   |      0 B   |
|---------------------------------------------------------------------------|
| Requested memory      |      0 B   |      0 B   |      0 B   |      0 B   |
|       from large pool |      0 B   |      0 B   |      0 B   |      0 B   |
|       from small pool |      0 B   |      0 B   |      0 B   |      0 B   |
|---------------------------------------------------------------------------|
| GPU reserved memory   |  10784 MiB |  10784 MiB |      0 B   |      0 B   |
|       from large pool |      0 MiB |      0 MiB |      0 B   |      0 B   |
|       from small pool |      0 MiB |      0 MiB |      0 B   |      0 B   |
|---------------------------------------------------------------------------|
| Non-releasable memory |      0 B   |      0 B   |      0 B   |      0 B   |
|       from large pool |      0 B   |      0 B   |      0 B   |      0 B   |
|       from small pool |      0 B   |      0 B   |      0 B   |      0 B   |
|---------------------------------------------------------------------------|
| Allocations           |       0    |       0    |       0    |       0    |
|       from large pool |       0    |       0    |       0    |       0    |
|       from small pool |       0    |       0    |       0    |       0    |
|---------------------------------------------------------------------------|
| Active allocs         |       0    |       0    |       0    |       0    |
|       from large pool |       0    |       0    |       0    |       0    |
|       from small pool |       0    |       0    |       0    |       0    |
|---------------------------------------------------------------------------|
| GPU reserved segments |       0    |       0    |       0    |       0    |
|       from large pool |       0    |       0    |       0    |       0    |
|       from small pool |       0    |       0    |       0    |       0    |
|---------------------------------------------------------------------------|
| Non-releasable allocs |       0    |       0    |       0    |       0    |
|       from large pool |       0    |       0    |       0    |       0    |
|       from small pool |       0    |       0    |       0    |       0    |
|---------------------------------------------------------------------------|
| Oversize allocations  |       0    |       0    |       0    |       0    |
|---------------------------------------------------------------------------|
| Oversize GPU segments |       0    |       0    |       0    |       0    |
|===========================================================================|

Got an OOM, unloading all loaded models.
Prompt executed in 154.15 seconds

 

둘 중에 하나 주면 된다는데 해도 터지고

python3 main.py --listen 0.0.0.0 --lowvram
python3 main.py --listen 0.0.0.0 --novram

 

멀 하다가 꼬였는지 패키지 문제가 생겨서 다시 밀고 cuda 11.8에 맞춰서 재설치

pip3 uninstall -y torch torchvision torchaudio xformers
pip3 install torch==2.6.0 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
pip3 install xformers==0.0.29.post2

 

그래도 하려니 터져서 768x768 이었던게 왜 800x800이 되었는진 모르겠고 길이가 81로 되어있어서

일단은 512x512에 29 로 바꾸고 재시도

 

먼가 되는거 같긴한데.. offloaded가 엄청 크네.

got prompt
Requested to load WanVAE
loaded completely; 4417.69 MB usable, 484.06 MB loaded, full load: True
[MultiGPU Runtime] Using runtime device cuda:0 (comfy.sample.sample:ModelPatcher)
Requested to load WAN21
loaded partially; 7397.49 MB usable, 7211.06 MB loaded, 6425.03 MB offloaded, 175.06 MB buffer reserved, lowvram patches: 0
  0%|                                                    | 0/10 [00:00<?, ?it/s]
 20%|████████▌                                  | 2/10 [09:15<37:03, 277.94s/it]

 

1시간은 족히 넘은거 같은데 (37 띄워놓고 거짓말 쟁이!)

이제야 두번째 KSampler로 넘어갔다!!! 이예!!!

 

메모리 답이 안나올거 같아서 low_noise가 아닌 high_noise 에 해상도까지 낮추고 했는데

1시간 33분 16 동안 해서 29frame / 16fps 해서 대충 1.8초 짜리 똥을 생성해냄 

loaded completely; 883.22 MB usable, 484.06 MB loaded, full load: True
Prompt executed in 01:33:16

 

이게 머야 ㅋㅋㅋ

 

 

ComfyUI_00006_.webm
1.61MB

 

 

 

+

왜 이번에는 webm이 아니라 webp일까?

그 와중에 49frame / 16fps 약 3초 만드는데 2시간 30분..

2시간 30분 짜리 똥이야!

got prompt
Found quantization metadata version 1
Detected mixed precision quantization
Using mixed precision operations
Native ops:  , emulated ops: float8_e4m3fn, mxfp8, nvfp4, float8_e5m2
model weight dtype torch.float16, manual cast: torch.float32
model_type FLOW
[MultiGPU Runtime] Using runtime device cuda:0 (comfy.sample.sample:ModelPatcher)
Requested to load WAN21
loaded partially; 5509.86 MB usable, 5037.30 MB loaded, 8598.79 MB offloaded, 472.56 MB buffer reserved, lowvram patches: 0
100%|████████████████████████████████████████| 10/10 [1:14:32<00:00, 447.24s/it]
[MultiGPU Runtime] Using runtime device cuda:0 (comfy.sample.sample:ModelPatcher)
Requested to load WAN21
loaded partially; 5495.86 MB usable, 5019.61 MB loaded, 8616.47 MB offloaded, 472.56 MB buffer reserved, lowvram patches: 0
  0%|                                                    | 0/10 [00:00<?, ?it/s]100%|████████████████████████████████████████| 10/10 [1:14:33<00:00, 447.32s/it]
Requested to load WanVAE
Unloaded partially: 2187.40 MB freed, 2832.21 MB remains loaded, 472.56 MB buffer reserved, lowvram patches: 0
loaded completely; 545.46 MB usable, 484.06 MB loaded, full load: True
Prompt executed in 02:30:07

 

 

ComfyUI_00008_.webp
1.00MB

'프로그램 사용 > ai 프로그램' 카테고리의 다른 글

wan2.2 + comfyui  (0) 2026.05.19
comfyui 실행  (0) 2026.05.19
llama.cpp kv quantization  (0) 2026.05.19
openai api  (0) 2026.05.18
RAG 시도 - postgresql(14) + pgvector  (1) 2026.05.15
Posted by 구차니

가장 만만한(?) 데이터 셋인 것 같은데

DAGM 데이터셋은 총 10가지 도메인의 데이터로 구성되어 있으며, 모델링을 통해 가상으로 결함을 합성하여 만든 데이터셋입니다. NanoTWICE 데이터셋은 nanofibrous material 데이터이며 5장의 정상 데이터와 40장의 결함 데이터로 구성이 되어있습니다

자, 이제 오늘의 본론인 MVTec-AD 데이터셋에 대해 설명드리겠습니다. 앞서 설명드렸던 DAGM, NanoTWICE의 아쉬웠던 부분들을 개선하며 총 15종류의 도메인의 데이터셋을 구축하였습니다. 크게는 Texture와 Object로 구분을 하였고, 각각 5가지, 10가지 종류의 도메인 데이터로 구성이 되어있습니다

[링크 : https://hoya012.github.io/blog/MVTec-AD/]

 

5.3 GB(!!)

[링크 : https://www.kaggle.com/datasets/ipythonx/mvtec-ad]

[링크 : https://www.mvtec.com/research-teaching/datasets/mvtec-ad]

[링크 : https://huggingface.co/datasets/Voxel51/mvtec-ad]

 

5.9 GB(!!!)

[링크 : https://www.kaggle.com/datasets/mhskjelvareid/dagm-2007-competition-dataset-optical-inspection]

[링크 : https://github.com/M-3LAB/awesome-industrial-anomaly-detection]

'프로그램 사용 > yolo_tensorflow' 카테고리의 다른 글

VAD - PaDiM, Patchcore - 정상이 아님을 탐지  (0) 2026.05.19
U-net, segmentation  (0) 2026.05.14
QAT, PTQ .. 모델 경량화  (0) 2026.05.14
keras - transfer learning / fine tuning  (0) 2025.09.17
keras ssd mobilenet  (0) 2025.09.16
Posted by 구차니
Programming/qt2026. 5. 20. 12:17

antigravity 가지고 물어보니 이거 하나 넣으라니 정말 되네.

 

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    setAttribute(Qt::WA_StyledBackground);
}

 

 

Qt::WA_StyledBackground 93 Indicates the widget should be drawn using a styled background.

[링크 : https://doc.qt.io/qt-6/qt.html]

[링크 : https://runebook.dev/ko/docs/qt/stylesheet-reference]

 

QWidget은 원래 배경 색상만 지원하도록 만든 클래스인가 보네..

[링크 : https://doc.qt.io/qt-6/stylesheet-reference.html]

'Programming > qt' 카테고리의 다른 글

QT 런타임중 언어 변경  (0) 2026.05.14
QT QMainWindow, QWidget, QDialog  (0) 2026.05.14
QT 창관리  (0) 2026.05.13
QString arg()  (0) 2026.05.13
qt 동적 크기  (0) 2026.05.12
Posted by 구차니

'프로그램 사용 > ai 프로그램' 카테고리의 다른 글

wan2.2 + comfyui 시도  (0) 2026.05.21
comfyui 실행  (0) 2026.05.19
llama.cpp kv quantization  (0) 2026.05.19
openai api  (0) 2026.05.18
RAG 시도 - postgresql(14) + pgvector  (1) 2026.05.15
Posted by 구차니

 

/mnt/Downloads/ComfyUI$ python3 main.py --listen 0.0.0.0
setup plugin alembic.autogenerate.schemas
setup plugin alembic.autogenerate.tables
setup plugin alembic.autogenerate.types
setup plugin alembic.autogenerate.constraints
setup plugin alembic.autogenerate.defaults
setup plugin alembic.autogenerate.comments
WARNING: You need pytorch with cu130 or higher to use optimized CUDA operations.
Found comfy_kitchen backend triton: {'available': True, 'disabled': True, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8']}
Found comfy_kitchen backend cuda: {'available': True, 'disabled': True, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'scaled_mm_nvfp4']}
Found comfy_kitchen backend eager: {'available': True, 'disabled': False, 'unavailable_reason': None, 'capabilities': ['apply_rope', 'apply_rope1', 'dequantize_mxfp8', 'dequantize_nvfp4', 'dequantize_per_tensor_fp8', 'quantize_mxfp8', 'quantize_nvfp4', 'quantize_per_tensor_fp8', 'scaled_mm_mxfp8', 'scaled_mm_nvfp4']}
Checkpoint files will always be loaded safely.
Total VRAM 11165 MB, total RAM 15651 MB
pytorch version: 2.7.1+cu118
Set vram state to: NORMAL_VRAM
Device: cuda:0 NVIDIA GeForce GTX 1080 Ti : cudaMallocAsync
Using async weight offloading with 2 streams
Enabled pinned memory 14085.0
Using pytorch attention
Unsupported Pytorch detected. DynamicVRAM support requires Pytorch version 2.8 or later. Falling back to legacy ModelPatcher. VRAM estimates may be unreliable especially on WindowsPython version: 3.10.12 (main, Mar  3 2026, 11:56:32) [GCC 11.4.0]
ComfyUI version: 0.21.1
comfy-aimdo version: 0.3.0
comfy-kitchen version: 0.2.8
comfyui-frontend-package version: 1.43.18
comfyui-workflow-templates version: 0.9.77
comfyui-embedded-docs version: 0.5.0
comfy-kitchen version: 0.2.8
comfy-aimdo version: 0.3.0
[Prompt Server] web root: /home/minimonk/.local/lib/python3.10/site-packages/comfyui_frontend_package/static
Asset seeder disabled

Import times for custom nodes:
   0.0 seconds: /mnt/Downloads/ComfyUI/custom_nodes/websocket_image_save.py

Context impl SQLiteImpl.
Will assume non-transactional DDL.
Starting server

To see the GUI go to: http://0.0.0.0:8188
^C
Stopped server

 

그냥 켜면 기본으로 있는데

몰라서(!) ComfyUI/models/diffusion_models 에 *.safetensors 파일들을 넣어놓고는 체크포인트 로드에 왜 안뜨나 했는데

ComfyUI/models/checkpoints 에 넣어주고 리프레시 하면 뜬다.

[링크 : https://comfyui-wiki.com/ko/comfyui-nodes/loaders/checkpoint-loader-simple]

 

선이 먼가 드럽게 꼬여서

 

정리 하는데. 도대체 저 하나하나 노드들을 멀로 추가해야하나 모르겠다.

 

걍 CLIP 부분 드래그 해서 오니 추천으로 "CLIP 테스트 인코딩 (프롬프트)" 가 뜨니

우클릭해서 먼지 찾을 필요가 없을 듯?

 

굳이.. 하겠다면

노드 추가 - 조건화 - CLIP 텍스트 인코딩 (프롬프트) 로 하면 될 것같은데

CLIP이 먼지 찾아봐야겠다.

 

+

[링크 : https://youngri.tistory.com/m/40/] api 서버?

[링크 : https://m.blog.naver.com/minwoo932/224142522248]

[링크 : https://comfyui-wiki.com/ko/tutorial/basic/creating-your-first-image-by-the-first-time]

 

'프로그램 사용 > ai 프로그램' 카테고리의 다른 글

wan2.2 + comfyui 시도  (0) 2026.05.21
wan2.2 + comfyui  (0) 2026.05.19
llama.cpp kv quantization  (0) 2026.05.19
openai api  (0) 2026.05.18
RAG 시도 - postgresql(14) + pgvector  (1) 2026.05.15
Posted by 구차니

비정상을 학습시키는게 아니라

정상만 학습시키고 정상에서 벗어나는 것을 탐지하는 기법

 

PaDiM

Ganomaly (GAN + Anomaly Detection)

[링크 : https://actionpower.medium.com/액션파워-lab-이미지에서-이상-영역-탐지-visual-anomaly-detection-는-어떻게-할까-6da65866366b]

 

PaDiM-Lite / PatchCore-Lite

[링크 : https://www.alphaxiv.org/ko/overview/2603.20288v1]

 

PaDiM (Patch Ditrubution Modeling)

[링크 : https://huggingface.co/papers/2011.08785]

[링크 : https://data-analysis-expertise.tistory.com/128]

[링크 : https://dippingtodeepening.tistory.com/110]

[링크 : https://cumulu-s.tistory.com/44]

 

VAD - Visual Anomaly Detection

MVTec-AD, MVTec-3D, MVTec-LOCO, VisA  데이터 셋

[링크 : https://velog.io/@barley_15/논문-리뷰-A-Survey-on-Visual-Anomaly-Detection-Challenge-Approach-and-Prospect]

 

PatchCore

[링크 : https://velog.io/@ljwljy51/PatchCore-Paper-Review]

 

PatchCore

SPADE , PaDiM

[링크 : https://ffighting.net/deep-learning-paper-review/anomaly-detection/patchcore/]

'프로그램 사용 > yolo_tensorflow' 카테고리의 다른 글

MVTec AD 데이터 셋  (0) 2026.05.20
U-net, segmentation  (0) 2026.05.14
QAT, PTQ .. 모델 경량화  (0) 2026.05.14
keras - transfer learning / fine tuning  (0) 2025.09.17
keras ssd mobilenet  (0) 2025.09.16
Posted by 구차니
프로그램 사용/octave2026. 5. 19. 16:19

귀찮으니(!) gpt를 통해서 딸깍~ 시전

% 이미지 읽기
img = imread("test.jpg");

% RGB -> grayscale 직접 변환
if ndims(img) == 3

    r = double(img(:,:,1));
    g = double(img(:,:,2));
    b = double(img(:,:,3));

    gray = 0.299*r + 0.587*g + 0.114*b;
else
    gray = double(img);
end

% 블럭 크기
blockSize = 32;

[h, w] = size(gray);

% 결과 저장
scoreMap = zeros(floor(h/blockSize), floor(w/blockSize));

% 블럭별 FFT 처리
for by = 1:blockSize:(h - blockSize + 1)
    for bx = 1:blockSize:(w - blockSize + 1)

        % 블럭 추출
        block = gray(by:by+blockSize-1, bx:bx+blockSize-1);

        % 평균 제거
        block = block - mean(block(:));

        % FFT
        F = fft2(block);

        % magnitude
        mag = abs(F);

        % 중앙 이동
        mag = fftshift(mag);

        center = floor(blockSize/2) + 1;

        radius = 4;

        [X, Y] = meshgrid(1:blockSize, 1:blockSize);

        dist = sqrt((X-center).^2 + (Y-center).^2);

        % 고주파만 사용
        mask = dist > radius;

        % 고주파 에너지
        energy = sum(mag(mask).^2);

        % diversity score
        score = log(1 + energy);

        iy = (by-1)/blockSize + 1;
        ix = (bx-1)/blockSize + 1;

        scoreMap(iy, ix) = score;
    end
end

% 정규화
scoreMap = scoreMap - min(scoreMap(:));
scoreMap = scoreMap / max(scoreMap(:));

% 결과 표시
figure;
imshow(uint8(gray));
title("Original");

figure;
imagesc(scoreMap);
axis image;
colorbar;
title("FFT Diversity Map");

 

원본

그레이스케일

 

원인은 모르겠으나 blocksize 5 이하로는 검은색으로 나온다.

 

blocksize = 6 blocksize = 8 blocksize = 10
blocksize = 12 blocksize = 16 blocksize = 32

 

원본

 

그레이스케일

 

blocksize = 6 blocksize = 10 blocksize = 12

blocksize = 16 blocksize = 18 blocksize = 20
blocksize = 24 blocksize = 28 blocksize = 32

 

이미지 폭이 큰 차이가 없어서 그런진 모르겠지만..

blocksize 10~12 정도가 가장 무난한 것 같다.

 

rgb에 대해서 각각 처리 후 합산인데 눈에 보이는건 크게 달라 보이진 않았는데

img = imread("test.jpg");

img = double(img);

blockSize = 32;

[h, w, c] = size(img);

scoreMap = zeros(floor(h/blockSize), floor(w/blockSize));

for by = 1:blockSize:(h - blockSize + 1)
    for bx = 1:blockSize:(w - blockSize + 1)

        totalEnergy = 0;

        % RGB 각각 처리
        for ch = 1:3

            block = img(by:by+blockSize-1, ...
                        bx:bx+blockSize-1, ch);

            block = block - mean(block(:));

            F = fft2(block);

            mag = abs(fftshift(F));

            center = floor(blockSize/2) + 1;

            radius = 4;

            [X, Y] = meshgrid(1:blockSize, 1:blockSize);

            dist = sqrt((X-center).^2 + (Y-center).^2);

            mask = dist > radius;

            energy = sum(mag(mask).^2);

            totalEnergy = totalEnergy + energy;
        end

        score = log(1 + totalEnergy);

        iy = (by-1)/blockSize + 1;
        ix = (bx-1)/blockSize + 1;

        scoreMap(iy, ix) = score;
    end
end

scoreMap = scoreMap - min(scoreMap(:));
scoreMap = scoreMap / max(scoreMap(:));

figure;
imshow(uint8(img));

figure;
imagesc(scoreMap);
axis image;
colorbar;
title("RGB FFT Diversity");

 

blocksize = 10

 

두개를 비교해보면 하단에 파란색 마트 정도는 좀 더 잘 보이는 차이가 있는데

처리 시간대비로는 그리 큰 효과를 얻긴 힘들지도 모르겠다.

grayscale rgb 각각 처리후 합산

 

 LAB 으로 전환해서 색상에 대해서 처리, blocksize = 10

% ==========================================
% LAB 기반 Fabric Diversity / Anomaly Map
% ==========================================

img = imread("test.jpg");

img = double(img) / 255.0;

%------------------------------------------
% RGB -> LAB 변환
%------------------------------------------

% sRGB gamma correction 제거
mask = img <= 0.04045;

img_linear = zeros(size(img));

img_linear(mask) = img(mask) / 12.92;
img_linear(~mask) = ((img(~mask)+0.055)/1.055).^2.4;

% RGB -> XYZ
M = [ ...
    0.4124564 0.3575761 0.1804375;
    0.2126729 0.7151522 0.0721750;
    0.0193339 0.1191920 0.9503041];

[h, w, ~] = size(img);

rgb_reshaped = reshape(img_linear, [], 3);

xyz = rgb_reshaped * M';

X = xyz(:,1) / 0.95047;
Y = xyz(:,2);
Z = xyz(:,3) / 1.08883;

% XYZ -> LAB helper
f = @(t) ((t > 0.008856).*t.^(1/3) + ...
         (t <= 0.008856).*(7.787*t + 16/116));

fx = f(X);
fy = f(Y);
fz = f(Z);

L = 116*fy - 16;
A = 500*(fx - fy);
B = 200*(fy - fz);

lab = zeros(h, w, 3);

lab(:,:,1) = reshape(L, h, w);
lab(:,:,2) = reshape(A, h, w);
lab(:,:,3) = reshape(B, h, w);

%------------------------------------------
% FFT Block Analysis
%------------------------------------------

blockSize = 32;
step = 16;   % overlap sliding

outH = floor((h - blockSize)/step) + 1;
outW = floor((w - blockSize)/step) + 1;

scoreMap = zeros(outH, outW);

% FFT mask 생성
center = floor(blockSize/2) + 1;

[Xm, Ym] = meshgrid(1:blockSize, 1:blockSize);

dist = sqrt((Xm-center).^2 + (Ym-center).^2);

radius = 4;

highMask = dist > radius;

%------------------------------------------
% Sliding Window
%------------------------------------------

oy = 1;

for by = 1:step:(h - blockSize + 1)

    ox = 1;

    for bx = 1:step:(w - blockSize + 1)

        totalEnergy = 0;

        % LAB 각 채널 FFT
        for ch = 1:3

            block = lab( ...
                by:by+blockSize-1, ...
                bx:bx+blockSize-1, ...
                ch);

            % 평균 제거
            block = block - mean(block(:));

            % FFT
            F = fft2(block);

            mag = abs(fftshift(F));

            % 고주파 에너지
            energy = sum(mag(highMask).^2);

            totalEnergy = totalEnergy + energy;
        end

        % 로그 스케일
        score = log(1 + totalEnergy);

        scoreMap(oy, ox) = score;

        ox = ox + 1;
    end

    oy = oy + 1;
end

%------------------------------------------
% Normalize
%------------------------------------------

scoreMap = scoreMap - min(scoreMap(:));
scoreMap = scoreMap / max(scoreMap(:));

%------------------------------------------
% Display
%------------------------------------------

figure;
imagesc(img);
axis image;
title("Original");

figure;
imagesc(scoreMap);
axis image;
colorbar;
title("LAB FFT Diversity / Anomaly Map");

 

block 10, step 16

 

block 10, step 10

 

rgb 각각 처리후 합산 RGB->LAB, 색상만 처리

'프로그램 사용 > octave' 카테고리의 다른 글

octave - pkg load image  (0) 2026.05.19
octave csv에서 읽어들이기  (0) 2024.11.26
octave audioread wav  (0) 2023.07.12
공짜 matlab? octave  (0) 2015.11.05
Posted by 구차니
프로그램 사용/octave2026. 5. 19. 16:08

이미지 팩(?) 쓰려는데 에러가 나서 찾아보니 패키지 설치하란다. 

>> pkg load image;
error: package image is not installed
error: called from
    load_packages at line 47 column 7
    pkg at line 623 column 7
>>

 

멀 이렇게 많이 깔어.. -_-

$ sudo apt install octave-image
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다... 완료
상태 정보를 읽는 중입니다... 완료        
다음의 추가 패키지가 설치될 것입니다 :
  default-jre-headless epstool fonts-freefont-otf libbtf1 libcombblas1.16.0
  libcxsparse3 libemf1 libfftw3-mpi3 libfltk-gl1.3 libfltk1.3 libglpk40
  libgraphicsmagick++-q16-12 libgraphicsmagick-q16-3 libhypre-2.22.1 libklu1
  libmumps-5.4 libpetsc-real3.15 libplot2c2 libpstoedit0c2a libptscotch-6.1
  libqhull8.0 libqrupdate1 libqscintilla2-qt5-15 libqscintilla2-qt5-l10n
  libscalapack-openmpi2.1 libscotch-6.1 libsundials-ida4
  libsundials-nvecparallel-petsc4 libsundials-nvecserial4
  libsundials-sunlinsol2 libsundials-sunmatrix2 libsuperlu-dist7
  libtrilinos-amesos-13.2 libtrilinos-aztecoo-13.2 libtrilinos-epetra-13.2
  libtrilinos-epetraext-13.2 libtrilinos-galeri-13.2 libtrilinos-ifpack-13.2
  libtrilinos-kokkos-13.2 libtrilinos-ml-13.2 libtrilinos-teuchos-13.2
  libtrilinos-trilinosss-13.2 libtrilinos-triutils-13.2
  libtrilinos-zoltan-13.2 mpi-default-bin octave octave-common octave-doc
  openmpi-bin openmpi-common pstoedit
제안하는 패키지:
  default-jre libfftw3-mpi-dev libiodbc2-dev default-libmysqlclient-dev
  graphicsmagick-dbg libqscintilla2-doc scalapack-doc octave-dev gfortran
  | fortran-compiler
다음 새 패키지를 설치할 것입니다:
  default-jre-headless epstool fonts-freefont-otf libbtf1 libcombblas1.16.0
  libcxsparse3 libemf1 libfftw3-mpi3 libfltk-gl1.3 libfltk1.3 libglpk40
  libgraphicsmagick++-q16-12 libgraphicsmagick-q16-3 libhypre-2.22.1 libklu1
  libmumps-5.4 libpetsc-real3.15 libplot2c2 libpstoedit0c2a libptscotch-6.1
  libqhull8.0 libqrupdate1 libqscintilla2-qt5-15 libqscintilla2-qt5-l10n
  libscalapack-openmpi2.1 libscotch-6.1 libsundials-ida4
  libsundials-nvecparallel-petsc4 libsundials-nvecserial4
  libsundials-sunlinsol2 libsundials-sunmatrix2 libsuperlu-dist7
  libtrilinos-amesos-13.2 libtrilinos-aztecoo-13.2 libtrilinos-epetra-13.2
  libtrilinos-epetraext-13.2 libtrilinos-galeri-13.2 libtrilinos-ifpack-13.2
  libtrilinos-kokkos-13.2 libtrilinos-ml-13.2 libtrilinos-teuchos-13.2
  libtrilinos-trilinosss-13.2 libtrilinos-triutils-13.2
  libtrilinos-zoltan-13.2 mpi-default-bin octave octave-common octave-doc
  octave-image openmpi-bin openmpi-common pstoedit
0개 업그레이드, 52개 새로 설치, 0개 제거 및 9개 업그레이드 안 함.
49.9 M바이트 아카이브를 받아야 합니다.
이 작업 후 171 M바이트의 디스크 공간을 더 사용하게 됩니다.
계속 하시겠습니까? [Y/n] 

 

엥.. 패키지 깔고 나니 octave 아이콘이 하나 더 생기고 실행해보니, 7.1.0 과 6.4.0 두개가 생겼다.

 

7.1.0 에서는 여전히 에러가 나는데

6.4.0 에서는 잘 된다. 머냐..? 버전 가리냐?

'프로그램 사용 > octave' 카테고리의 다른 글

octave로 공간 fft 돌려보기  (0) 2026.05.19
octave csv에서 읽어들이기  (0) 2024.11.26
octave audioread wav  (0) 2023.07.12
공짜 matlab? octave  (0) 2015.11.05
Posted by 구차니

128k context length에 2기가 VRAM을 냠냠

$ ./llama-b8925/llama-cli -m model/gemma4-e4b/gemma-4-E4B-it-Q4_K_M.gguf  --verbose
llama_kv_cache: size = 2048.00 MiB (131072 cells,   4 layers,  1/1 seqs), K (f16): 1024.00 MiB, V (f16): 1024.00 MiB
llama_kv_cache: attn_rot_k = 0, n_embd_head_k_all = 512
llama_kv_cache: attn_rot_v = 0, n_embd_head_k_all = 512
llama_kv_cache_iswa: creating     SWA KV cache, size = 1024 cells

 

k 만 q4로 하니 288MB! 256MB 보단 약간 큰데 아무튼 대충~ 1/4 로 줄었다.

$ ./llama-b8925/llama-cli -m model/gemma4-e4b/gemma-4-E4B-it-Q4_K_M.gguf  --verbose -ctk q4_0 --ctx-size 131072
llama_kv_cache: size = 1312.00 MiB (131072 cells,   4 layers,  1/1 seqs), K (q4_0):  288.00 MiB, V (f16): 1024.00 MiB
llama_kv_cache: attn_rot_k = 1, n_embd_head_k_all = 512
llama_kv_cache: attn_rot_v = 0, n_embd_head_k_all = 512
llama_kv_cache_iswa: creating     SWA KV cache, size = 1024 cells

 

kv를 q4로 하니 대충 512MB 근처.

$ ./llama-b8925/llama-cli -m model/gemma4-e4b/gemma-4-E4B-it-Q4_K_M.gguf  --verbose -ctk q4_0 -ctv q4_0 --ctx-size 131072
llama_kv_cache: size =  576.00 MiB (131072 cells,   4 layers,  1/1 seqs), K (q4_0):  288.00 MiB, V (q4_0):  288.00 MiB
llama_kv_cache: attn_rot_k = 1, n_embd_head_k_all = 512
llama_kv_cache: attn_rot_v = 1, n_embd_head_k_all = 512
llama_kv_cache_iswa: creating     SWA KV cache, size = 1024 cells

'프로그램 사용 > ai 프로그램' 카테고리의 다른 글

wan2.2 + comfyui  (0) 2026.05.19
comfyui 실행  (0) 2026.05.19
openai api  (0) 2026.05.18
RAG 시도 - postgresql(14) + pgvector  (1) 2026.05.15
gpt님 만세! - pip torch 버전 낮추기  (0) 2026.05.15
Posted by 구차니

 

[링크 : https://velog.io/@euisuk-chung/%EC%A0%95%EB%A6%AC-OpenAI-API-Document]

[링크 : https://developers.openai.com/api/reference/resources/responses]

[링크 : https://developers.openai.com/api/docs/guides/text]

[링크 : https://model-spec.openai.com/2025-02-12.html#chain_of_command]

 

 

 

 

claude에 물어보니 openai 의 api가 랩핑한것일뿐

결국에는 신경망에 특수 토큰으로 인식될 만한 녀석으로 감싸고 그걸 임베딩 해서 벡터로 넣어줄 뿐

무언가(?) 대단한 방법으로 들어가는건 아니라고 한다. imagenary monologue 줄여서 im prefix

 

다른 모델과의 비교

모델블록 시작블록 끝방식
ChatML (Qwen, Hermes) <|im_start|>role <|im_end|> 범용 role 삽입
LLaMA-3 <|start_header_id|>role<|end_header_id|> <|eot_id|> 헤더 분리
LLaMA-2 [INST] [/INST] role 구분 없음
Mistral [INST] [/INST] role 구분 없음
DeepSeek-R1 <|User|> / <|Assistant|> <|end▁of▁sentence|> role별 고정 토큰


[링크 :
https://claude.ai/share/0bfc9c76-e5a8-46d2-8346-4f84170625db]

 

#define CHATML_TEMPLATE_SRC                                                               \
    "{%- for message in messages -%}\n"                                                   \
    "  {{- '<|im_start|>' + message.role + '\n' + message.content + '<|im_end|>\n' -}}\n" \
    "{%- endfor -%}\n"                                                                    \
    "{%- if add_generation_prompt -%}\n"                                                  \
    "  {{- '<|im_start|>assistant\n' -}}\n"                                               \
    "{%- endif -%}"
    
    const std::string TOOL_CALL_START = "<|tool_call_start|>";
    const std::string TOOL_CALL_END   = "<|tool_call_end|>";
    const std::string THINK_START     = "<think>";
    const std::string THINK_END       = "</think>";
    const std::string GEN_PROMPT      = "<|im_start|>assistant\n";    

[링크 : https://github.com/ggml-org/llama.cpp/blob/master/common/chat.cpp#L567]

 

음.. gemma4-e4b 에서는 im_start가 특수 토큰으로 배우진 않은듯?

/mnt/Downloads/model/gemma4-e4b$ ../../llama-b8925/llama-tokenize -m gemma-4-E4B-it-Q4_K_M.gguf -p "<|im_start|>system" --log-disable
     2 -> '<bos>'
236820 -> '<'
236909 -> '|'
   548 -> 'im'
236779 -> '_'
  3041 -> 'start'
111038 -> '|>'
  9731 -> 'system'

/mnt/Downloads/model/gemma4-e4b$ ../../llama-b8925/llama-tokenize -m gemma-4-E4B-it-Q4_K_M.gguf -p "<|im_start|>system" --log-disable  --no-parse-special
     2 -> '<bos>'
236820 -> '<'
236909 -> '|'
   548 -> 'im'
236779 -> '_'
  3041 -> 'start'
111038 -> '|>'
  9731 -> 'system'

/mnt/Downloads/model/gemma4-e4b$ ../../llama-b8925/llama-tokenize -m gemma-4-E4B-it-Q4_K_M.gguf -p "<|im_start|>system" --log-disable  --no-parse-special --ids
[2, 236820, 236909, 548, 236779, 3041, 111038, 9731]

 

+

모델 읽어들이다가 발견 한 특수 토큰..?

일단은 control token 이라고 나온다.

$ ./llama-b8925/llama-cli -m model/gemma4-e4b/gemma-4-E4B-it-Q4_K_M.gguf  --verbose
load: control token: 258884 '<|video|>' is not marked as EOG
load: control token: 255999 '<|image>' is not marked as EOG
load: control token: 258882 '<image|>' is not marked as EOG
load: control token: 258883 '<audio|>' is not marked as EOG
load: control token:     98 '<|think|>' is not marked as EOG
load: control token:    105 '<|turn>' is not marked as EOG
load: control token: 258880 '<|image|>' is not marked as EOG
load: control token:      2 '<bos>' is not marked as EOG
load: control-looking token:    212 '</s>' was not control-type; this is probably a bug in the model. its type will be overridden
load: control token:      0 '<pad>' is not marked as EOG
load: control-looking token:     50 '<|tool_response>' was not control-type; this is probably a bug in the model. its type will be overridden
load: control token:     46 '<|tool>' is not marked as EOG
load: control token:     47 '<tool|>' is not marked as EOG
load: control token: 256000 '<|audio>' is not marked as EOG
load: control token:      3 '<unk>' is not marked as EOG
load: control token: 258881 '<|audio|>' is not marked as EOG
load: control-looking token:      1 '<eos>' was not control-type; this is probably a bug in the model. its type will be overridden
load: control token:      4 '<mask>' is not marked as EOG
|load: printing all EOG tokens:
load:   - 1 ('<eos>')
load:   - 50 ('<|tool_response>')
load:   - 106 ('<turn|>')
load:   - 212 ('</s>')
load: special_eog_ids contains '<|tool_response>', removing '</s>' token from EOG list


print_info: BOS token             = 2 '<bos>'
print_info: EOS token             = 106 '<turn|>'
print_info: UNK token             = 3 '<unk>'
print_info: PAD token             = 0 '<pad>'
print_info: MASK token            = 4 '<mask>'
print_info: LF token              = 107 '
'
print_info: EOG token             = 1 '<eos>'
print_info: EOG token             = 50 '<|tool_response>'
print_info: EOG token             = 106 '<turn|>'
print_info: max token length      = 93


init: chat template, example_format: '<|turn>system
<|think|>
You are a helpful assistant<turn|>
<|turn>user
Hello<turn|>
<|turn>model
Hi there<turn|>
<|turn>user
How are you?<turn|>
<|turn>model
'
srv          init: init: chat template, thinking = 1

'프로그램 사용 > ai 프로그램' 카테고리의 다른 글

comfyui 실행  (0) 2026.05.19
llama.cpp kv quantization  (0) 2026.05.19
RAG 시도 - postgresql(14) + pgvector  (1) 2026.05.15
gpt님 만세! - pip torch 버전 낮추기  (0) 2026.05.15
wan2.2  (0) 2026.05.13
Posted by 구차니