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

藤县建设局网站wordpress xmmpp

藤县建设局网站,wordpress xmmpp,前端开发简历,建设个人网站需要多少钱关于 omniparser v2 本地部署,网上资料不算多,尤其是对于土蔷内用户,还是有些坑的。 1、安装步骤 可参考两个CSDN博客: (1)大模型实战 - ‘OmniParser-V2本地部署安装 链接 (2)…

关于 omniparser v2 本地部署,网上资料不算多,尤其是对于土蔷内用户,还是有些坑的。

1、安装步骤

可参考两个CSDN博客:

(1)大模型实战 - ‘OmniParser-V2本地部署安装  链接

(2)微软开源神器OmniParser-v2.0本地部署教程(更换huggingface镜像服务器)  链接

2、排错

(1)缺 microsoft/Florence-2-base 或其他的一些模型权重,都可以去 modelscope 下载。网站上有下载命令。

(2)提示:

To use Transformers in an offline or firewalled environment requires the downloaded and cached files ahead of time.

根据官方 文档 说明

修改 util/utils.py 文件中

processor = AutoProcessor.from_pretrained("/home/xxxxxxx/OmniParser/microsoft/Florence-2-base", local_files_only=True,trust_remote_code=True)

主要是把 microsoft/Florence-2-base 这个模型名换成具体的文件路径,并设置 trust_remote_code=True

(3)更换镜像(可选)

刚才提到的文章:微软开源神器OmniParser-v2.0本地部署教程(更换huggingface镜像服务器)(链接),其中提到更换镜像,对于不熟悉的人来说,可能不知道作者在说什么。这里补充:

其实是更换huggingface镜像服务器:

位置:transformers/constants.py

(例如:~/.local/lib/python3.10/site-packages/transformers/constants.py)

位置:huggingface_hub/constants.py

(例如:~/.local/lib/python3.10/site-packages/huggingface_hub/constants.py)

(4)错误:

Please check your internet connection. This can happen if your antivirus software blocks the download of this file. You can install manually by following these steps:

1. Download this file: https://cdn-media.huggingface.co/frpc-gradio-0.3/frpc_linux_arm64

2. Rename the downloaded file to: frpc_linux_arm64_v0.3

3. Move the file to this location: /home/xxxxxx/miniconda3/envs/omni/lib/python3.12/site-packages/gradio

gitee上有 frpc_linux_arm64 这个文件,可以去下载。然后按照提示改名、移动位置、增加权限:

chmod +x /home/xxxx/miniconda3/envs/omni/lib/python3.12/site-packages/gradio/frpc_linux_arm64_v0.3

(5)提示:

TypeError: argument of type 'bool' is not iterable

Could not create share link. Please check your internet connection or our status page: https://status.gradio.app.

改 gradio_demo.py 文件的下面一行代码

demo.launch(share=False, server_port=7861, server_name='0.0.0.0')

设置share=False

(6)提示:

Florence2ForConditionalGeneration.forward() got an unexpected keyword argument 'images'

定位 util/utils.py 文件中

model = AutoModelForCausalLM.from_pretrained(model_name_or_path, torch_dtype=torch.float32, trust_remote_code=True)

前面加一句:

model_name_or_path="/home/xxxxxx/OmniParser/microsoft/Florence-2-base-ft"

因为前面代码有默认设置:

model_name_or_path="Salesforce/blip2-opt-2.7b"

3、构建 docker 镜像

(1)先用豆包将 gradio_demo.py 改成接收 http 请求的服务器。

from typing import Optional
import base64
import io
import os
from flask import Flask, request, jsonify
from PIL import Image
import numpy as np
import torch
from util.utils import check_ocr_box, get_yolo_model, get_caption_model_processor, get_som_labeled_imgapp = Flask(__name__)yolo_model = get_yolo_model(model_path='weights/icon_detect/model.pt')
caption_model_processor = get_caption_model_processor(model_name="florence2", model_name_or_path="weights/icon_caption_florence")
# caption_model_processor = get_caption_model_processor(model_name="blip2", model_name_or_path="weights/icon_caption_blip2")DEVICE = torch.device('cuda')def process(image_input,box_threshold,iou_threshold,use_paddleocr,imgsz
) -> Optional[Image.Image]:box_overlay_ratio = image_input.size[0] / 3200draw_bbox_config = {'text_scale': 0.8 * box_overlay_ratio,'text_thickness': max(int(2 * box_overlay_ratio), 1),'text_padding': max(int(3 * box_overlay_ratio), 1),'thickness': max(int(3 * box_overlay_ratio), 1),}ocr_bbox_rslt, is_goal_filtered = check_ocr_box(image_input, display_img=False, output_bb_format='xyxy',goal_filtering=None, easyocr_args={'paragraph': False,'text_threshold': 0.9},use_paddleocr=use_paddleocr)text, ocr_bbox = ocr_bbox_rsltdino_labled_img, label_coordinates, parsed_content_list = get_som_labeled_img(image_input, yolo_model,BOX_TRESHOLD=box_threshold,output_coord_in_ratio=True,ocr_bbox=ocr_bbox,draw_bbox_config=draw_bbox_config,caption_model_processor=caption_model_processor,ocr_text=text,iou_threshold=iou_threshold,imgsz=imgsz)image = Image.open(io.BytesIO(base64.b64decode(dino_labled_img)))print('finish processing')parsed_content_list = '\n'.join([f'icon {i}: ' + str(v) for i, v in enumerate(parsed_content_list)])return image, str(parsed_content_list)@app.route('/process_image', methods=['POST'])
def process_image():try:# 获取图像数据file = request.files['image']image = Image.open(file.stream)# 获取参数box_threshold = float(request.form.get('box_threshold', 0.05))iou_threshold = float(request.form.get('iou_threshold', 0.1))use_paddleocr = bool(request.form.get('use_paddleocr', True))imgsz = int(request.form.get('imgsz', 640))# 处理图像processed_image, parsed_content = process(image, box_threshold, iou_threshold, use_paddleocr, imgsz)# 将处理后的图像转换为 base64 编码buffered = io.BytesIO()processed_image.save(buffered, format="PNG")img_str = base64.b64encode(buffered.getvalue()).decode()# 返回结果return jsonify({'image': img_str,'parsed_content': parsed_content})except Exception as e:return jsonify({'error': str(e)}), 500if __name__ == '__main__':app.run(host='0.0.0.0', port=7861)

可以运行测试代码:

curl -X POST \-F "image=@path/to/your/image.jpg" \-F "box_threshold=0.05" \-F "iou_threshold=0.1" \-F "use_paddleocr=true" \-F "imgsz=640" \http://localhost:7861/process_image

(2)创建 dockerfile (放在 omniparser 文件夹下)

# 使用 Python 3.12 作为基础镜像
FROM python:3.12-slim# 设置工作目录
WORKDIR /app# 安装系统依赖
RUN apt-get update && apt-get install -y \git \curl \wget \unzip \&& rm -rf /var/lib/apt/lists/*# 复制项目文件
COPY . /app# 安装 Python 依赖
RUN pip install --no-cache-dir -r requirements.txt# 解压权重文件(如果需要)
RUN if [ -f "omniparse_weights.zip" ]; then unzip omniparse_weights.zip -d weights; fi# 暴露应用端口(根据实际应用修改)
EXPOSE 7861 # 设置环境变量(根据需要添加)
ENV PYTHONPATH="/app:$PYTHONPATH"# 定义启动命令(根据实际应用修改)
CMD ["python", "flask_demo.py"]

(3)运行docker可能需要设置镜像

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://docker.xuanyuan.me/"]
}
EOF

重启 Docker 服务:

sudo systemctl daemon-reload
sudo systemctl restart docker

测试一下:

docker run hello-world

(4)构建 docker 镜像

# 构建镜像
docker build -t omniparser:latest .# 运行容器(前台模式)
docker run -it --rm -p 7861:7861 -p 5000:5000 omniparser:latest# 或使用后台模式
docker run -d -p 7861:7861 --name omniparser omniparser:latest

http://www.dtcms.com/wzjs/601155.html

相关文章:

  • 快速搭建网站框架的工具进入公众号免费获取验证码
  • 郑州做网站公司有多少钱wordpress for sae 4.4
  • 石家庄整站优化技术做网站的叫什么思耐
  • 学校网站建设所使用的技术wordpress后缀
  • 网站不收录网页制作工具按其制作方式分为什么
  • 深圳网站开发招聘上海建设工程招投标网站
  • 手机网站与app苏州网站定制公司哪家好
  • 做暖暖视频免费观看免费网站网站商城注意事项
  • 深圳专业商城网站设计制作公司后台的网站代理维护更新
  • 网站开发流程龙岩最便宜的网站建设
  • 做交流网站义乌兼职网站建设
  • 广州seo网站推广公司网站 动态内容加速
  • 网站建设地址北京昌平网站怎么做流量
  • 设计师的素材网站wordpress多站点多模板
  • 北京seo网站推广费用怎么做国内网站吗
  • 网页设计网站结构图怎么弄wordpress注入文件
  • 网站备案安全承诺书做网站的上海市哪家技术好
  • 怎样审请网站网站开发发和后台开发有什么区别
  • 怎样可以查到做网站公司网站导航设计法则
  • 建云科技网站首页ui培训设计怎么样
  • 国外装饰公司网站罗田企业网站建设
  • 网站举报中心官网电子商务网站设计内容
  • 诚聘php网站开发师wordpress目录手机版
  • 免费企业建站开源系统临安网站设计
  • 网站建设公司的发展前景wordpress it模板下载地址
  • 做网站有那几种末班百度云做网站空间
  • 南京本地网站电子商城市场
  • 关于设计的网站有哪些谷歌官网首页
  • 网站案例展示百度投放广告平台
  • 做网站的的人收入多少钱哪些网站做推广性价比高