96SEO 2026-02-19 12:43 3
。

主要解决2.6版本默认绑定flash_atten问题#xff0c;pip
flash_attn也无法安装#xff0c;因为强制依赖cuda。
主要解决的就是这个问题#xff0c;还…Mac平台M1PRO芯片MiniCPM-V-2.6网页部署跑通
2.6的小钢炮可以输入视频了我必须拉到本地跑跑。
主要解决2.6版本默认绑定flash_atten问题pip
flash_attn也无法安装因为强制依赖cuda。
主要解决的就是这个问题还有
pro代码仓库https://github.com/OpenBMB/MiniCPM-V.git分支main代码版本b0125d8a
[https://github.com/OpenBMB/MiniCPM-V.git](https://github.com/OpenBMB/MiniCPM-V.git)
http://thunlp.oss-cn-qingdao.aliyuncs.com/multi_modal/never_delete/modelscope_studio-0.4.0.9-py3-none-any.whl
#dcord如果安装有问题参考我LAVIS博客#找到根目录web_demo_2.6.py运行
PYTORCH_ENABLE_MPS_FALLBACK1#第一次运行web_demo_2.6.py报错如下
transformers.dynamic_module_utils
imports:imports.remove(flash_attn)return
patch(transformers.dynamic_module_utils.get_imports,
AutoModel.from_pretrained(model_path,
torch_dtypetorch.bfloat16)model
transformers.dynamic_module_utils
argparse.ArgumentParser(descriptiondemo)
parser.add_argument(--multi-gpus,
imports:imports.remove(flash_attn)return
AutoModel.from_pretrained(model_path,
AutoModel.from_pretrained(model_path,
torch_dtypetorch.bfloat16)device_map
10GB},no_split_module_classes[SiglipVisionTransformer,
device_map[llm.model.embed_tokens]device_map[llm.lm_head]
device_map[llm.model.layers.26]device_map[llm.model.layers.8]
device_id2device_map[llm.model.layers.9]
device_id2device_map[llm.model.layers.10]
device_id2device_map[llm.model.layers.11]
device_id2device_map[llm.model.layers.12]
device_id2device_map[llm.model.layers.13]
device_id2device_map[llm.model.layers.14]
device_id2device_map[llm.model.layers.15]
device_id2device_map[llm.model.layers.16]
device_id2#print(device_map)model
load_checkpoint_and_dispatch(model,
patch(transformers.dynamic_module_utils.get_imports,
AutoModel.from_pretrained(model_path,
torch_dtypetorch.bfloat16)model
AutoTokenizer.from_pretrained(model_path,
get_file_extension(filename):return
os.path.splitext(filename)[1].lower()def
gr.Slider(minimumparams[minimum],maximumparams[maximum],valueparams[value],stepparams[step],interactiveparams[interactive],labelparams[label])elif
gr.Radio(choicesparams[choices],valueparams[value],interactiveparams[interactive],labelparams[label])elif
gr.Button(valueparams[value],interactiveTrue)def
create_multimodal_input(upload_image_disabledFalse,
upload_video_disabledFalse):return
mgr.MultimodalInput(upload_image_button_props{label:
multiple},upload_video_button_props{label:
single},submit_button_props{label:
vision_hidden_statesNone):try:print(msgs:,
model.chat(imageNone,msgsmsgs,tokenizertokenizer,**params)res
e:print(e)traceback.print_exc()return
Image.open(image.path).convert(RGB)else:image
Image.open(image.file.path).convert(RGB)#
io.BytesIO()#image.save(buffered,
base64.b64encode(buffered.getvalue()).decode()#return
len(frame_idx)MAX_NUM_FRAMES:frame_idx
vr.get_batch(frame_idx).asnumpy()video
[Image.fromarray(v.astype(uint8))
encode_message(_question):files
r\[mm_media\]\d\[/mm_media\]matches
text:message.append(make_text(text))for
text:message.append(make_text(text))return
check_has_videos(_question):images_cnt
count_video_frames(_context):num_frames
_app_cfg[ctx].copy()_context.append({role:
encode_message(_question)})images_cnt
files_cnts[1]_context.append({role:
[make_text(_answer)]})_chat_bot.append((_question,
0:_app_cfg[ctx]_context_app_cfg[sts]sts_app_cfg[images_cnt]
videos_cntupload_image_disabled
create_multimodal_input(upload_image_disabled,
fewshot_add_demonstration(_image,
Image.open(_image).convert(RGB)ctx.append({role:
make_text(_user_message)]})message_item.append({text:
_user_message:ctx.append({role:
[make_text(_user_message)]})message_item.append({text:
[]})else:message_item.append(None)if
_assistant_message:ctx.append({role:
[make_text(_assistant_message)]})message_item.append({text:
[]})else:message_item.append(None)_chat_bot.append(message_item)return
params_form):user_message_contents
Image.open(_image).convert(RGB)user_message_contents
_user_message:user_message_contents
user_message_contents:_context.append({role:
_image:_chat_bot.append([{text:
[]}])else:_chat_bot.append([{text:
0:_app_cfg[ctx]_context_app_cfg[sts]stsreturn
regenerate_button_clicked(_question,
check_has_videos(_question)images_cnt
files_cnts[1]_app_cfg[images_cnt]
videos_cntupload_image_disabled
last_message.text:last_user_message
last_message.files[0].file.path_chat_bot
app_session):txt_message.files.clear()txt_message.text
copy.deepcopy(init_conversation)app_session[sts]
min_width300):gr.Markdown(valueintroduction)params_form
valuecopy.deepcopy(init_conversation),
create_multimodal_input()chat_tab_label
visibleFalse)txt_message.submit(respond,[txt_message,
gr.Textbox(labelUser)assistant_message
gr.Row():add_demonstration_button
variantprimary)add_demonstration_button.click(fewshot_add_demonstration,[image_input,
app_session])generate_button.click(fewshot_respond,[image_input,
app_session])chat_tab.select(select_chat_type,[chat_tab_label,
app_session],[app_session])chat_tab.select(
assistant_message])fewshot_tab.select(select_chat_type,[fewshot_tab_label,
app_session],[app_session])fewshot_tab.select(
assistant_message])chat_bot.flushed(flushed,outputs[txt_message])regenerate.click(regenerate_button_clicked,[txt_message,
app_session])clear_button.click(clear,[txt_message,
gr.Image(valuehttp://thunlp.oss-cn-qingdao.aliyuncs.com/multi_modal/never_delete/m_bear2.gif,
gr.Image(valuehttp://thunlp.oss-cn-qingdao.aliyuncs.com/multi_modal/never_delete/video2.gif,
gr.Image(valuehttp://thunlp.oss-cn-qingdao.aliyuncs.com/multi_modal/never_delete/fshot.gif,
/Usxxxxxxxckages/torch/nn/modules/module.py,
https://download.pytorch.org/whl/nightly/cpu#再次运行就没问题了
#这里下载模型20g可能会等一段时间最后借助魔法下载看这网速在疯狂跑就没问题
解决flash_attn强制依赖问题解决bfloat16在mps无法使用问题看系统占用是没走mps添加的环境变量也可以看出Sampling瞎回答Beam
Search处理视频4秒在m1pro下当前代码中需要230s左右ollama部署还在研究中…
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback