1.首先说明开发场景 *就是对该json格式数据传输到后台
后台实体类 import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; @Data @TableName("interview_information") public class InterviewInformationEntity { @TableId private Long id; /** * 应聘人员姓名 */ private String name; /** * 应聘人员年龄 */ private Integer age; /** * 性别 */ private Integer sex; /** * 身份证号码 */ private String idCard; /** * 邮箱 */ private String mailbox; /** * 简历网页地址 */ private String vita; /** * 应聘次数 */ private Integer numberJob; /** * 应聘结果(未应聘0,应聘通过1,应聘未通过2) */ private Byte ending; /** * 面试信息表的id(具体的面试结果评分) */ private Long InterviewResultsId; /** * 应聘岗位 */ private Long station; /** * 应聘时间 */ private Data time; } controller中的代码 @RestController @RequestMapping("
InternVL和GPT-4V都是多模态模型,但它们在性能、参数量以及应用领域上有所不同。
InternVL是一个开源的多模态模型,其参数量为60亿,覆盖了图像/视频分类、检索等关键任务,并在32个视觉-语言基准测试中展现了卓越性能[2]。InternVL通过全新的渐进式对齐策略,与大语言模型(LLM)组合构造多模态对话系统,具备ViT-22B同等强大的视觉能力[5]。此外,InternVL在视觉感知、跨模态检索、多模态对话等多个任务上实现了32项最先进的性能[6],并且在opencompass上的排名超过了各种闭源模型[8]。
GPT-4V是微软发布的一个大型模型,它在数学推理方面达到了49.9%的准确率,显著优于排名第二的模型[7][9][10]。GPT-4V在多模态医疗诊断领域的性能也得到了评估,尽管离临床应用与实际决策还有距离[12]。此外,GPT-4V在自动驾驶技术的新视野中开辟了新的可能性,展现了其在场景理解、因果推理和实时决策制定方面的能力[22]。
从性能对比来看,InternVL和GPT-4V各有优势。InternVL以其开源特性、较大的参数量和在多个视觉-语言基准测试中的卓越性能脱颖而出[2][5][6]。而GPT-4V则在特定领域如数学推理和自动驾驶技术中展现了其强大的能力[7][9][10]。因此,两者之间的性能对比取决于具体的应用场景和需求。如果用户需要一个强大的多模态模型用于广泛的视觉-语言任务,InternVL可能是更好的选择[2][5][6]。而对于需要在特定领域内进行深入研究或应用的用户,GPT-4V可能提供更专业的支持[7][9][10]。
InternVL模型的具体技术架构和渐进式对齐策略是如何实现的? InternVL模型通过其具体技术架构和渐进式对齐策略实现了在互联网级别数据上视觉大模型与语言大模型的精细对齐。具体来说,InternVL模型的视觉编码器参数量达到了60亿(InternVL-6B),这一设计使得模型能够处理复杂图片中的细微视觉信息并完成图生文任务[24]。该模型首次提出了对比-生成融合的渐进式对齐技术,这种技术有效地实现了视觉大模型与语言大模型之间的精准匹配[26]。
渐进式对齐策略的具体实现方式是通过一种训练策略逐步进行的。这个过程从大规模嘈杂数据上的对比学习开始,逐渐过渡到精致和高质量数据上的生成学习[25]。InternVL的训练分为三个递进阶段:视觉语言对比训练、视觉语言生成训练和监督微调。这些阶段有效地利用了来自不同来源的公共数据,从网络上嘈杂的图像文本对到高质量的标题、VQA和多模态对话数据集[28]。这种分阶段的训练方法不仅提高了模型的性能,也增强了其在各种视觉任务中的应用能力,如纯视觉感知、图文检索、图文生成、图文多模态生成和对话等[33]。
此外,InternVL模型还通过将ViT模型扩展到60亿参数并与语言模型对齐,构建出目前最大的14B开源视觉基础模型。这表明InternVL模型在视觉感知、跨模态检索、多模态对话等广泛任务中具有强大的能力[29]。通过这种设计,InternVL模型不仅推动了视觉与视觉语言基础模型的发展与应用,还实现了视觉感知任务的最新性能、多模式对话系统的构建和与大型语言模型的链接[30]。
GPT-4V在多模态医疗诊断领域的应用案例有哪些? GPT-4V在多模态医疗诊断领域的应用案例主要包括以下几个方面:
医学影像分析:GPT-4V能够对医学影像进行准确的识别和分析,包括成像模态、成像位置和成像轴面的识别。它能够判断出是MRI、CT等不同类型的医学影像,并指出拍摄部位(如胸部或头部)以及拍摄的轴面(如横断面或矢状面)[39]。医学诊断和治疗:GPT-4V在医学诊断和治疗方面的应用体现在其能够提供临床决策支持。例如,在USMLE(美国医学执照考试)中,GPT-4V的表现超过了其他两个先进的大型语言模型(LLMs),显示出其在临床决策支持方面的潜力[37]。医学大数据分析:GPT-4V的应用还扩展到了医学大数据分析领域,尽管具体的案例细节未在证据中提及,但可以推断,其在处理和分析大量医学数据方面具有潜在的能力[34]。医学报告生成:GPT-4V能够基于病理图像生成结构化且详细的报告,描述图像特征。这表明它不仅能够理解和分析医学影像,还能将这些信息转化为易于理解的报告,为医生提供辅助诊断的信息[43]。医学视觉问答(VQA)和视觉定位(Visual Grounding):GPT-4V在医学视觉问答和视觉定位方面的应用,通过生成放射学报告、进行医学视觉问答和视觉定位展示了其在处理和理解医学影像方面的多模态能力[35][36]。临床相关性确认:在具体的病例分析中,GPT-4V能够针对提供的图像提出相关建议,例如,在一个迷走神经刺激器的X射线VQA示例中,GPT-4V能够指出未检测到急性心肺异常,并建议考虑临床相关性进一步确认[41]。 GPT-4V在多模态医疗诊断领域的应用案例涵盖了从医学影像分析、医学诊断和治疗、医学大数据分析到医学报告生成等多个方面,展现了其在医疗领域内的广泛应用潜力。
InternVL与GPT-4V在图像/视频分类和检索任务上的性能对比数据是什么? InternVL和GPT-4V在图像/视频分类和检索任务上的性能对比数据如下:
GPT-4V在SSV1数据集上的性能表现不佳,其top-1准确率仅为4.6%,与clip基线一致[44]。这表明GPT-4V在特定的视觉识别任务上存在明显的性能瓶颈。InternVL被描述为能够广泛应用于视觉感知任务(例如图像级或像素级识别)、视觉语言任务(例如零样本图像/视频分类、零样本图像)并实现最先进的性能/视频文本检索[46]。此外,InternVL在零样本图像分类和图像-文本检索等对比任务中表现出色[49]。在另一项研究中,InternVL相比于最先进的clip模型,在分类准确率上取得了平均1.8%的提升[47]。这表明InternVL在图像分类任务上具有较强的性能。GPT-4V支持多个图像作为输入,因此可以应用于视频中跨帧的关联视觉对象[48]。这表明GPT-4V在处理多图像输入方面具有一定的能力,但具体的性能数据未在证据中给出。 InternVL在图像/视频分类和检索任务上表现优于GPT-4V,尤其是在零样本图像分类和图像-文本检索任务上。GPT-4V虽然在处理多图像输入方面显示出一定的能力,但在特定的视觉识别任务上存在性能瓶颈。因此,如果考虑将这些技术应用于实际的图像/视频分类和检索任务,InternVL可能是更优的选择。
GPT-4V在自动驾驶技术中的具体应用场景和效果评估报告。 GPT-4V在自动驾驶技术中的具体应用场景和效果评估报告主要集中在几个方面:情景理解、意图识别、驾驶决策以及处理分布外(OOD)情况的能力。
情景理解:GPT-4V展现出了卓越的情景理解能力,这包括了对驾驶时的天气和光照条件的识别,不同国家的交通信号灯和标志的识别,以及不同类型摄像头拍摄的内容的理解[55]。这种能力使得GPT-4V能够准确评估周围环境,为自动驾驶车辆提供必要的信息。意图识别:GPT-4V在识别交通参与者的意图方面表现出色。它能够利用多视角图像和时间照片实现对环境的完整感知,准确识别交通参与者之间的动态互动,并推断出这些行为背后的潜在动机[58]。这一点对于确保自动驾驶车辆的安全行驶至关重要。驾驶决策:在驾驶决策方面,GPT-4V展现了超越现有自动驾驶系统的潜力。它不仅能够在corner case中利用其先进的理解能力来处理分布外的情况,还能做出明智的驾驶决策[51][60]。这意味着GPT-4V能够在复杂和不确定的驾驶环境中保持高度的安全性和可靠性。处理分布外(OOD)情况的能力:GPT-4V特别强调了其在处理分布外情况方面的能力。这表明GPT-4V不仅能够应对常规的驾驶场景,还能够适应那些未见过或罕见的情况,从而大大增强了自动驾驶系统的鲁棒性和适应性[58]。 GPT-4V在自动驾驶技术中的应用展现了其在情景理解、意图识别、驾驶决策以及处理分布外情况方面的强大能力。这些能力使得GPT-4V成为推动自动驾驶技术发展的重要力量,有望在未来实现更安全、更智能的自动驾驶解决方案。
InternVL开源模型的社区反馈和实际使用情况如何? InternVL开源模型在社区中的反馈和实际使用情况显示了其在多模态大模型领域的应用和发展。首先,从性能角度来看,InternVL被列为增强大型视觉语言模型性能的著名示例之一,这表明它在技术上具有一定的先进性和实用性[63]。此外,InternVL在与EVA-CLIP-18B模型的比较中,实现了平均1.8%的分类准确率提升,这一数据进一步证明了InternVL在实际应用中的有效性和优越性[64]。
然而,也有证据显示InternVL在某些方面存在不足。例如,在真实视障场景测试集VizWiz中,XVERSE-V的表现超过了InternVL-Chat-V1,这可能意味着InternVL在特定应用场景下的表现不是最优的[62]。尽管如此,这种比较并不足以全面否定InternVL的整体表现和价值,因为每个模型都有其特定的优势和局限性。
InternVL开源模型在社区中的反馈和实际使用情况总体上是积极的,它被认为是增强大型视觉语言模型性能的有效工具之一。尽管存在一些局限性,但这些局限性并不影响其在多模态大模型领域的应用价值和发展潜力。
参考资料 1. Gpt-4v (20240409) 测试报告 - 知乎 - 知乎专栏 [2024-04-25]
2. InternVL:开源版GPT4V - 沸点 - 稀土掘金 [2024-04-27]
3. 如何评价GPT-4V(ision)? - 知乎
4. GPT-4V被超越?SEED-Bench多模态大模型测评基准更新 - TechBeat [2023-12-12]
5. InternVL:开源社区最强的多模态大模型 - 知乎专栏
6. 项目详情| SOTA!模型社区 [2023-12-27]
7. GPT-4V数学推理如何?微软发布MathVista基准,评测报告长达112页 [2023-11-14]
8. InternVL V1.5当前最强开源多模态大模型 - 知乎 - 知乎专栏 [2024-04-18]
Kafka作为一个分布式流处理平台,在大数据处理和实时数据流应用中扮演着至关重要的角色。管理Kafka的topics及其offsets对于维护系统稳定性和数据一致性至关重要。Offset Explorer是一个强大的桌面应用程序,它使得管理和监控Kafka集群变得简单直观。本文将引导您如何下载、安装并使用Offset Explorer 3.0来探索Kafka的世界,包括连接Kafka集群、查看主题、消息以及如何新建主题和添加消息。
1. 下载与安装 下载链接 Offset Explorer 3.0 (推荐): 点击下载Offset Explorer 2.3.5: 点击下载 安装步骤 从上述链接中选择合适的版本下载安装包。双击下载的.exe文件,按照安装向导的指示完成安装过程。安装完成后,桌面上会出现Offset Explorer的快捷方式。 2. 连接Kafka集群 启动Offset Explorer后,首先需要配置连接到您的Kafka集群:
打开File菜单,选择New Connection...或直接点击界面中的+按钮。在弹出的对话框中输入Kafka集群的相关信息,包括: Name: 给这个连接起一个易于识别的名字。Bootstrap Servers: Kafka集群的地址,格式如 host1:port1,host2:port2。Security Settings: 如有安全设置(如SASL认证),在此处配置。 点击Test Connection测试是否成功连接,无误后点击Save保存连接配置。
3. 查看主题 成功连接后,Kafka的所有主题将会显示在左侧导航栏:
点击任一主题,右侧会列出该主题的所有分区及每个分区的offset信息。可以通过搜索框快速查找特定主题。
4. 查看消息 要查看某个主题的消息内容:
在左侧选择想要查看的主题。
5. 新建主题 Offset Explorer也支持创建新的Kafka主题:
6. 添加消息 目前,Offset Explorer主要用于查看和管理offset,直接在界面中添加消息的功能并不直接提供。但您可以使用Kafka的命令行工具kafka-console-producer.sh或集成的生产者工具(如许多开发环境中的生产者示例)来发送消息至指定主题。
使用命令行发送消息示例: kafka-console-producer.sh --broker-list localhost:9092 --topic your_topic_name 然后在出现的命令行界面中直接输入消息内容并回车即可发送。
通过以上步骤,您已经掌握了使用Offset Explorer进行Kafka集群的基本管理和消息查看操作。无论是监控offset状态还是进行基础的集群维护,Offset Explorer都是一个非常实用的工具。
flink反压(backpressure),简单来说就是当接收方的接收速率低于发送方的发送速率,这时如果不做处理就会导致接收方的数据积压越来越多直到内存溢出,所以此时需要一个机制来根据接收方的状态反过来限制发送方的发送速率,来达到一个两者速率匹配的状态。
TCP-based 反压 在flink1.5之前的版本,使用的是TCP-based 的反压机制,不过这种机制缺点明显。
(1)在一个 TaskManager 中可能要执行多个 Task,如果多个 Task 的数据最终都要传输到下游的同一个 TaskManager 就会复用同一个 Socket 进行传输,这个时候如果单个 Task 产生反压,就会导致复用的 Socket 阻塞,其余的 Task 也无法使用传输,checkpoint barrier 也无法发出导致下游执行 checkpoint 的延迟增大。(2)依赖最底层的 TCP 去做流控,会导致反压传播路径太长,导致生效的延迟比较大。
所以这里不再介绍TCP-based 的反压机制。
在flink1.5以后引入了Credit-based 反压,可以理解为就是在 Flink 层面实现类似 TCP 流控的反压机制来解决上述的弊端,Credit 可以类比为 TCP 的 Window 机制。
Credit-based 反压 在 Flink 层面实现反压机制,通过 ResultPartition 和 InputGate 传输 feedback 。Credit-base 的 feedback 步骤:(1)每一次 ResultPartition 向 InputGate 发送数据的时候,都会发送一个 backlog size 告诉下游准备发送多少消息,下游就会去计算有多少的 Buffer 去接收消息。(backlog 的作用是为了让消费端感知到我们生产端的情况)(2)如果下游有充足的 Buffer ,就会返还给上游 Credit (表示剩余 buffer 数量),告知发送消息(图上两个虚线是还是采用 Netty 和 Socket 进行通信)。下面用图来解释:
什么是组件?
在Vue中,组件是可复用的Vue实例,每个组件都可以拥有自己的模板、脚本和样式。通过组件化,我们可以将页面拆分为多个独立的、可复用的部分,使得代码更易于维护和扩展。
创建组件
在Vue 2中,我们可以使用Vue.component()方法来创建全局组件,也可以使用Vue实例中的components选项来注册局部组件。例如:
// 全局组件 Vue.component('my-component', { // 组件选项 }); // 局部组件 new Vue({ el: '#app', components: { 'my-component': { // 组件选项 } } }); 组件通信
1.Props(属性):
Props 是父组件向子组件传递数据的一种方式。父组件可以通过在子组件上使用属性的方式传递数据,子组件可以在props选项中声明接收这些数据。例如: <!-- 父组件 --> <template> <ChildComponent message="Hello from parent"></ChildComponent> </template> <!-- 子组件 --> <script> export default { props: ['message'], mounted() { console.log(this.message); } } </script> 2.emit(事件)∗∗:emit是子组件向父组件传递消息的一种方式。子组件可以通过$emit方法触发一个自定义事件,并且可以携带数据。父组件可以监听这个事件,并且接收携带的数据。例如:
<!-- 子组件 --> <template> <button @click="sendMessage">Send Message</button> </template> <script> export default { methods: { sendMessage() { this.
往期文章:
大数据 - Doris系列《一》- Doris简介_doris详细介绍-CSDN博客
大数据 - Doris系列《二》- Doris安装(亲测成功版)_java8 please set vm.max_map_count to be 2000000 un-CSDN博客
大数据 - Doris系列《三》- 数据表设计之表的基本概念_doris 一张表最多字段-CSDN博客
目录
4.1.1条件函数
4.1.1.1 if函数
4.1.1.2 ifnull,nvl,coalesce,nullif函数
4.1.1.3 case
4.1.1.4 练习题
4.1.2聚合函数
4.1.2.1 min,max,sum,avg,count
4.1.2.2 min_by和max_by
🥙4.1.2.3 group_concat
4.1.2.4 collect_list,collect_set (1.2版本上线)
4.1.3 字符串函数
4.1.3.1 length,lower,upper,reverse
4.1.3.2 lpad,rpad
4.1.3.3 concat,concat_ws
4.1.3.4 substr
4.1.3.5 ends_with,starts_with
4.1.3.6 trim,ltrim,rtrim
4.1.3.7 null_or_empty,not_null_or_empty
4.1.3.8 replace
4.1.3.9 split_part
4.1.3.10 money_format
4.1.1条件函数 4.1.1.1 if函数 语法示例:
if(boolean condition, type valueTrue, type valueFalseOrNull) --如果表达式 condition 成立,返回结果 valueTrue;否则,返回结果 valueFalseOrNull --返回值类型:valueTrue 表达式结果的类型 示例:
HEAD是一个活动指针,指向的是正在活跃的分支。
【在当前HEAD指针指向的位置创建分支】
git branch b1 查看.git\refs\heads目录:
【继续使用master分支开发】
echo '444' > aaa.txt git commit -m '444' ./ Adminstrator@LAPTOP-OC90J78H MINGW64 ~/Desktop/workspace (master) $ git log --oneline 2920850 (HEAD -> master) 444 57a8f94 (b1) 333 3ac4fa8 222 afb705d 111 1.2.2 指定提交对象创建分支 【指定提交对象来创建分支】
Adminstrator@LAPTOP-OC90J78H MINGW64 ~/Desktop/workspace (master) $ git branch b2 3ac4fa8 # 根据指定的提交对象来创建分支 Adminstrator@LAPTOP-OC90J78H MINGW64 ~/Desktop/workspace (master) $ git log --oneline 2920850 (HEAD -> master) 444 57a8f94 (b1) 333 3ac4fa8 (b2) 222 afb705d 111 Adminstrator@LAPTOP-OC90J78H MINGW64 ~/Desktop/workspace (master) $ cat .
前提:本文是使用阿里云的人工智能PAI平台的交互式建模(DSW)来进行的如下操作
安装LLaMA-Factory # 克隆项目 git clone https://github.com/hiyouga/LLaMA-Factory.git # 安装项目依赖 cd LLaMA-Factory pip install -r requirements.txt pip install transformers_stream_generator bitsandbytes tiktoken auto-gptq optimum autoawq pip install --upgrade tensorflow pip uninstall flash-attn -y # 运行 CUDA_VISIBLE_DEVICES=0 python src/train_web.py 注意:如果启动后的界面显示error,则需要下载模型展示工具:
pip install "gradio>=3.38.0,<4.0.0" 启动成功后的界面:
训练集配置 自定义训练集
# 自定义数据集 [ { "instruction": "用户指令(必填)", "input": "用户输入(选填)", "output": "模型回答(必填)", "system": "系统提示词(选填)", "history": [ ["第一轮指令(选填)", "第一轮回答(选填)"], ["第二轮指令(选填)", "第二轮回答(选填)"] ] } ] 将自定义训练集放到LLaMA-Factory的data目录下,并在dataset_info.json文件中加入文件的SHA1值:
生成SHA1值:
Get-FileHash -Path "C:\path\to\your\file.ext" -Algorithm SHA1 最后就可以在界面上看见自定义的数据集
阿里大语言模型通义千问API使用新手教程 最近需要用到大模型,了解到目前国产大模型中,阿里的通义千问有比较详细的SDK文档可进行二次开发,目前通义千问的API文档其实是可以进行精简然后学习的,也就是说,是可以通过简单的API调用在自己网页或者软件中接入一个大语言模型,但是似乎并没有人愿意花费时间经历写一个新手友好的教程,为此处于对知识的梳理,和对技术的热爱,我尽我的最大的努力来做这件事,如果帮到了各位同学,或者老师们,可以点赞或者关注支持一下,后续更新基于本地知识库的详细教程。如果有什么写的不对的或者可以补充完善的,欢迎交流。
系列文章:
1.调用阿里通义千问大语言模型API-小白新手教程-python
2.LangChain结合通义千问的自建知识库
3.使用LangChain结合通义千问API基于自建知识库的多轮对话和流式输出
4.解决LangChain构建知识向量库的过程中官方API无法自定义文本切割方式的问题-例如按行切分
5.通义千问本地部署教程Qwen-7B-Chat Qwen1.5-1.8B Windows-详细认真版
对于有基础的开发技术人员请直接根据目录跳到代码部分综合查看官方文档和代码即可对于想充实自己毕业设计或者软件但对自然语言处理技术并不是非常了解的同学,把每一个代码运行一遍即可,切记不要纠结专业术语如果是做相关应用的研究生,请按顺序阅读,思考数据格式,有助于思维的培养 文章目录 阿里大语言模型通义千问API使用新手教程1.通义千问模型介绍 2024.4.26 更新 模型的API-KEY收费了2.通义千问API-KEY申请3.安装DashScope SDK4.API-KEY设置4.1 方式1 可以直接在命令台设置环境变量4.2 方式2 在系统环境变量里直接设置4.3 方式3 通过代码设置4.4 方式经验总结 5. 使用通义千问API进行Token切分6. 使用通义千问的API进行对话6.1 通过messages 进行对话 开发推荐6.2 通过prompt进行对话 新手推荐6.3 多轮对话6.4 流式输出 7.通过控制台输入实现多轮对话-非流式输出8.通过控制台输入实现多轮对话-流式输出9.参考文档链接总结资源绑定 1.通义千问模型介绍 通义千问是阿里云开发的大语言模型(Large language Model )LLM,旨在提供广泛的知识和普适性,可以理解和回答各领域中的问题,其包含网页版和手机版本的通义前文APP,网页使用的模型为不公开的最新版本。
其网页使用版本地址:https://tongyi.aliyun.com/qianwen/
官网文档地址:https://help.aliyun.com/zh/dashscope/developer-reference/
在其官方文档中主要开源了五种可以使用的模型其开源模型的简介和参数如下:
2024.4.26 更新 模型的API-KEY收费了 我之前用的Max 然后用着用着账户就欠费了 ,然后整个账户的API-Key就都不能用了,后来在控制台部分消息,和手机短信发现是有短信提示,但是我一直没注意,没想到这个事情,大家之前用免费KEY的要注意一下
(旧)
非限时免费开放模型,有使用Token数量的限制
2.通义千问API-KEY申请 官方流程网址指导:https://help.aliyun.com/zh/dashscope/developer-reference/activate-dashscope-and-create-an-api-key
其主要流程如下,具体请参考官网步骤
开通DashScope灵积模型服务 创建API-KEY 根据官网流程获得一个API-Key
3.安装DashScope SDK DashScope 目前支持Python 和 Java 的 SDK
安装SDK的官网教程网址:https://help.aliyun.com/zh/dashscope/developer-reference/install-dashscope-sdk
✨ 1: AI Photo Filter Stylar AI是一款功能强大的AI图像编辑与设计工具,提供无与伦比的图片组合和风格控制。
AI Photo Filter,简言之,就是使用人工智能技术来改善或改变图片的风格、质量和元素组合的一种工具。
如果你想将你的照片转换成某种特定风格,比如油画风、复古风或漫画风,AI Photo Filter能够通过预定义的风格选项轻松实现,无需复杂的风格提示。
目前生成一张图需要1个点,每天自动给200个点,也算是比较多了。
无论你是专业设计师还是设计爱好者,AI Photo Filter像Stylar这样的工具都能在多种场合下帮助你轻松实现高质量的设计作品,提高创作效率,且操作简便,让设计工作变得更加愉快和富有创造性。
地址:https://www.stylar.ai/tools/ai-photo-filter
✨ 2: InternVL InternVL:GPT-4V开源替代方案
InternVL 1.5:开源多模态LLM, 最高支持解读4K图片,有OCR能力,中文能力优秀,目前最接近 GPT-4V 表现的可商用开源模型。
在线体验地址:https://huggingface.co/spaces/OpenGVLab/InternVL
InternVL是一个先进的、开源的多模态模型,旨在缩小与商业多模态模型(如GPT-4V)之间的性能差距。它通过扩展视觉变换器(ViT)到6B参数的规模,并将其与大型语言模型(LLM)对齐,来提升在各种视觉语言任务中的性能。
InternVL通过提供可比拟商业模型的性能,以开源形式推动了多模态人工智能的发展。无论是在学术研究中寻求最新技术、开发具有视觉理解能力的应用程序,还是探索新的人机交互方式,InternVL都提供了一个强有力的工具。随着其持续的迭代和社区的贡献,InternVL有望在多模态人工智能领域扮演更加重要的角色。
地址:https://github.com/opengvlab/internvl
✨ 3: stable-diffusion.cpp 纯C/C++实现的库,用于生成图像Stable Diffusion模型
stable-diffusion.cpp stable-diffusion.cpp是一个纯C/C++实现的库,用于推断(即生成图像)Stable Diffusion模型。它是基于ggml构建的,工作方式类似于llama.cpp。这个库能够在不需要外部依赖的前提下,直接运行Stable Diffusion,包括支持SD1.x, SD2.x 和 SDXL等不同版本的模型。这使得它非常轻量,适合在各种不同的平台(包括Linux、Mac OS、Windows和Android)上使用。
stable-diffusion.cpp为运行Stable Diffusion提供了一个高效、轻量级、无需Python环境的解决方案,特别适合于需要在不同平台或资源受限的环境下进行图像生成的应用场景。
地址:https://github.com/leejet/stable-diffusion.cpp
✨ 4: Chat with the Streamlit docs 基于Streamlit开发的聊天机器人应用
Chat with the Streamlit docs 是一个基于Streamlit开发的聊天机器人应用,它利用LlamaIndex技术和GPT 3.5模型,通过索引和调用Streamlit官方文档内容来回答用户关于Streamlit的查询。这个功能在你需要快速获取Streamlit库相关问题的解答时非常有用,尤其是当你在开发中遇到疑惑,或者想了解Streamlit特定功能的详细信息时。
地址:https://github.com/carolinedlu/llamaindex-chat-with-streamlit-docs
✨ 5: LLaVA++ 通过整合 LLaMA-3 和 Phi-3,来扩展现有的视觉能力和语言模型的功能
AI agent是AI与具体应用场景结合落地的一种方式,大模型需要agent来实现功能的扩展。
为什么需要AI agent 要想弄明白什么是AI agent,那么就要先弄明白什么是LLM(大模型)。
所谓的大模型就是实现AI(人工智能)的一种方式,但大模型本身没有实体,虽然经过大量是数据训练之后,其具备了一定的智能。
但是它就像人类的大脑一样,虽然你有了一个想法,但是怎么把这个想法具体的落地,也就是怎么把这个想法给做出来。
虽然说,现在的大模型可以生成一些文本,图片和视频;但这些功能毕竟是有限的,但AI的目标是为各行各业进行赋能。
比如,大模型虽然可以写一些简单的代码,但怎么让它独自完成整个系统的开发流程,从需求采集,产品设计,再到代码实现,以及测试上线整个流程的实现,目前大模型本身是没有这个能力的。
所以,这时就需要有个东西来帮助大模型把它的“想法”实现;而这就是AI agent。
AI agent AI agent 本质上是一个构建在LLM(大模型)之上的智能应用,也就是说AI agent是大模型的上层应用。如果说把AI比做一个人,那么大模型就是这个人的大脑,虽然它拥有了智能,但其却没有能够真正做事的实体。而AI agent就相当于人的手脚眼睛和嘴巴,以及各种人类能够利用的工具。
由上图可见,Agent由记忆,规划,工具,行动,四大模块组成。
记忆
记忆就类似于人类大脑的记忆功能,AI需要知道一件事怎么做,做的过程是什么样的,这就需要记忆功能。因为很多事情需要经过复杂的执行,复盘,再执行,再复盘才能成功。
记忆分为短期记忆和长期记忆,短期记忆就是上下文,长期记忆可以使用向量数据库。
规划
所谓的规划,主要由两部分组成,其一是思维链,其二就是目标分解。
因为现实中很多问题都需要经过复杂的流程去处理,所以做一件事之前需要先做个大体规划,这就是思维链;其次,就是要把整体目标进行分解成多个小目标或步骤;然后一步一步的执行。
就像做饭一样,首先要想好做什么菜,然后需要哪些食材,工具和材料;之后,还需要拆分,第一道菜是什么,第二道菜是什么;然后每道菜第一步怎么做,第二步怎么做。
工具和行动
所谓的工具就是,大模型本身只有思想,在处理不同的事情时,需要不同的工具;就像人一样,人想做饭的时候需要锅碗瓢盆,种地的时候需要镰刀铁锹,开发软件的时候需要开发工具,测试工具,服务器等。
而行动就是,把一件事情规划好之后,工具准备好之后,就可以去执行了;毕竟规划和工具只属于准备阶段,执行才是真正的落实阶段。
所以,Agent就有了下面的公式:
Agent = LLM(大模型) + 记忆 + 感知&反思 + 规划+ 工具使用
所以,Agent是基于LLM的加强,其具备规划和拆分目标的能力,并且根据执行结果进行自我优化和调整;因此,也有人认为Agent是实现AGI(通用人工智能)的一种方式。
总结
总结来说,大模型和Agent都属于实现人工智能的一种技术实现方式;AI是一个人,那么大模型就是这个人的大脑,Agent就是大脑指挥做事的工具集。
下面是本人公众号,分享关于AI技术及其应用场景,喜欢的朋友可以扫码关注。
一. 前言 以下代码只可用于私服,不可商用,代码完全开源,这个应该cf系列第四篇了,目前已经写了ai瞄准,罗技鼠标宏,这篇功能相比前俩个更简单一些,因为代码不多所以就不写类与功能函数了,直接直捣黄龙,我还写了一些辅助脚本,可以用来获取鼠标当前坐标和颜色的,改新的分辨率可以用得上
所需准备:罗技驱动的.dll文件与之对应的罗技驱动版本,链接我放下面了
链接:https://pan.baidu.com/s/1IzudyR8E_uvcmi7zuXSOAg?pwd=6666 提取码:6666
注意事项:这里游戏内分辨率必须是1280*720,我的位置坐标参数就是根据这个分辨率调整的
二. 代码 2.1 驱动代码 这部分代码主要就是调用.dll文件,用里面封装好的方法,比如移动鼠标,点击鼠标,键盘等等,主要实现的功能就是进行射击操作,也就是自动鼠标点击左键
import ctypes import os try: # 获取当前绝对路径 root = os.path.abspath(os.path.dirname(__file__)) driver = ctypes.CDLL(f'{root}/logitech.driver.dll') ok = driver.device_open() == 1 # 该驱动每个进程可打开一个实例 if not ok: print('错误, GHUB驱动没有找到') except FileNotFoundError: print(f'错误, DLL 文件没有找到') class Logitech: class mouse: """ code: 1:左键, 2:中键, 3:右键 """ @staticmethod def press(code): if not ok: return driver.mouse_down(code) @staticmethod def release(code): if not ok: return driver.mouse_up(code) @staticmethod def click(code): if not ok: return driver.
1.HUE工具介绍使用 HUE是CDH提供一个hive和hdfs的操作工具,在hue中编写了hiveSQl也可以操作hdfs的文件
http://主机名字:端口号 hdfs的web访问端口
http://主机名字:端口号 hdfs的程序访问端口
进入后确保hdfs hive yarn 开启 在点击hue开启
在这里面也可以进行hive的sql操作,但是不太建议,依旧还是使用datagrip进行操作
2.数仓介绍 数据仓库是由一整套体系构成,包含数据采集,数据存储,数据计算,数据展示等
数据仓库主要作用对过往的历史数据进行分析处理,为公司决策停供数据支撑。
2-1 数仓特征 面向主题
集成性
非易失性
时变性
2-2 OLTP和OLAP OLTP(On-Line Transaction Processing)即联机事务处理,也称为面向交易的处理过程,
OLAP(On-Line Analytical Processing)即联机分析处理,有时也称为决策支持系统(DSS)
2-3 ETL ETL(Extra, Transfer, Load)包括数据抽取、数据转换、数据导入三个过程。
3.主题和主题域 主题 是对数据进行归类,每个分类是一个主题
主题域 根据分析的领域,将联系较为紧密的数据主题的集合在一起
主题域下面可以有多个主题,主题还可以划分成更多的子主题,主题和主题之间的建设可能会有交叉现象
3-2 主题域的划分 按照系统划分
生产系统 生产主题域
商品原材料库存核销数据 商品主题
订单主题
财务系统
商品原材料库存核销数据 商品主题
销售主题
人力系统
按照部门划分
人力部门 人力主题域
员工主题 员工数据
招聘主题 招聘数据
生产部门
销售部门
后勤部门
按照业务划分
门店零售业务
批发业务
团购业务
按照行业经验
银行证券业
报错显示全文:Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Failed to apply plugin 'com.android.internal.application'. 报错原因一:Gradle配置遇到了问题,特别是与Android插件的应用有关
解决方法一:在全项目的gradle.properties内部写入android.overridePathCheck=true
android.overridePathCheck=true:是一种绕过Android Gradle插件默认路径检查的方式。这个属性主要用于解决某些特定情况下因项目路径过长或包含特殊字符而导致的构建失败问题。当启用此选项时,Android Gradle插件将不会验证项目路径是否超过了操作系统或工具的路径长度限制,这可能会使构建过程在某些环境中得以继续
提示词工程基础🚀 在了解完了大语模型的基本知识,例如API的使用多轮对话,流式输出,微调,知识向量库等知识之后,接下来需要进一步补足的一个大块就是提示词工程,学习和了解提示词工程除了基本的提示词类型之外,不同的大模型对于提示词工程润色之后的提示词的反应如何,也是比较值得关注的一点,因此本文使用文心一言4.0,通义千问,ChatGPT4, Claude3,四种模型来实验一下各类的提示词。
文章目录 提示词工程基础🚀1.什么是提示词工程2.提示词要素3.提示词的通用技巧3.1 在提示词中明确指令3.1.1 输入基础和改进之后的提示词模型的输出3.1.2 结果对比分析 3.2 具体描述输出所要的格式3.2.1 输入基础和改进之后的提示词模型的输出3.2.2 结果对比分析 3.3精确描述想要的内容不要概括3.3.1 输入基础和改进之后的提示词模型的输出3.3.2 结果对比分析 3.4 以鼓励的方式向大模型提问3.4.1 输入基础和改进之后的提示词模型的输出3.4.2 结果对比分析 4.整体结果分析结束 https://www.promptingguide.ai/zh
首先分享一个网站这是我在谷歌上搜索到的,一个非常好的提示词学习网站,不但由简单到难的总结了提示词工程中的各种概念要素和提示词的各类技术,后面还包括了一些工具,笔记,还有一些提示词领域的优秀的论文,并不断的对论文进行更新,根据这个网站的逻辑,这篇文章首先测试一下其中的通用提示词技巧,最如果有什么错误或者不完善的非常欢迎沟通交流。
1.什么是提示词工程 这里先引用上面的提示词指南中对提示词工程的介绍:
提示工程(Prompt Engineering)是一门较新的学科,关注提示词开发和优化,帮助用户将大语言模型(Large Language Model, LLM)用于各场景和研究领域。 掌握了提示工程相关技能将有助于用户更好地了解大型语言模型的能力和局限性。
我个人的感觉的话就是针对不同类型的问题然后找出一些通用的提示结构从而让回答的正确率和质量更高。
2.提示词要素 这里我认为提示词指南网站里的解释非常好,我就直接给粘过来,然后补充点自己的理解。
提示词的四要素:
指令:想要模型执行的特定任务或指令。
上下文:包含外部信息或额外的上下文信息,引导语言模型更好地响应。
输入数据:用户输入的内容或问题。
输出指示:指定输出的类型或格式。
一般来说我们在使用大模型的时候,都是直接输入指令和数据,但是如果能有效的提供上下文和输出格式,则一般而言回答的质量会更高。
3.提示词的通用技巧 3.1 在提示词中明确指令 明确指令的过程中的要点如下:
使用例如“写入”、“分类”、“总结”、“翻译”、“排序”等明确的提示词将“###指令###”放在开头 接下来我们分别测试三种
将“hello!”翻译成西班牙语 将以下文本翻译成西班牙语: 文本:“hello!” ### 指令 ### 将以下文本翻译成西班牙语: 文本:“hello!” 为了避免多轮对话的记忆,因此每次实验都新开一个会话
3.1.1 输入基础和改进之后的提示词模型的输出 文心一言 通义千问 ChatGPT4 Claude3 3.1.2 结果对比分析 下面是我自我感受的一个测试结果,纯个人感受,文心一言的基础效果给差是因为,只有文心一言的基础结果输出时候,翻译出的西班牙语少了开头的一个符号(但我不知道重要不重要不太懂西班牙语),剩下的情况翻译的情况都基本是正确的,虽然额外的表示方式或是信息不同。
模型名称基础效果使用提示技巧效果特点相关任务推荐建议文心一言4.0差良好无不是很推荐通义千问良好良好只输出结果需要精简回答时推荐GPT4良好良好结果前会铺垫一句描述对话场景推荐Claude3良好良好会自动切换回答语言需自动切换语言时推荐 3.2 具体描述输出所要的格式 接下来测试两种文本:
提取以下文本中的地名。 输入:“虽然这些发展对研究人员来说是令人鼓舞的,但仍有许多谜团。里斯本未知的香帕利莫德中心的神经免疫学家 Henrique Veiga-Fernandes 说:“我们经常在大脑和我们在周围看到的效果之间有一个黑匣子。”“如果我们想在治疗背景下使用它,我们实际上需要了解机制。” 提取以下文本中的地名。 所需格式: 地点:<逗号分隔的公司名称列表> 输入:“虽然这些发展对研究人员来说是令人鼓舞的,但仍有许多谜团。里斯本未知的香帕利莫德中心的神经免疫学家 Henrique Veiga-Fernandes 说:“我们经常在大脑和我们在周围看到的效果之间有一个黑匣子。”“如果我们想在治疗背景下使用它,我们实际上需要了解机制。” 3.
问题描述 安装完MySQL,希望在ODBC中配置MySQL数据源,当我录入完数据库的相关信息点击Test测试的时候,报这个错误。打了一个措手不及。
解决方案 重启电脑 本身刚刚安装完MySQL,相关的驱动可能需要重启一下才能被扫描到,所以如果报上面的错误,第一反应是重启电脑重试。(我本地就是重启后解决的这个问题)
通过Windows系统修复工具修复 1.按键盘上的“Windows键+R”组合键打开“运行”窗口,输入“cmd”后点击“确定”按钮打开命令提示符窗口。
2.在命令提示符窗口中,依次输入并执行以下命令:
sfc /scannow
DISM.exe /Online /Cleanup-image /Restorehealth
这两条命令用于扫描系统文件,并自动修复损坏的系统文件。修复完成后,尝试重新启动计算机,看是否解决了上述问题。
更新或重新安装造成错误的程序 如果知道是哪个程序出现了问题,那么可以尝试更新或重新安装这个程序。如何操作呢?
1.打开受影响的应用程序的官方网站,查看是否有更新版本可供下载。如果有,下载并安装,看是否能解决问题。
2.如果更新未能解决问题,那么考虑卸载并重新安装应用程序。通过“控制面板”-> “程序” -> “卸载程序”,找到对应的程序进行卸载,然后重新下载和安装。
系统还原 使用系统还原功能回到问题发生前的一个状态。
1.打开“控制面板”->“恢复”,在出现的界面中选择“打开系统还原”。
2.按照提示选择一个还原点,进行系统还原。
至此,关于解决系统错误 1114:动态连接库(DLL)初始化例程失败错误的介绍完毕,需要注意的是不同的场景可能会因为不同的原因报这个错误,所以还得根据实际的场景,选择合适的方法去解决。后续还会持续更新,敬请期待!
Fiddler+夜神模拟器(安卓12)进行APP抓包相关配置设置 之前尝试了很多办法想去抓夜神模拟器的安卓12 。
比如用:Magisk、Lsposed、MMT Extended等等,网上看了很多教程,结果我都失败了。
后面静下心来想了想其实我是本末倒置了,光想炫工具了,哈哈。
上面提到的哪些框架和工具适合在安卓高版本的真机上抓包。
模拟器上也就安卓9,安卓12之流用不着这些黑科技,杀鸡焉用牛刀啊。
下面正题开始。
操作思路:
因为,Android从7.0开始,系统不再信任我们添加的用户CA证书,如果应用的targetSdkVersion>=24,则只有系统证书才会被信任。
也就是说即使安装了用户CA证书,在Android7.0以上的机器上,targetSdkVersion>=24的应用的Https包也无法正常抓到。
一个方案就是让开发APP的开发修改,你搞自己的APP可以这样,你抓别人的就没法,所以毙掉
另一个方案是把我们直接安装的用户证书 搞成系统证书 。简单粗暴。
问题是我们该怎么去搞?
以下是证书的路径和特征: 用户证书储存在:/data/misc/user/0/cacerts-added 系统证书储存在:/system/etc/security/cacerts 证书文件都以.0作为结尾 我们要做的就是把 用户证书 移动到 系统证书文件夹 中就OK。
操作流程 1、Fiddler的设置 看我前篇文章就行,好多年前的了,到现在都还在用老的Fiddler. 最新的反而有些功能被砍了不怎么好用
Fiddler+雷电模拟器进行APP抓包相关配置设置
1.1、fiddler证书生成 打开fiddler → 工具 → 选项
HTTPS → 动作 → 将根证书导出到桌面
在桌面可以得到一个证书文件FiddlerRoot.cer,先放着,等下要用
2、夜神模拟器设置 2.1、设置静态网络 开启夜神模拟器后,点右上角的小齿轮
系统设置 → 手机 → 网络设置
勾选√ 开启网络连接
勾选 √ 开启网络桥接模式
IP设置:静态IP
IP地址:录入和你电脑一个网段的未使用的IP(我电脑IP是192.168.11.20,所以给模拟器设置了个136)
IP网关:录入自己电脑的网关
其他就不说明了按你电脑的填就行
2.2、开启root 系统设置 → 基础 → √ 开启Root
2.3、安装证书 2.
所以开发一个图像化的小窗口,就变得很有必要。
今天,小F就给大家介绍七个Python必备的GUI库,每一个都值得学习。
01. PyQt5 PyQt5由Riverbank Computing开发。基于Qt框架构建,是一个跨平台框架,可以给各种平台创建应用程序,包括:Unix、Windows、Mac OS。
PyQt将Qt和Python结合在一起。它不只是一个GUI工具包。还包括了线程,Unicode,正则表达式,SQL数据库,SVG,OpenGL,XML和功能完善的Web浏览器,以及许多丰富的GUI小部件集合。
使用pip安装一下。
安装PyQt5
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple PyQt5
安装成功后,来个Hello Word简单示例。
结果如下。
02. Tkinter Tkinter是Python中最受欢迎的GUI库之一。由于它简单易学的语法,成为GUI开发初学者的首选之一。
Python学习交流组 点我免费领取资料 同更多志同道合的小伙伴一起学习,提供解答
T
kinter提供了各种小部件,例如标签,按钮,文本字段,复选框和滚动按钮等。
支持Grid(网格)布局,由于我们的程序大多数都是矩形显示,这样即使是复杂的设计,开发起来也变得简单些。
安装tkinter
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tkinter
下面使用Tkinter设计一个BMI计算器。
以重量和高度作为输入,并在弹出框中返回BMI系数作为输出。
界面如下
当没有数据时,点击BMI按钮,会有与之对应的提示。
下面我们使用正确的数据,来看看结果。
使用起来感觉还是不错的。
03. Kivy Kivy是另一个开源的Python库,最大的优点就是可以快速地编写移动应用程序(手机)。
Kivy可以在不同的平台上运行,包括Windows、Mac OS、Linux、Android、iOS和树莓派。
此外也是免费使用的,获得了MIT许可。
安装kivy
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple kivy
一个基于Kivy的Hello World窗口。
结果如下
04. wxPython wxPython是一个跨平台GUI的Python库,可轻松创建功能强大稳定的GUI,毕竟是用C++编写的~
目前,支持Windows,Mac OS X,macOS和Linux。
使用wxPython创建的应用程序(GUI)在所有平台上都具有原生外观。
安装wxPython
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple wxPython
下面使用wxPython创建一个基本的GUI示例。
结果如下
成果展示:
1.前期准备 (1)在配置文件中添加权限及启动页面顺序 ①展开工程,打开app下方的AndroidManifest.xml,添加权限,如下:
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
② 依旧在AndroidManifest.xml文件中添加启动页面顺序的功能代码
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.ts_menu"> //这里注意修改成自己创建的包名 <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".AddInfoActivity"></activity> <activity android:name=".LoginActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".MainActivity"> </activity> </application> </manifest> (2)添加依赖 展开工程,打开app下方的build.gradle ,添加依赖,如下:依赖添加好之后,要记着同步,在页面右上角的位置单击:Sync Now 即可。
implementation 'com.android.support:recyclerview-v7:+'
implementation 'com.github.bumptech.glide:glide:4.9.0'
api 'com.blankj:utilcode:1.23.7'
(3)素材 一共5张图片,粘贴到工程的drawable文件夹下来,其中bgone.png,bgthree.jpg两个图片是登录界面和信息添加界面的背景,buttonbg.png,savebg.png图片是添加备忘录按钮和保存按钮的背景,另外一张背景图片是sunshine.jpg是一张默认显示的照片。选择你自己喜欢的图片添加进去吧!
2.所需的布局文件 2.1 activity_login.xml 登录布局界面的实现
<?xml version="1.0" encoding="
哈喽,大家好呀!这里是码农后端。本篇将给大家推荐一个非常好用的SQL Server数据库插件:SQL Prompt。
一、Navicat Premium连接SQL Server 由于我平常MySQL数据库用的较多,也习惯了使用Navicat Premium数据库管理工具,但有时候也需要用到SQL Server,于是使用Navicat Premium连接SQL Server(我的是Navicat Premium 15)
刚开始连接时报错:[IM002] [Microsoft][ODBC驱动程序管理器]未发现数据源名称并且未指定默认驱动程序(0),解决办法如下:
1)找到Navicat的安装路径(如我的:D:\Navicat Premium 15),然后找到sqlncli_x64.msi文件,双击安装
2)安装成功后再返回测试连接
主机名可以在SSMS中找到,如下
连接名随便取,有SQL Server验证和Windows验证两种方式,这里以SQL Server验证为例,用户名默认是sa,密码为自己设定的。所有都填写好后,点击左下角测试连接,看是否连接成功。
如下,成功连接上我们的SQL Server数据库
二、SQL Prompt 插件 虽然Navicat Premium可以连接SQL Server,但是用了一段时间后发现不太习惯,当然,这个纯纯看个人喜好哈。接下来推荐一个非常好用的插件SQL Prompt,搭配SSMS简直不要爽到起飞。
注:SQL Prompt插件提供智能代码补全、SQL格式化、代码自动提示和快捷输入等功能,非常方便,可以自行去尝试体会。
1、问题 SSMS(SQL Server Management Studio)是SQL Server自带的管理工具,整体还是非常不错的,但也有不足,比如它的智能提示方面做的不好
虽然本身的Intellisense插件能够提供对数据库对象(如表、视图、存储过程等)的提示和上下文相关的信息,但是如果书写语法错误的话是没有提示的。
2、安装SQL Prompt SQL Prompt官网:https://www.red-gate.com/ 。SQL Prompt最新版官网下载地址:https://download.red-gate.com/SQLPromptDownload.exe
为了方便,我这里提供了插件的百度网盘下载地址。
链接:https://pan.baidu.com/s/1Ij-0s8kG_pIGfwtNlFu7GA?pwd=9y6a 提取码:9y6a
下载完成后,右键解压该文件夹
2.1 安装 双击文件夹里的 SQLPromptDownload.exe进行安装,傻瓜式安装,一直下一步就行了。
如果安装过程提示:Quit applications,You need to quit the following applications before the installation can continue,是因为打开了SSMS,将其关闭;安装完成后点击Finish即可。
此时再次打开SSMS管理工具,就会看到导航栏上多了一个SQL Prompt选项。