[BugFix]: fix a lot of bug (#1565)

Signed-off-by: princepride <wangzhipeng628@gmail.com>
This commit is contained in:
汪志鹏 authored and GitHub committed 2026-02-28 16:26:56 +08:00
1 parent cd2234a1bf
commit 3d9fa8d53f
5 files changed
+18 -16

No files matched your search

@@ -128,13 +128,10 @@ class SiglipNaViTWrapper(nn.Module):
else:
self.vision_model = vision_model
# Configure weights for linear equivalent of patch embedding
self.patch_embed_weight = self.vision_model.embeddings.patch_embedding.weight
self.patch_embed_bias = self.vision_model.embeddings.patch_embedding.bias
def forward(self, packed_pixel_values, packed_flattened_position_ids, cu_seqlens, max_seqlen):
w = self.patch_embed_weight.view(self.patch_embed_weight.shape[0], -1)
x = F.linear(packed_pixel_values, w, self.patch_embed_bias)
patch_embed = self.vision_model.embeddings.patch_embedding
w = patch_embed.weight.view(patch_embed.weight.shape[0], -1)
x = F.linear(packed_pixel_values, w, patch_embed.bias)
pos = self.vision_model.embeddings.position_embedding(packed_flattened_position_ids)
x = x + pos
hidden_states = x.unsqueeze(0)
@@ -205,6 +202,9 @@ class BagelPipeline(nn.Module):
)
vit_config_path = os.path.join(model_path, "vit_config.json")
vit_conf = SiglipVisionConfig.from_json_file(vit_config_path)
if vit_conf.num_hidden_layers == 27:
vit_conf.num_hidden_layers = 26
vit_conf.vision_use_head = False
self.vit_model = SiglipVisionModel(vit_conf)
self.image_processor = SiglipImageProcessor.from_pretrained(model_path, local_files_only=True)
@@ -871,8 +871,8 @@ class GlmImagePipeline(nn.Module):
def load_weights(self, weights: Iterable[tuple[str, torch.Tensor]]) -> set[str]:
"""Load transformer weights."""
# Filter weights for transformer only
transformer_weights = (
(name.replace("transformer.", ""), weight) for name, weight in weights if name.startswith("transformer.")
(name.replace("transformer.", "", 1), weight) for name, weight in weights if name.startswith("transformer.")
)
return self.transformer.load_weights(transformer_weights)
loaded = self.transformer.load_weights(transformer_weights)
return {f"transformer.{name}" for name in loaded}
@@ -86,7 +86,7 @@ class SharedMemoryConnector(OmniConnectorBase):
return obj, int(shm_handle.get("size", 0))
except Exception as e:
logger.error(f"SharedMemoryConnector shm get failed for req : {e}")
return None, 0
return None
finally:
# If data has been received, delete lock_file.
if obj and os.path.exists(lock_file):
@@ -105,7 +105,7 @@ class SharedMemoryConnector(OmniConnectorBase):
metadata = metadata.get(get_key)
if not isinstance(metadata, dict):
return None, 0
return None
if "inline_bytes" in metadata:
try:
@@ -113,24 +113,24 @@ class SharedMemoryConnector(OmniConnectorBase):
return obj, int(metadata.get("size", 0))
except Exception as e:
logger.error(f"SharedMemoryConnector inline get failed for req {get_key}: {e}")
return None, 0
return None
if "shm" in metadata:
shm_handle = metadata["shm"]
lock_file = f"/dev/shm/shm_{shm_handle['name']}_lockfile.lock"
return self._get_data_with_lock(lock_file, shm_handle)
return None, 0
return None
shm = None
try:
shm = shm_pkg.SharedMemory(name=get_key)
if shm is None or shm.size == 0:
return None, 0
return None
lock_file = f"/dev/shm/shm_{get_key}_lockfile.lock"
shm_handle = {"name": get_key, "size": shm.size}
return self._get_data_with_lock(lock_file, shm_handle)
except Exception:
return None, 0
return None
finally:
if shm:
shm.close()
@@ -136,6 +136,8 @@ class OmniChunkTransferAdapter(OmniTransferAdapterBase):
logger.error(f"SharedMemoryConnector get failed for req {connector_get_key}: {e}")
return False
if result is None:
return False
payload_data, size = result
if payload_data:
@@ -36,12 +36,12 @@ from transformers.models.glm_image.configuration_glm_image import (
GlmImageVQVAEConfig,
)
from transformers.models.glm_image.processing_glm_image import GlmImageProcessor
from vllm.attention.layer import Attention
from vllm.config import CacheConfig, MultiModalConfig, VllmConfig
from vllm.config.multimodal import BaseDummyOptions
from vllm.distributed import get_pp_group, get_tensor_model_parallel_world_size
from vllm.distributed import utils as dist_utils
from vllm.logger import init_logger
from vllm.model_executor.layers.attention import Attention
from vllm.model_executor.layers.attention.mm_encoder_attention import (
MMEncoderAttention,
)