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

视觉理解与图片问答,学习如何使用 GPT-4o (GPT-4 Omni) 来理解图像

🍉 CSDN 叶庭云https://yetingyun.blog.csdn.net/


一、引言

OpenAI 最新发布的 GPT-4 Omni 模型,也被称为 GPT-4o,是一个多模态 AI 模型,旨在提供更加自然和全面的人机交互体验

GPT-4o 与 GPT-4 Turbo 都具备视觉功能,这意味着模型能够处理图片并回答相关问题,为用户提供更丰富、更直观的交互体验。历史上,语言模型系统主要局限于处理文本这一单一输入模式,这在很大程度上限制了如 GPT-4 等强大模型的应用范围。之前,该模型有时被称为 GPT-4V 或在 API 中以 gpt-4-vision-preview 的形式出现。然而,请留意,当前的 Assistants API 尚不支持图片输入功能。

在用户消息中支持传递图片。模型获取图片主要有两种方式:一是通过传递图片链接,二是直接在请求中传递 Base64 编码的图片

GPT-4 Vision 官方文档:https://platform.openai.com/docs/guides/vision,指导用户如何使用 GPT-4 的视觉功能:

  • GPT-4 视觉功能:介绍了 GPT-4 模型如何理解图片,以及如何通过 API 使用这项功能。API 还能够处理多个图片输入,并根据所有图片信息来回答问题。
  • 快速开始指南:提供了如何通过链接或直接在请求中传递 Base64 编码的图片来使用模型的方法。
  • 图片细节控制:通过设置细节参数(低、高或自动),可以控制模型如何处理图片并生成文本理解。
  • 图片处理限制:列出了模型在处理图片时的一些限制,例如:目前限制图片上传大小为每张 20MB、模型能够理解图片中的对象及其关系,但不适合精确空间定位或解读专业医学图像(例如 CT 扫描图像,高分辨率病理组织切片图像),以及可能无法正确理解非拉丁字母的文本等。
  • 成本计算:解释了图片输入如何按 token 计费,以及如何根据图片大小和细节选项确定 token 成本。

总的来说,GPT-4 的图片理解功能对开发者而言极为实用,可广泛应用于食物识别以提供营养指南、社交媒体内容分析、艺术品鉴赏和科学图表解读等多个领域。


二、代码示例

安装所需的依赖库:

pip install -U openai
pip install requests==2.29.0
pip install urllib3==1.25.11

示例 1:使用图片 URL,以及英文 Prompt。

👇 测试图片如下所示,图片的链接为:https://s3.bmp.ovh/imgs/2024/06/22/88ba888d9fddda32.jpg

在这里插入图片描述

图片来源:UniST: A Prompt-Empowered Universal Model for Urban Spatio-Temporal Prediction

👇 Python 代码如下:

import base64
import requests
from openai import OpenAIclient = OpenAI(api_key="sk-your_api_key",base_url="https://api.openai.com/v1",
)prompt = "Your task is to describe the content and details of this image in detail. Then explain what this image means."
image_url = "https://s3.bmp.ovh/imgs/2024/06/22/88ba888d9fddda32.jpg"
messages_template = [{"role": "user","content": [{"type": "text", "text": prompt},{"type": "image_url", "image_url": {"url": image_url, "detail": "auto"}},],}
]
response = client.chat.completions.create(model="gpt-4o",messages=messages_template,n=1,max_tokens=1024,temperature=0,seed=42,
)
# print(response.json())
result = response.choices[0].message.content
print(result)

👇 生成结果如下:

The image is a conceptual diagram illustrating the transition from using multiple separate models to a unified model for handling diverse spatiotemporal (ST) data. Here is a detailed description of the content and its meaning:

Content Description:

  1. Left Section (Separate Models):

    • This section shows multiple neural network diagrams, each representing a separate model. These models are depicted as traditional neural networks with interconnected nodes and layers.
    • Each model is associated with an arrow pointing towards the central section, indicating that each model is designed to handle specific types of data.
  2. Central Section (Diverse ST Data):

    • This section contains various images representing different types of spatiotemporal data:
      • The first image appears to be a heatmap or density map.
      • The second image shows a map with data points or clusters.
      • The third image is a cityscape with some form of wireless communication overlay.
      • The fourth image shows bicycles, likely indicating bike-sharing data.
      • The fifth image is a map with routes or paths, possibly representing transportation networks.
      • The sixth image shows a 5G network symbol, indicating telecommunications data.
      • The seventh image depicts taxis, likely representing taxi service data.
      • The eighth image shows industrial smokestacks, indicating pollution or environmental data.
  3. Right Section (One-for-All Model):

    • This section shows a single neural network diagram labeled “UniST,” representing a unified model.
    • An arrow points from the diverse ST data to this unified model, indicating that this single model is designed to handle all types of spatiotemporal data.

Meaning:

The image illustrates the concept of moving from multiple specialized models to a single, unified model for processing diverse spatiotemporal data. Traditionally, different types of spatiotemporal data (such as traffic patterns, environmental data, telecommunications data, etc.) would require separate models, each tailored to the specific characteristics of the data. This approach can be resource-intensive and complex to manage.

The “One-for-All” model, labeled as “UniST,” represents a more efficient and streamlined approach. This unified model is designed to handle various types of spatiotemporal data within a single framework. The benefits of such a model include reduced complexity, improved scalability, and potentially better performance due to the shared learning across different data types.

In summary, the image conveys the transition from using multiple specialized models to a single, versatile model capable of handling a wide range of spatiotemporal data, thereby simplifying the modeling process and enhancing efficiency.

示例 2:本地多张图片,上传 Base64 编码的图片,以及中文 Prompt。

上传 Base64 编码的图片。若你本地有图片,无论是单张还是多张,都可以将其转换为 Base64 编码格式,然后传给模型。

多图输入:Chat Completions API 能够接收并处理多个图片输入,无论是 Base64 编码格式还是图片 URL。该模型将一同处理每张图片,并使用所有图片的信息来回答问题。

👇 测试的两张图片如下所示:

在这里插入图片描述

图片一来源:https://news.yxrb.net/2024/0621/4254.html

图片二来源:https://s3.bmp.ovh/imgs/2024/06/22/88ba888d9fddda32.jpg

👇 Python 代码如下:

import os
import base64
import requestsdef encode_image(image_path):"""对图片文件进行 Base64 编码输入:- image_path:图片的文件路径输出:- 编码后的 Base64 字符串"""# 二进制读取模式打开图片文件,with open(image_path, "rb") as image_file:# 将编码后的字节串解码为 UTF-8 字符串,以便于在文本环境中使用。return base64.b64encode(image_file.read()).decode("utf-8")# 中文 Prompt 指令
prompt = ("你的任务是详细描述图片包含的内容和细节。进而解释图片的含义。"
)
# 对本地多张图片进行 Base64 编码
images = os.listdir("./images")
images.sort()
print(images)
base64_images = [encode_image("./images/" + image) for image in images]
# 组织用户消息
user_content = [{"type": "text", "text": prompt}]
base64_images = [{"type": "image_url","image_url": {"url": f"data:image/jpeg;base64,{base64_image}","detail": "high",},}for base64_image in base64_images
]
user_content.extend(base64_images)
messages_template = [{"role": "user", "content": user_content}]
# 构造请求参数
payload = {"model": "gpt-4o","messages": messages_template,"max_tokens": 1600,"temperature": 0,"seed": 2024,
}
# OpenAI API Key
api_key = "sk-your_api_key"
# 请求头
headers = {"Content-Type": "application/json", "Authorization": f"Bearer {api_key}"}
# 发送 POST 请求
response = requests.post("https://api.chatanywhere.com.cn/v1/chat/completions",headers=headers, json=payload
)
# 打印生成结果
print(response.json())
result = response.json()["choices"][0]["message"]["content"]
print(result)

👇 生成结果如下:

图片一:游戏《王者荣耀国际服》登顶苹果商店免费游戏排行榜

内容和细节描述:
  1. 背景和主题

    • 图片的背景是橙色和白色的渐变,带有一些抽象的图案。
    • 左上角有 “Honor of Kings” 的标志,表明这是关于《王者荣耀》的内容。
  2. 主要人物形象

    • 图片左侧有一个穿着红色和白色服装的女性角色,手持长棍,姿势英姿飒爽,显得非常有力量和自信。
  3. 文字信息

    • 图片顶部有大字标题:“《王者荣耀国际服》登顶苹果商店免费游戏排行榜”。
    • 下面列出了多个国家和地区的名称,如“印尼/马来/菲律宾/柬埔寨/缅甸/老挝/新加坡/文莱/美国/加拿大/澳大利亚/新西兰/秘鲁/玻利维亚”,表明该游戏在这些地区的苹果商店中排名第一。
  4. 排行榜截图

    • 右侧有一个苹果商店排行榜的截图,显示《Honor of Kings》在免费游戏排行榜中排名第一。
    • 下面有一个 “Download on the App Store” 的按钮,提示用户可以在苹果商店下载该游戏。
图片含义:

这张图片主要是宣传《王者荣耀国际服》在多个国家和地区的苹果商店免费游戏排行榜中登顶,展示了该游戏的全球受欢迎程度和影响力。通过展示排行榜截图和游戏角色形象,吸引更多玩家下载和体验这款游戏。

图片二:UniST 模型的概念图

内容和细节描述:
  1. 左侧:Separate Models

    • 左侧有多个独立的神经网络模型图示,表示传统方法中针对不同数据集使用不同的模型。
  2. 中间:Diverse ST Data

    • 中间部分展示了多种时空数据(ST Data)的图片,包括:
      • 热力图
      • 城市夜景
      • 自行车共享系统
      • 5G 网络
      • 出租车
      • 工业排放
    • 这些图片展示了不同类型的时空数据,表明数据的多样性。
  3. 右侧:One-for-All Model

    • 右侧展示了一个统一的神经网络模型,标注为 “UniST”。
    • 这个模型整合了所有不同类型的数据,形成一个 “一体化” 的模型。
图片含义:

这张图片展示了一个名为 “UniST” 的统一模型的概念。传统方法中,不同类型的时空数据需要使用不同的模型进行处理,而 UniST 模型则能够整合多种不同类型的数据,形成一个通用的模型。这种方法可以提高模型的泛化能力和处理效率,适用于多种时空数据的分析和预测。


三、总结

总的来说,GPT-4o 在回答图片中存在什么这样的一般性问题上表现卓越。虽然它能理解图片中物体间的关联,但尚未能精确回答涉及物体具体位置的详细问题。例如,询问车辆的颜色或基于冰箱内容提供晚餐建议,GPT-4o 基本都能应对自如。然而,若展示一个房间图片并询问椅子位置,它可能无法给出准确答案。因此,在探索视觉理解应用时,务必考虑到模型的这些局限性

注意:GPT-4 虽配备视觉功能,功能强大且适用广泛,但了解其局限性同样关键。以下是模型已知的一些局限:

  • 在医学图片方面,该模型不适宜解读专业的 CT 扫描、病理组织切片等医学图像,故不宜用于医疗建议。
  • 对于非英语文本,如日语或韩语等含有非拉丁字母的图片,模型可能无法发挥最佳性能。
  • 放大图片文本以提高可读性时,需避免裁剪重要细节。
  • 模型在处理旋转或颠倒的文本 / {/} /图片时,可能产生误解。
  • 当图形或文本中的颜色、样式(如实线、虚线、点线)各异时,模型可能难以准确理解。
  • 在需要精确空间定位的任务(如棋盘位置识别)上,模型表现不佳。
  • 某些情况下,模型可能会生成错误的描述或标题。
  • 模型在处理全景和鱼眼图片时存在一定困难。
  • 模型不处理原始文件名或元数据,且在分析前会调整图片大小,可能影响其原始尺寸。
  • 对于图片中的对象计数,模型可能仅能提供大致数量(可能不准确)。
  • 出于安全考虑,OpenAI 实施了一个系统来阻止提交验证码图片。

常见问题解答

我可以微调 gpt-4 的视觉功能吗?
不能,目前不支持微调 gpt-4 的视觉功能。

我可以使用 gpt-4 来生成图片吗?
不能,但其实你可以使用 dall-e-3 来生成图片,再使用 gpt-4o 或 gpt-4-turbo 来理解图片。

我可以上传哪种类型的文件?
目前支持 PNG(.png)、JPEG(.jpeg 和 .jpg)、WEBP(.webp)和非动画 GIF(.gif)。

上传的图片大小有限制吗?
是的,目前限制图片上传大小为每张 20MB

我可以删除我上传的图片吗?
不能,OpenAI 声明会在模型处理完图片后自动为你删除。

我在哪里可以了解更多关于 GPT-4 与视觉方面的注意事项?
你可以在 GPT-4 带视觉系统卡中找到 OpenAI 的评估、准备和缓解工作的详细信息。OpenAI 进一步实施了一个系统,以阻止提交验证码图片。

带视觉功能的 GPT-4 的速率限制是如何工作的?
OpenAI 在 token 级别处理图片,所以其处理的每张图片都会计入你的每分钟 token(TPM)限制。有关用于确定每张图片 token 计数的公式的详细信息,请参见计算成本部分。

带视觉功能的 GPT-4 可以理解图片元数据吗?
不能,模型不接收图片元数据。

如果我的图片不清晰会怎么样?
如果一张图片模糊不清,模型会尽力解释它。但是,结果可能不那么准确。一个好的经验法则是,如果一个普通人在低 / {/} /高分辨率模式下看不清图片中的信息,那么模型也同样看不清。


📚️ 相关链接:

  • 「视觉版」GPT-4 Turbo 重磅升级!ChatGPT 40 条消息限制或取消

  • AI 洞察|GPT-4o 震撼登场,点燃中国大模型的创新火花

相关文章:

视觉理解与图片问答,学习如何使用 GPT-4o (GPT-4 Omni) 来理解图像

🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 一、引言 OpenAI 最新发布的 GPT-4 Omni 模型,也被称为 GPT-4o,是一个多模态 AI 模型,旨在提供更加自然和全面的人机交互体验。 GPT-4o 与 GPT-4 Turbo 都具备视觉功…...

【LocalAI】(13):LocalAI最新版本支持Stable diffusion 3,20亿参数图像更加细腻了,可以继续研究下

最新版本v2.17.1 https://github.com/mudler/LocalAI/releases Stable diffusion 3 You can use Stable diffusion 3 by installing the model in the gallery (stable-diffusion-3-medium) or by placing this YAML file in the model folder: Stable Diffusion 3 Medium 正…...

云计算【第一阶段(19)】磁盘管理与文件系统 LVM与磁盘配额(二)

目录 一、LVM概述 1.1、LVM机制的基本概念 ​编辑 1.2、LVM的管理命令 1.3、lvm存储 两种机制 1.4、lvm应用实例 二、磁盘配额概述 2.1、设置磁盘配额 2.2.1、实现磁盘限额的条件 2.2.2、linux磁盘限额的特点 2.2.3、磁盘配额管理 一、LVM概述 1.1、LVM机制的基本概…...

基于C++实现的EventLoop与事件驱动编程

一,概念介绍 事件驱动编程(Event-Driven)是一种编码范式,常被应用在图形用户界面,应用程序,服务器开发等场景。 采用事件驱动编程的代码中,通常要有事件循环,侦听事件,…...

Android高级面试_8_热修补插件化等

Android 高级面试:插件化和热修复相关 1、dex 和 class 文件结构 class 是 JVM 可以执行的文件类型,由 javac 编译生成;dex 是 DVM 执行的文件类型,由 dx 编译生成。 class 文件结构的特点: 是一种 8 位二进制字节…...

显卡GTX与RTX有什么区别?哪一个更适合玩游戏?

游戏发烧友们可能对游戏显卡并不陌生,它直接关系到游戏画面的流畅度、细腻程度和真实感。在众多显卡品牌中,英伟达的GTX和RTX系列显卡因其出色的性能而备受关注。 一、GTX与RTX的区别 架构差异 GTX系列显卡采用的是Pascal架构,这是英伟达在…...

QT自定义信号和槽函数

在QT中最重要也是必须要掌握的机制,就是信号与槽机制,在MFC上也就是类型的机制就是消息与响应函数机制 在QT中我们不仅要学会如何使用信号与槽机制,还要会自定义信号与槽函数,要自定义的原因是系统提供的信号,在一些情…...

Atcoder Beginner Contest 359

传送门 A - Count Takahashi 时间限制:2秒 内存限制:1024MB 分数:100分 问题描述 给定 N 个字符串。 第 i 个字符串 () 要么是 Takahashi 要么是 Aoki。 有多少个 i 使得 等于 Takahashi ? 限制 N 是整数。每个…...

无线通讯几种常规天线类别简介

天线对于无线模块来说至关重要,合适的天线可以优化通信网络,增加其通信的范围和可靠性。天线的选型对最后的模块通信影响很大,不合适的天线会导致通信质量下降。针对不同的市场应用,天线的材质、安置方式、性能也大不一样。下面简…...

最大团问题--回溯法

一、相关定义 给定一个无向图 ,其中 V 是图的顶点集,E图的边集 完全图:如果无向图中的任何一对顶点之间都有边,这种无向图称为完全图 完全子图:给定无向图 ,如果 ,且对应任意 且 ,则…...

MBSE之简单介绍

MBSE之简单介绍 文章目录 MBSE之简单介绍1. What is MBSE?2. MBSE 最佳实践 1. What is MBSE? Model-Based Systems Engineering (MBSE), a.k.a. Model-Based Systems Development (MBSD), is a Systems Engineering process paradigm that emphasizes t…...

基于ODPS解析字段值为JSON的情况

最近在使用ODPS数据库,其中一个字段他是用JSON存储的,但是我是需要JSON字符串中的一个属性值就行,刚好ODPS中有一个函数可以用来使用! 使用案例 select GET_JSON_OBJECT({"id":1,"name":"xiaobai"},$.name);…...

CesiumJS【Basic】- #020 加载glb/gltf文件(Primitive方式)

文章目录 加载glb/gltf文件(Primitive方式)1 目标2 代码实现3 资源文件加载glb/gltf文件(Primitive方式) 1 目标 使用Primitive方式加载glb/gltf文件 2 代码实现 import * as Cesium from "cesium";const viewer = new Cesium.Viewer...

2024黑盾杯复现赛题MISC部分

一、一个logo 一张png图片,查看颜色通道即可发现flag 二、 学会Office 最好用联想自带的excel工具查看,我用WPS打开未解出题目 这里会发现有隐藏信息 隐藏信息为宏加密 。去百度了解宏加密后,发现有俩个宏,一个加密一个解密 执…...

Linux0.12内核源码解读(5)-head.s

大家好,我是呼噜噜,好久没有更新old linux了,本文接着上一篇文章图解CPU的实模式与保护模式,继续向着操作系统内核的世界前进,一起来看看heads.s as86 与GNU as 首先我们得了解一个事实,在Linux0.12内核源…...

刷代码随想录有感(119):动态规划——打家劫舍III(树形dp)

题干&#xff1a; 代码&#xff1a; class Solution { public:vector<int>dp(TreeNode* cur){if(cur NULL)return vector<int>{0, 0};vector<int> left dp(cur -> left);vector<int> right dp(cur -> right);//偷int val1 cur -> val l…...

vivado CARRY_REMAP、CASCADE_HEIGHT

CARRY_REMAP opt_design-carry_remap选项可用于将单个carry*单元重新映射到LUT中 提高了布线的设计效果。使用-carry_remap选项时&#xff0c;仅 将单级进位链转换为LUT。CARRY_REMAP属性允许您 指定在优化过程中要转换的长度较大的进位链。 您可以使用控制任意长度的单个进位链…...

Ubuntu磁盘分区和挂载 虚拟机扩容 逻辑卷的创建和扩容保姆及教程

目录 1、VMware虚拟机Ubuntu20.04系统磁盘扩容 2、Linux的磁盘分区和挂载 3、创建逻辑卷和逻辑卷的扩容 1、VMware虚拟机Ubuntu20.04系统磁盘扩容 通过下图可以看出我们的根磁盘一共有20G的大小&#xff0c;现在我们把它扩容为30G 注&#xff1a;如果你的虚拟机有快照是无…...

【附精彩文章合辑】哈佛辍学小哥的创业经历【挑战英伟达!00 后哈佛辍学小哥研发史上最快 AI 芯片,比 H100 快 20 倍!】

前情提要 https://blog.csdn.net/weixin_42661676/article/details/140020491 哈佛辍学小哥的创业经历 一、背景与起步 这位哈佛辍学小哥&#xff0c;名为Chris Zhu&#xff0c;是一位华裔学生&#xff0c;他在2020年进入哈佛大学&#xff0c;攻读数学学士学位和计算机科学硕…...

Oracle CPU使用率过高问题处理

1.下载Process Explorer 2.打开Process Explorer&#xff0c;查看CPU使用情况最高的进程 3.双击该进程&#xff0c;查看详情 \ 4. 获取cpu使用最好的线程tid 5. 查询sql_id select sql_id from v$session where paddr in( select addr from v$process where spid in(1…...

pyqt的QWidgetList如何多选?如何按下Ctrl多选?

通过设置setSelectionMode(QAbstractItemView.MultiSelection)&#xff0c;可以实现QWidgetList的多选。 但是上述结果不太符合我们需求。设置多选模式后&#xff0c;只需鼠标点击就可以选择多个条目。 我希望按下Ctrl键时才进行多选&#xff0c;仅鼠标单击的话&#xff0c;只进…...

【电路笔记】-MOSFET放大器

MOSFET放大器 文章目录 MOSFET放大器1、概述2、电路图3、电气特性3.1 ** I D = F ( V G S ) I_D=F(V_{GS}) ID​=F(VGS​)**特性3.2 I D = F ( V D S ) I_D=F(V_{DS}) ID​=F(VDS​)特性4、MOSFET放大器5、输入和输出电压6、电压增益7、总结1、概述 在前面的文章中,我们已经…...

Ubuntu 20.04安装显卡驱动、CUDA、Pytorch(2024.06最新)

文章目录 一、安装显卡驱动1.1 查看显卡型号1.2 根据显卡型号选择驱动1.3 获取下载链接1.4 查看下载的显卡驱动安装文件1.5 更新软件列表和安装必要软件、依赖1.6 卸载原有驱动1.7 禁用默认驱动1.8 安装lightdm显示管理器1.9 停止显示服务器1.10 在文本界面中&#xff0c;禁用X…...

wpf 附加属性 RegisterAttached 内容属性

// // 摘要: // 选中时展示的元素 public static readonly DependencyProperty CheckedElementProperty DependencyProperty.RegisterAttached("CheckedElement", typeof(object), typeof(StatusSwitchElement), new PropertyMetadata((object)null…...

laravel8框架windows下安装运行

目录 1、安装前如果未安装先安装Composer 2、使用composer安装laravel8 3、使用内置服务器:8000 的命令去访问测试 ​4、使用本地环境运行phpstudy配置到public目录下 Laravel官网 Laravel 中文网 为 Web 工匠创造的 PHP 框架 安装 | 入门指南 |《Laravel 8 中文文档 8.x…...

如何快速判断IP被墙

IP被墙是指IP部分地区或者运营商无法被正常进行访问的一个情况。 被墙的原因有很多种不一一列举&#xff0c;由于被墙的时间短的为按周按月计算&#xff0c;时间长的则为按年计算&#xff0c;所以一般这种情况下只能选择更换IP。 检查办法&#xff1a; 第一&#xff0c;确认IP…...

vitest-前端单元测试

Vitest是一个轻量级、快速且功能强大的测试框架&#xff0c;特别适用于Vite项目&#xff0c;但也可以与其他前端项目&#xff08;如使用webpack构建的项目&#xff09;集成使用。Vitest提供极速的测试体验&#xff0c;并包含一系列用于编写和组织测试用例的API&#xff0c;如de…...

Redis 7.x 系列【9】数据类型之自动排重集合(Set)

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Redis 版本 7.2.5 源码地址&#xff1a;https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 前言2. 常用命令2.1 SADD2.2 SCARD2.3 SISMEMBER2.4 SREM2.5 SSCAN2.6 SDIFF2.7 SU…...

【LeetCode】每日一题:反转链表

题解思路 循环的方法需要注意prev应该是None开始&#xff0c;然后到结束的时候prev是tail&#xff0c;递归的思路很难绕过弯来&#xff0c;主要在于很难想清楚为什么可以返回尾节点&#xff0c;需要多做递归题&#xff0c;以及递归过程中&#xff0c;可以不使用尾节点来找当前…...

使用Spring Boot创建自定义Starter

使用Spring Boot创建自定义Starter 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01;今天我们将探讨如何使用Spring Boot创建自定义Starter&#xff0c;来简化项目…...

cmd设置编码为utf8

文章目录 临时设置永久设置(通过注册表) cmd命令乱码&#xff0c;解决方案比较简单。 输入chcp&#xff0c; 如果返回的是936&#xff0c;通常是GBK或CP936。 如果返回的是65001&#xff0c;表示是UTF-8。 临时设置 chcp 65001 # 设置 chcp # 查看 永久设置(通过注册表) 打…...

一次关于k8s的node节点NotReady的故障排查

master现象 分析 kubectl get nodes -A 看了下pod的状态&#xff0c;好多CrashLoopBackOff kubectl get nodes -o wide 定位到那个具体node的IP地址&#xff0c;登录对应的IP去查看为什么会这样 node节点 journalctl -xe -f -u kubelet 查看此节点的 kubelet 服务&#xff…...

Java变量与标识符

一、关键字&#xff08;Keyboard&#xff09; 定义&#xff1a;被Java语言赋予了特殊含义&#xff0c;用做专门用途的字符串&#xff08;或单词&#xff09; 特点&#xff1a;全部关键字都是小写字母 官方地址&#xff1a; https://docs.oracle.com/javase/tutorial/java/nut…...

AWS无服务器 应用程序开发—第十七章 AWS用户池案例

在AWS Cognito用户池中&#xff0c;用户属性可以根据应用程序的需求进行配置和管理。以下是一般情况下用户属性的一些常见设置&#xff1a; 必须的属性&#xff1a; 用户名&#xff08;Username&#xff09;&#xff1a;通常用作用户的唯一标识符。 密码&#xff08;Password…...

java中的枚举

第1部分&#xff1a;引言 枚举在Java中的重要性 枚举在Java中扮演着至关重要的角色&#xff0c;它不仅提高了代码的可读性和可维护性&#xff0c;还增强了类型安全。枚举的使用可以避免使用魔法数字或散列常量&#xff0c;这些在代码中通常难以理解和维护。通过枚举&#xff…...

各种开发语言运行时占用内存情况比较

随着科技的发展&#xff0c;编程语言种类繁多&#xff0c;不同的编程语言在运行时的内存占用情况各不相同。了解这些差异对于开发者选择合适的编程语言尤为重要。本文将讨论几种主流编程语言在运行时的内存占用情况&#xff0c;包括C、C、Java、Python和Go等。 1. C语言 内存…...

【基础知识10】label与input标签

label标签说明 HTML元素表示用户界面中某个元素的说明 将一个和一个元素相关联主要有这些优点&#xff1a; 标签文本不仅与其相应的文本输入元素在视觉上相关联&#xff0c;程序中也是如此。这意味着&#xff0c;当用户聚焦到这个表单输入元素时&#xff0c;屏幕阅读器可以读…...

【SDV让汽车架构“和而不同”】

昔日以“排气管数量”和“发动机动力”为骄傲的荣耀已然成为过往。在这个崭新的时代&#xff0c;特斯拉、理想、蔚来、小鹏、零跑等新兴的汽车制造商纷纷推出了搭载可交互大屏、实现万物互联、软件功能持续更新的新车型&#xff0c;它们被誉为“车轮上的智能手机”。同时&#…...

面试经验分享 | 驻场安全服务工程师面试

所面试的公司&#xff1a;某安全厂商 所在城市&#xff1a;浙江宁波 面试职位&#xff1a;驻场安全服务工程师 面试官的问题&#xff1a; 1、信息收集如何处理子域名爆破的泛解析问题&#xff1f; 泛域名解析是&#xff1a;*.域名解析到同一IP。域名解析是&#xff1a;子域…...

SpringBoot 学习笔记

文章目录 SpringBoot1 SpringBoot 的纯注解配置&#xff08;了解&#xff09;1.1 环境搭建1.1.1 jdbc配置1.1.2 mybatis配置1.1.3 transactional配置1.1.4 service配置1.1.5 springmvc配置1.1.6 servlet配置1.1.7 存在的问题 1.2 新注解说明1.2.1 Configuration1.2.2 Component…...

Android 13 为应用创建快捷方式

参考 developer.android.google.cn 创建快捷方式 来自官网的说明&#xff1a; 静态快捷方式 &#xff1a;最适合在用户与应用互动的整个生命周期内使用一致结构链接到内容的应用。由于大多数启动器一次仅显示四个快捷方式&#xff0c;因此静态快捷方式有助于以一致的方式执行…...

PTA—C语言期末复习(选择题)

1. 按照标识符的要求&#xff0c;&#xff08;A&#xff09;不能组成标识符。 A.连接符 B.下划线 C.大小写字母 D.数字字符 在大多数编程语言中&#xff0c;标识符通常由字母&#xff08;包括大写和小写&#xff09;、数字和下划线组成&#xff0c;但不能以数字开头&#xff0c…...

基于STM32的智能家用空气净化系统

目录 引言环境准备智能家用空气净化系统基础代码实现&#xff1a;实现智能家用空气净化系统 4.1 数据采集模块4.2 数据处理与分析4.3 控制系统实现4.4 用户界面与数据可视化应用场景&#xff1a;空气净化管理与优化问题解决方案与优化收尾与总结 1. 引言 智能家用空气净化系…...

计算机图形学入门18:阴影映射

1.前言 前面几篇关于光栅化的文章中介绍了如何计算物体表面的光照&#xff0c;但是着色并不会进行阴影的计算&#xff0c;阴影需要单独进行处理&#xff0c;目前最常用的阴影计算技术之一就是Shadow Mapping技术&#xff0c;也就是俗称的阴影映射技术。 2.阴影映射 Shadow Map…...

电机应用相关名词介绍

1.电机转速 定义&#xff1a;电机转速指电机工作时旋转的速度&#xff0c;是衡量电机性能的重要指标之一。 单位&#xff1a; 每分钟转数&#xff08;RPM&#xff09;&#xff1a;即Revolutions Per Minute&#xff0c;表示电机每分钟旋转的圈数。 每秒转数&#xff08;RPS…...

哈尔滨等保测评解读

哈尔滨的信息系统安全等级保护测评&#xff08;简称“等保测评”&#xff09;是中国网络安全法规的一部分&#xff0c;旨在确保关键信息基础设施和其他重要信息系统的安全。下面是对哈尔滨等保测评的解读&#xff1a; 测评目的 等保测评的主要目的是评估信息系统是否满足国家规…...

python接口自动化的脚本

使用Requests库进行GET请求 Requests是Python中最常用的HTTP库,用于发送HTTP请求。下面是一个简单的GET请求示例,用于从API获取数据。 import requests url = "https://api.example.com/data" response = requests.get(url) if response.status_code == 200:prin…...

pdf转换成cad,这几个cad转换小妙招快码住!

在数字设计领域&#xff0c;PDF&#xff08;Portable Document Format&#xff09;和CAD&#xff08;Computer-Aided Design&#xff09;文件格式各有其独特之处。PDF常用于文件共享和打印&#xff0c;而CAD则是工程师和设计师们进行精确绘图和建模的必备工具。然而&#xff0c…...

计算机组成原理——系统总线

题目:计算机使用总线结构便于增减外设,同时__C____。 A.减少了信息传送量 B.提高了信息传输速度 C.减少了信息传输线的条数 1. 总线的分类 1.1. 片内总线 芯片内部的总线 在CPU芯片内部,寄存器与寄存器之间、寄存器与逻辑单元ALU之间 1.1.1. 数据总线 双向传输总线 数…...

2024年6月大众点评广州餐饮店铺POI分析20万家

2024年6月大众点评广州餐饮店铺POI共有199175家 店铺POI点位示例&#xff1a; 店铺id k9uiFADtAvs9EdPC 店铺名称 点都德(聚福楼店) 十分制服务评分 8.6 十分制环境评分 8.3 十分制划算评分 8.5 人均价格 77 评价数量 41673 店铺地址 惠福东路470号(富临食府对面) 大…...