调用大模型api 批量处理图像 保存到excel

最近需要调用大模型,并将结果保存到excel中,效果如下:
在这里插入图片描述

代码:

import base64
from zhipuai import ZhipuAI
import os
import pandas as pd
from openpyxl import Workbook
from openpyxl.drawing.image import Image
from io import BytesIO# 指定图像所在的文件夹路径
img_folder = r"aaa"  # 请根据实际路径修改# 获取文件夹中的所有图片文件(这里假设所有文件都是图片,可以根据需要调整文件类型)
img_paths = [os.path.join(img_folder, f) for f in os.listdir(img_folder) if f.lower().endswith(('.jpg', '.jpeg', '.png', '.bmp', '.gif'))]# 初始化API客户端
client = ZhipuAI(api_key="xxx")  # 填写您自己的APIKey# 创建Excel工作簿
wb = Workbook()
ws = wb.active
ws.title = "Image Recognition Results"# 设置表头
ws.append(["Image", "Image Name", "Model Output"])# 循环处理每张图片
for img_path in img_paths:# 打开每一张图片并转换为base64with open(img_path, 'rb') as img_file:img_base = base64.b64encode(img_file.read()).decode('utf-8')# 调用API进行模型推理response = client.chat.completions.create(model="glm-4v-plus",  # 填写需要调用的模型名称messages=[{"role": "user","content": [{"type": "image_url","image_url": {"url": img_base}},{"type": "text","text": "图片中有人吗?"}]}])# 获取模型返回的结果model_output = response.choices[0].messageprint()# 将图片插入到Excel中img = Image(img_path)img.width = 100  # 设置图片的宽度,可以调整img.height = 100  # 设置图片的高度,可以调整# 在Excel表格中插入图片row = len(ws['A']) + 1  # 获取当前行数,用于将图片插入到正确位置ws.add_image(img, f"A{row}")# 将图片的文件名和识别结果添加到表格ws.append([None, os.path.basename(img_path), model_output.content])  # 图片在A列,文件名和结果在其他列# 保存Excel文件
excel_path = r"aaa"  # 请根据需要修改保存路径
wb.save(excel_path)print(f"结果已成功保存到 Excel 文件:{excel_path}")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/485501.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

debian ubuntu armbian部署asp.net core 项目 开机自启动

我本地的环境是 rk3399机器,安装armbian系统。 1.安装.net core 组件 sudo apt-get update && \sudo apt-get install -y dotnet-sdk-8.0或者安装运行库,但无法生成编译项目 sudo apt-get update && \sudo apt-get install -y aspnet…

声音克隆GPT-SoVITS

作者:吴业亮 博客:wuyeliang.blog.csdn.net 一、原理介绍 GPT-SoVITS,作为一款结合了GPT(生成预训练模型)和SoVITS(基于变分信息瓶颈技术的歌声转换)的创新工具,正在声音克隆领域掀…

记忆泡沫垫市场:解锁舒适睡眠的黄金钥匙与增长潜力的深度剖析

在当今快节奏、高压力的生活中,优质睡眠已成为现代人追求健康生活的重要组成部分。记忆泡沫垫,作为床垫和枕头领域的一次革命性创新,凭借其独特的材质特性和对人体工学的完美贴合,正逐步成为改善睡眠质量的首选解决方案。本文将从…

R语言 | 峰峦图 / 山脊图

目的:为展示不同数据分布的差异。 1. ggplot2 实现 # 准备数据 datmtcars[, c("mpg", "cyl")] colnames(dat)c("value", "type") head(dat) # value type #Mazda RX4 21.0 6 #Mazda RX4 Wag …

完美解决Qt Qml窗口全屏软键盘遮挡不显示

1、前提 说明:我使用的是第三方软键盘 QVirtualKeyboard QVirtualKeyboard: Qt5虚拟键盘支持中英文,仿qt官方的virtualkeyboard模块,但使用QWidget实现。 - Gitee.com 由于参考了几篇文章尝试但没有效果,链接如下: 文章一:可能…

吉林大学23级数据结构上机实验(第7周)

A 去火车站 寒假到了,小明准备坐火车回老家,现在他从学校出发去火车站,CC市去火车站有两种方式:轻轨和公交车。小明为了省钱,准备主要以乘坐公交为主。CC市还有一项优惠政策,持学生证可以免费乘坐一站轻轨&…

MATLAB 最小二乘点云拟合球 (89)

MATLAB 最小二乘点云拟合球 (89) 一、算法介绍二、算法实现1.代码2.结果这是缘,亦是最美的相见 一、算法介绍 球面拟合算法是一种通过数学方法将一组三维点(通常在三维空间中分布)拟合到一个理想的球形表面上。这个过程通常涉及使用最小二乘法来最小化实际数据点与拟合的…

短视频矩阵系统开发|技术源代码部署

短视频矩阵系统通过多账号运营管理、多平台视频智能分发等功能,助力企业实现视频引流、粉丝沉淀和转化。 短视频矩阵系统是一种创新的营销工具,它整合了多账号管理、视频智能分发、数据可视化等多种功能,为企业在短视频领域的发展提供了强大…

若依 ruoyi VUE el-select 直接获取 选择option 的 label和value

1、最新在研究若依这个项目,我使用的是前后端分离的方案,RuoYi-Vue-fast(后端) RuoYi-Vue-->ruoyi-ui(前端)。RuoYi-Vue-fast是单应用版本没有区分那么多的modules 自己开发起来很方便,这个项目运行起来很方便,但是需要自定义的…

【0x01】HCI_Inquiry_Complete事件详解

目录 一、事件概述 二、事件格式及参数 2.1. HCI_Inquiry_Complete事件格式 2.2. 参数 三、HCI_Inquiry_Complete事件触发机制 3.1. 基于查询命令完成的触发 3.2. 受查询环境和设备状态影响的触发 3.3. 与蓝牙协议栈内部逻辑相关的触发 四、事件处理流程 4.1. 事件接…

【Linux系统编程】——Linux操作系统的魔法桥梁:从命令行到内核的奇遇记

文章目录 Linux操作系统的概念(是什么?)设计操作系统的目的(为什么?)核心功能(怎么办?)如何理解“管理”——软硬件的管理硬件管理软件管理 系统调⽤和库函数概念系统调用(System Call)库函数&a…

VBA基础2

VBA基础2 sub过程语法对单元格进行赋值操作连续赋值不连续赋值 cells (行,列)行引用rows列引用 (columns)offset位移属性End属性(指定返回) 使用VBA编辑器需要用AltF11打开 或者VB编辑器打开 可…

支持win7系统的onnxruntime

在win7 X86系统上,使用了onnxruntime.dll库做AI识别,但是在win7上运行报0xc0000005的错误 经查,ONNX Runtime从v1.15.0版本开始不再支持Windows 7及其之前的操作系统,即便尝试重新编译源代码亦无法在这些老系统上运行,…

【服务器监控】grafana+Prometheus+node exporter详细部署文档

我们在进行测试时,不可能一直手动看着服务器的性能消耗,这时候就需要有个工具替我们监控服务器的性能消耗。这里记录下grafanaPrometheusnodeExporter的组合用于监控服务器。 简单介绍: grafana:看板工具,所有采集的…

【密码学】分组密码的工作模式

1.电码本模式(ECB) 优点: 每个数据块独立加密,可并行加密,实现简单。 缺点: 相同明文会产生相同密文,不具备数据完整保护性。 适用于短消息的加密传输 (如一个加密密钥)。 工作流程:用相同的密钥分别对…

PR时间轴

简介 时间轴记录整个项目所发生的一切,它包括视频轨道、音频轨道、字幕轨道,可以队单独的任意轨道进行编辑。 时间轴上还可以使用编辑点对素材进行简单编辑,也可以锁定轨道保证素材不会被其他操作改变。 播放指示器(指针&#x…

【RBF SBN READ】hadoop社区基于RBF的SBN READ请求流转

读写分离功能的背景及架构 当前联邦生产集群的各个子集群只有Active NameNode在工作,当读写任务变得繁忙的时候,只有一个Active负责处理的话,此时集群的响应和处理能力业务侧感知会明显下降,为此,我们将引入Observer架构,实现读写功能的分离,使得Active只负责写请求,而…

记事本建java及java命名规范

1.桌面开发:c# 2. 记事本建java: 以class的名称(类名)为名,名称.java 编译jdk:javac 名称.java 调动运行jre : java 名称 查看名称.java里面的内容:cat 名称.java java 的命名规范 大驼峰(每个单词首…

YOLOv8模型改进 第二十讲 添加三重注意力机制Triplet Attention 提升小目标/遮挡目标

本文这次分享的是三重注意力机制Triplet Attention。现在注意力机制在计算机视觉任务中被广泛研究和应用,如 Squeeze-and-Excitation Networks (SENet)、Convolutional Block Attention Module (CBAM) 等。然而,这些方法存在一些局限性,例如需…

2024年认证杯SPSSPRO杯数学建模D题(第一阶段)AI绘画带来的挑战解题全过程文档及程序

2024年认证杯SPSSPRO杯数学建模 D题 AI绘画带来的挑战 原题再现: 2023 年开年,ChatGPT 作为一款聊天型AI工具,成为了超越疫情的热门词条;而在AI的另一个分支——绘图领域,一款名为Midjourney(MJ&#xff…