当前位置: 首页 > news >正文

开发网站需要学什么wordpress设置恢复

开发网站需要学什么,wordpress设置恢复,中国平面设计公司,建设一个门户网站价格1. 前言 最近在测试VLM模型,发现官方的网页demo,代码中视频与图片分辨率可能由于高并发设置的很小,导致达不到预期效果,于是自己研究了一下,搞了一个简单的前端部署,自己在服务器部署了下UI界面&#xff0…

1. 前言

最近在测试VLM模型,发现官方的网页demo,代码中视频与图片分辨率可能由于高并发设置的很小,导致达不到预期效果,于是自己研究了一下,搞了一个简单的前端部署,自己在服务器部署了下UI界面,方便在本地笔记本进行测试。

2.代码

import streamlit as st
from PIL import Image
from transformers import Qwen2VLForConditionalGeneration, AutoProcessor
from qwen_vl_utils import process_vision_info
import torch
import os# 加载模型和处理器 (只加载一次)
@st.cache_resource  # 这个装饰器会缓存模型和处理器
def load_model():model = Qwen2VLForConditionalGeneration.from_pretrained("../qwen2_vl/model_7b/", torch_dtype=torch.float16, device_map="auto")processor = AutoProcessor.from_pretrained("../qwen2_vl/model_7b/")return model, processor# 加载模型和处理器
model, processor = load_model()def load_image(image_file):img = Image.open(image_file)return img# Function to load and resize image to fixed height
def resize_image_to_height(image, height):# Resize image keeping the aspect ratiowidth = int(image.width * height / image.height)return image.resize((width, height))# 处理输入
def process_input(messages):# Preparation for inferencetext = processor.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)image_inputs, video_inputs = process_vision_info(messages)inputs = processor(text=[text],images=image_inputs,videos=video_inputs,padding=True,return_tensors="pt",)inputs = inputs.to("cuda")# Inferencegenerated_ids = model.generate(**inputs, max_new_tokens=128)generated_ids_trimmed = [out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)]output_text = processor.batch_decode(generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False)# Clear all intermediate variables and free GPU memorydel text, image_inputs, video_inputs, inputs, generated_ids, generated_ids_trimmedtorch.cuda.empty_cache()return output_text# Streamlit UI
st.title("VLM 视觉内容理解")# 选择文件上传
uploaded_file = st.file_uploader("上传图片或视频", type=["jpg", "jpeg", "png", "mp4"])# 判断文件是否上传
if uploaded_file is not None:# 保存文件到本地upload_dir = "uploads"  # 上传文件保存目录if not os.path.exists(upload_dir):os.makedirs(upload_dir)file_path = os.path.join(upload_dir, uploaded_file.name)# 保存文件with open(file_path, "wb") as f:f.write(uploaded_file.getbuffer())# 判断文件类型if uploaded_file.type.startswith("image"):# 加载并显示图片img = load_image(file_path)# 设置固定高度fixed_height = 300  # 设置固定高度为300px# 调整图片的大小,使高度固定,宽度按比例调整img_resized = resize_image_to_height(img, fixed_height)st.image(img_resized, use_container_width=False)# 输入台词部分st.subheader("输入一句提示词")user_input = st.text_input("请输入提示词,并回车确认:")messages = [{"role": "user","content": [{"type": "image","image": file_path,  # 使用本地保存的文件路径"max_pixels": 1024 * 960},{"type": "text", "text": user_input},],}]elif uploaded_file.type.startswith("video"):# 设置视频固定高度fixed_height = 300  # 设置固定高度为300px# 显示视频st.video(file_path)st.subheader("输入一句提示词")user_input = st.text_input("请输入提示词,并回车确认:")# 通过 Markdown 来调整视频的显示样式st.markdown(f"""<style>video {{height: {fixed_height}px;width: auto;}}</style>""",unsafe_allow_html=True)messages = [{"role": "user","content": [{"type": "video","video": file_path,  # 使用本地保存的文件路径"max_pixels": 960 * 480,"fps": 1.0,},{"type": "text", "text": user_input},],}]# 调用模型进行推理result = process_input(messages)if result:# 使用 st.markdown 和 CSS 来自动换行st.markdown("### 模型推理结果:")# 将输出格式化为代码块样式,并通过 CSS 实现自动换行st.markdown(f'<pre style="white-space: pre-wrap; word-wrap: break-word;">{result[0]}</pre>',unsafe_allow_html=True)else:st.markdown("### 模型推理结果:无结果。")# 推理完成后删除本地文件try:os.remove(file_path)except Exception as e:pass

结论

主要是利用streamlit,进行UI的搭建,涉及本地文件的上传与下载到服务器中,推理完删除。
在这里插入图片描述

http://www.yayakq.cn/news/561446/

相关文章:

  • 网站和网页的关系在线设计平台属于什么行业
  • 核工业南京建设集团网站设计师个人作品集网站
  • 做一个好的网站需要什么江门建网站
  • 公司网站建设的方案杭州的网站建设
  • 地方生活门户信息网站源码wordpress3.6
  • 为何网站建设公司报价不同景观设计公司有哪些
  • cms开源建站系统logo网站
  • 网站做商城网站怎么验证用户是否登陆
  • 如何k掉别人的网站flash网站片头动画
  • 闵行网站建设外包广西排名前十的模板厂
  • 我要建设公司网站做网站需要机吗
  • 向祖国建设者致敬网站内部网
  • 公司网站开发 建设厦门 网站备案
  • 网站模板源码平台太原互联网推广公司
  • 网站制作高手成都做网站设
  • 文化馆网站建设情况黄山旅游最佳路线
  • 网站建设用户体验软件开发代码大全
  • 宁城网站建设做律师事务所网站
  • 淘宝客做网站好还是建群号搭建linux服务器
  • 重庆seo网站设计福田网站建设公司乐云seo
  • 云南凡科建站哪家好wordpress把评论改为留言
  • 如何建设优化一个网站北京手机网站开发费用
  • 局域网建网站的详细步骤全国网站制作公司
  • 辽宁公司网站建设微信公众号推广怎么收费
  • 新老网站做301跳转深圳市网络seo推广平台
  • 鹤城建设集团网站策划会展网站建设
  • 网站后台编辑不了甘肃建设项目公示网站
  • 设计网站考虑哪些因素郑州制作网站电话133
  • 石家庄市里的网站公司自助建网站哪个便宜
  • 重庆网站建设公司的网站上海微信小程序网站建设