【AI大模型】应用开发基础,学到就是赚到!

前言

1、了解大模型能做什么
2、整体了解大模型应用开发技术栈
3、浅尝OpenAI API的调用

AI全栈工程师:懂AI、懂编程、懂业务的超级个体,会是AGI(Artificial General Intelligence 通用人工智能)时代最重要的人。

知识体系

AI学习方法论

从三个方面学习:原理实践认知 三类
1、不懂原理就不会举一反三,走不了太远。
2、不懂实战就只能纸上谈兵,做事不落地。
3、认知不高就无法做对决策,天花板太低。

如果能三者兼备,是最好的。但不同岗位角色可以有不同的取舍。比如:
1、老板更多关注认知,但如果懂原理,能形成更多的认知
2、程序员更多关注实战,但原理和认知是地基和天花板
3、产品经理更多关注认知,但应该也懂原理,并了解一些实战
4、市场、运营和销售需要关注认知,并了解一些原理

说明:在剧烈变革的时代,千万别只拿代码当干货!更深的东西,未必是有用的。

大模型

  • 什么是AI?基于机器学习、神经网络的是AI;基于规则、搜索的不是AI

  • 大模型:全称大语言模型(Large Language Model,缩写:LLM)

    常用大模型

大模型常见用法

1、按格式输出:例如,从一段话中,提取姓名、地址、电话等结构化信息。

2、分类:例如,根据新闻标题,对新闻进行分类

3、聚类:把一堆句子,按意思相近度进行分组

4、更多用法

  • 持续互动:多轮互动问答、角色扮演等
  • 舆情分析:从公司产品的评论中,分析哪些功能/元素是用户讨论最多的,评价
    是正向还是负向
  • 坐席质检:检查客服/销售人员与用户的对话记录,判断是否有争吵、辱骂、不
    当言论,话术是否符合标准
  • 故障解释:根据系统报错信息,给出方便非技术人员阅读的故障说明
  • 零代码开发/运维:自动规划任务,生成指令,自动执行
  • 生成业务逻辑:自定义一套业务描述语言(DSL),直接让ChatGPT写业务逻
    辑代码

思考:你的业务中,有哪些问题可以用AI解决?

5、可能一切问题,都能解决,所以是AGI

划重点:
1.把大模型看做是一个函数,给输入,生成输出
2.任何业务问题,都可以用语言描述,成为大模型的输入,就能生成业务问题
的结果
3.实际工作中,通常需要将业务任务拆解为若干个子任务,分别解决。理解业
务本质,对拆解任务有很大帮助!

  • 一般在使用大模型时,不是直接把一个比较大的任务丢给大模型,而是把任务进行拆解,拆解成若干个子任务逐个解决,得到结果再组合,这样效果会更好。
  • agent:就是用AI来完成任务的拆解

大模型的工作原理

1、通俗原理
大模型是怎么生成结果的?其实,它就是根据上文,猜下一个词(的概率)…… 这个算法叫 transformer

如:The cat sat 后面出现的词可能是:at(0.1) / in(0.1) / on(0.8)

AI大模型的核心原理:基于概率生成下一个token(选择下一个概率高的token),token拼token,最后就拼成了一整句话。

OpenAI的接口名就叫completion,也证明了其只会生成的本质。下面用程序演示生成下一个字。你可以自己修改prompt试试。还可以使用相同的prompt运行多次。

# 这是一个Python调用ChatGPT的代码

# 1.引入必须的包
from openai import OpenAI
from dotenv import load_dotenv, find_dotenv
import os

# 读取本地/项目的环境变量。

# find_dotenv()寻找并定位.env文件的路径
# load_dotenv()读取该.env文件,并将其中的环境变量加载到当前的运行环境中  
# 如果你设置的是全局的环境变量,这行代码则没有任何作用。
_ = load_dotenv(find_dotenv())

client = OpenAI()

prompt = "今天我很" #改我试试
# 使用openai中的api完成chatgpt的模型调用
response = client.completions.create(
    # chatgpt背后的模型
    model = "gpt-3.5-turbo-instruct",
    # 向chatgpt提出的问题
    prompt = prompt,
    # 返回的最大字符个数
    max_tokens = 20,
    temperature = 0.5, # temperature(温度)参数,范围是 0~2,它用于控制随机性。
    stream = True
)

for chunk in response:
    message = chunk.choices[0].text
    print(message, end='')

# 打印结果,如:
'''
    输出结果:
    高兴
    今天我因被告知我通过了一场重
'''


2、略深一点的通俗原理
用不严谨但通俗的语言描述大模型的工作原理:

1.大模型阅读了人类曾说过的所有的话。这就是机器学习,这个过程叫训练
2.把一串 token 后面跟着的不同 token 的概率记了下来。记下的就是参数,也叫权重
3.当我们给它若干 token,大模型就能算出概率最高的下一个 token 是什么。这就是生成,也叫推理
4.用生成的 token,再加上上文,就能继续生成下一个 token。以此类成更多文字

Token 是什么?
1.可能是一个英文单词,也可能是半个,三分之一个。可能是一个中文词,或者一个汉字,也可能是半个汉字(是把 unicode 做拆分,并不是直接把汉字拆分),甚至三分之一个汉字
2.大模型在开训前,需要先训练一个 tokenizer 模型。它能把所有的文本,切成 token

3、再深一点点
这套生成机制的内核叫Transformer 架构。但其实,transformer 已经不是最先进的了。

【一一AGI大模型学习 所有资源获取处一一】

①人工智能/大模型学习路线

②AI产品经理入门指南

③大模型方向必读书籍PDF版

④超详细海量大模型实战项目

⑤LLM大模型系统学习教程

⑥640套-AI大模型报告合集

⑦从0-1入门大模型教程视频

⑧AGI大模型技术公开课名额

ChatGPT的温度

  • 在API调用中,有一个 temperature(温度)参数,范围是 0~2,它用于控制随机性。
  • 温度越低,确定性越强,随机性越低,越像机器,机器是没有温度的。如果参数为0,则每次调用时,只要prompt(问题)一样,生成结果都是一样的。
  • 温度越高,随机性越强,就有了智能的味道。当然也不能太高,如果设置为2时,它就会胡说八道。

用好 Al 的核心心法

OpenAl 首席科学家 llya Sutskever 说过:

数字神经网络和人脑的生物神经网络,在数学原理上是一样的。

所以,我们要:把AI当人看(认知层面)。
我们和凯文-凯利交流时,他说了类似的观点:「和人怎么相处,就和Al怎么相处。」
1.用「当人看」来理解 Al
2.用「当人看」来控制 Al
3.用「当人看」来说服用户正确看待 Al 的不足

如果把AI当作以前逻辑严密的机器去看待它,你会非常地不适,不知道怎么去用它,会各种瞧他不顺眼。你必须把他当人看,像对人一样去和他相处、去交流,去包容他,你就能更好地用好AI。

大模型应用架构

大模型技术分两个部分:
1.训练基础大模型:全世界只需要 1000 人做这个
2.建造大模型应用:所有技术人,甚至所有人,都需要掌握

大模型应用技术特点:门槛低,天花板高。

1. 典型的业务架构

  • Embedded 模式:AI嵌入,初步应用AI
  • Copilot 模式:AI辅助,多个环节用AI来实现
  • Agent 模式:AI智能体,全面用AI来实现

Agent 还太超前,Copilot 值得追求。

2. 技术架构

架构1:纯 Prompt。就像和一个人对话,你说一句,ta 回一句,你再说一句,ta再回一句……

架构2:使用了 Agent + Function Calling

即当你问AI问题时,AI会反问你问题,明确问题后,再回答结果

  • Agent:Al 主动提要求(即 Al 主动反向向你提问题)
  • Function Calling : Al 要求执行某个函数(相当于一个回调)
  • 场景举例:你问过年去哪玩,ta 先反问你有几天假

流程说明:
1、应用程序发一个 prompt,prompt 触发了大模型的 Agent
2、Agent 会给我们一个 Function Calling,告诉我们要去调用某一个函数(内部/外部APIs),等待函数返回结果,把拿到的结果再传给大模型。
3、大模型 response 最终结果。

架构3:使用了RAG (RAG = Embeddings + 向量数据库)

  • Embeddings(嵌入向量/词向量):是指将高维度的数据(文字、图片、音频等)映射到**低维度空间(N维的实数向量)**的过程。

即将文本/图片等数据转换为实数向量数据,方便向量数据库进行存储和相似度检索。

  • 向量数据库:把向量存起来,方便查找
  • 向量搜索:根据输入向量,找到最相似的向量

场景举例:考试时,看到一道题,到书上找相关内容,再结合题目组成答案。然后,就都忘了

通俗的解释:
如,考试的时候,带上书本(书本就相当于是向量数据库,里面存的是考试内容知识点)。当应用程序发一个 prompt (问题)时,先到向量数据库中查找与问题相关的知识,然后把查找到的相关知识和问题一起丢给大模型,尽管大模型不懂这个知识,但是你把知识喂给了它,它会基于问题和知识给你生成一个合适的答案。

特点:大模型不懂知识,知识是存在向量数据库中(即知识存在书本上),大模型在答题时,要结合问题和向量数据库中相关知识点临时总结生成一个合适的答案(有点像开卷考试一样,人脑没有学习和记住相关知识,要去书本上查找相关知识点才能总结和提炼出答案)。

架构4:Fine-tuning 微调

就是考试不带书本,考试前努力学习考试内容,长期记住(知识存在脑子里,大模型懂知识),活学活用

大模型微调,是对历史数据进行训练,让大模型学会了某些知识。但是大模型是不知道一些实时数据,实时数据是需要通过大模型外部的一些方式获取(如:获取当前时间,通过内部/外部API方式获取;获取今日热点新闻,从RAG方式向量数据库中获取)

编程调用 OpenAl API

官方文档:https://platform.openai.com/docs/api-reference
本课程主要讲 OpenAl 的 GPT 系列大模型的使用,因为:

  • 在天花板上,才能看得够远
  • 其它大模型都在模仿 ta,更容易触类旁通

本课程的主打语言是 Python,因为:

  • Python 和Al 是天生的一对
  • Python 是最容易学习的编程语言
1. 安装 OpenAl Python 库

在命令行执行:pip install --upgrade openai

2. 发一条消息
# 这是一个Python调用ChatGPT的代码
# 引入必须的包
import openai
import os

# 加载 .env 文件到环境变量
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())

# 初始化 OPENAI 服务。会自动从环境变量加载 OPENAI_API_KEY 和 OPENAI_BASE_URL
client = OpenAI()

# 消息格式
messages = [
    {
        "role": "system",
        "content": "你是AI助手小瓜,是AGI课堂的助教。这门课每周二、四上课。"
    },
    {
        "role": "user",
        "content": "哪天有课?"
    }
]

# 调用 GPT-3.5
chat_completion = client.chat.completions.create(
    # chatgpt背后的模型
    model = "gpt-3.5-turbo",
    messages = messages
)

# 输出回复
print(chat_completion.choices[0].message.content)

# 打印结果:这门课每周二、四有课。


问题与答疑

一、AI大模型在数据治理有什么应用?
1、用大模型对数据中非结构化数据做整理;
2、用自然语言直接查询数据 NL2SQL。

NL2SQL( Natural Language To SQL)是自然语言到结构化查询语言(SQL)的转换技术。它可以将自然语言的问题转化为数据库查询语言,以便直接与数据库交互进行数据查询和操作。顾名思义,是将用户输入的自然语言转为可执行的SQL语句。

二、文字、图像、视频大模型token区别
大语言模型是以文字为token;图像大模型是以图像为token;视频大模型是以视频帧/视频流为token;

三、为什么量化交易阶段不能用大模型?
1、大模型的运算速度是非常慢的,不具备实时性;
2、大模型有很强的幻觉。
在量化交易里面大模型一般可以做前期的情报分析,和做后期的数据分析总结。

四、大模型参数是什么?
参数就是一堆数据,数据里存的是权重,权重就是词与词之间的概率

五、通用大模型这么强大,还有做专业大模型的空间和价值吗?
通用大模型并不是什么都会,保持大面积的通用性就行,因为训练成本会很高。另外通用大模型不够专精,专业大模型参数少,训练成本低,比较专精更具性价比。

六、向量数据库
把数据放到向量数据库中,在对话的时候可以理解语义去向量检索,检索到相关内容并丢给大模型再回答最终结果。

七、大模型中 Turbo 表示是什么意思?

  • “Turbo” 在英文中通常指的是“涡轮增压”。
  • 在汽车领域中,它指的是通过增加发动机的进气压力来提高其功率和扭矩。
  • 在技术领域,“Turbo” 有时被用作一个营销术语,表示某种 增强版 或 加速版。

如:qwen-turbo、GPT-4 Turbo 表示是一个增强版模型,即该模型在性能、速度、准确性或其他方面有所优化或增强

八、大模型中 B 表示是什么意思?
在人工智能领域中,当我们提到“XXB”(例如:6B、34B)这样的术语时,它通常指的是模型的参数量,其中“B”代表“Billion”,即“十亿”。因此,6B表示模型有6十亿(即60亿)个参数,而34B表示模型有34十亿(即340亿)个参数。

说明:英文和中文的量词不一样,中文的量词更加细化
中文:个、十、百、千、万、十万、百万、千万、亿
英文:千(Thousand,简写:K)、百万(Million,简写:M)、十亿(Billion,简写:B)
一般来说参数量超过1B,也就是10亿的模型才叫大模型(Large Lanauage Model)

可能大家都想学习AI大模型技术,也想通过这项技能真正达到升职加薪,就业或是副业的目的,但是不知道该如何开始学习,因为网上的资料太多太杂乱了,如果不能系统的学习就相当于是白学。为了让大家少走弯路,少碰壁,这里我直接把全套AI技术和大模型入门资料、操作变现玩法都打包整理好,希望能够真正帮助到大家。

如何系统的去学习大模型LLM ?

作为一名热心肠的互联网老兵,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。

但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的 AI大模型资料 包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来

😝有需要的小伙伴,可以V扫描下方二维码免费领取🆓

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

在这里插入图片描述

四、AI大模型商业化落地方案

img

阶段1:AI大模型时代的基础理解
  • 目标:了解AI大模型的基本概念、发展历程和核心原理。
  • 内容
    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
      - L1.4.1 知识大模型
      - L1.4.2 生产大模型
      - L1.4.3 模型工程方法论
      - L1.4.4 模型工程实践
    • L1.5 GPT应用案例
阶段2:AI大模型API应用开发工程
  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。
  • 内容
    • L2.1 API接口
      - L2.1.1 OpenAI API接口
      - L2.1.2 Python接口接入
      - L2.1.3 BOT工具类框架
      - L2.1.4 代码示例
    • L2.2 Prompt框架
      - L2.2.1 什么是Prompt
      - L2.2.2 Prompt框架应用现状
      - L2.2.3 基于GPTAS的Prompt框架
      - L2.2.4 Prompt框架与Thought
      - L2.2.5 Prompt框架与提示词
    • L2.3 流水线工程
      - L2.3.1 流水线工程的概念
      - L2.3.2 流水线工程的优点
      - L2.3.3 流水线工程的应用
    • L2.4 总结与展望
阶段3:AI大模型应用架构实践
  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。
  • 内容
    • L3.1 Agent模型框架
      - L3.1.1 Agent模型框架的设计理念
      - L3.1.2 Agent模型框架的核心组件
      - L3.1.3 Agent模型框架的实现细节
    • L3.2 MetaGPT
      - L3.2.1 MetaGPT的基本概念
      - L3.2.2 MetaGPT的工作原理
      - L3.2.3 MetaGPT的应用场景
    • L3.3 ChatGLM
      - L3.3.1 ChatGLM的特点
      - L3.3.2 ChatGLM的开发环境
      - L3.3.3 ChatGLM的使用示例
    • L3.4 LLAMA
      - L3.4.1 LLAMA的特点
      - L3.4.2 LLAMA的开发环境
      - L3.4.3 LLAMA的使用示例
    • L3.5 其他大模型介绍
阶段4:AI大模型私有化部署
  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。
  • 内容
    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景
学习计划:
  • 阶段1:1-2个月,建立AI大模型的基础知识体系。
  • 阶段2:2-3个月,专注于API应用开发能力的提升。
  • 阶段3:3-4个月,深入实践AI大模型的应用架构和私有化部署。
  • 阶段4:4-5个月,专注于高级模型的应用和部署。
这份完整版的大模型 LLM 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Mybatis 与 Spring】事务相关汇总

之前分享的几篇文章可以一起看,形成一个体系 【Mybatis】一级缓存与二级缓存源码分析与自定义二级缓存 【Spring】Spring事务相关源码分析 【Mybatis】Mybatis数据源与事务源码分析 Spring与Mybaitis融合 SpringManagedTransaction: org.mybatis.spri…

Ubuntu/Linux调试安装南京来可CAN卡

准备好USB rules文件和can driver文件备用! 必做:放置USB rules文件到对应位置处理权限问题 而后:安装内核driver并编译。需求众多依赖编译环境,视情况安装填补。如GCC,G,make等等 进入对应64bit文件夹中,添加权限,执…

爬虫:爬取知乎热榜一级评论及回答2024不包含翻页

一、先上结果(注:本文仅为兴趣爱好探究,请勿进行商业利用或非法研究,负责后果自负,与作者无关) 1、爬标题及其具体内容 2、抓标题下的对应回答 3、爬取对应一级评论 二、上流程 1、获取cookies(相信哥哥姐姐…

Qt Creator创建一个用户登录界面

目录 1 界面设计 2 代码 2.1 登录界面 2.2 注册界面 2.3 登陆后的界面 3 完整资源 这里主要记录了如何使用Qt Creator创建一个用户登录界面,能够实现用户的注册和登录功能,注册的用户信息存储在了一个文件之中,在登录时可以比对登录信息…

大厂程序员上班猝死成常态?

大家好,我是瑶琴呀,拥有一头黑长直秀发的女程序员。 近日,连续看到大厂程序员猝死、低血糖晕倒的新闻,同为程序员感到很难受。互联网加班成常态这是既定事实,尤其在这个内卷严重、经济不景气的环境中,加班…

actual combat 31 —— 多级表头excel导出

设置模板占位符 &#xff08;模板占位符表头不带点&#xff0c;非表头数据行带点&#xff0c;举例{.ago}&#xff0c;{ago}&#xff09;引入easyExcel依赖 <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><v…

【深度学习】图形模型基础(1):使用潜在变量模型进行数据分析的box循环

1.绪论 探索数据背后的隐藏规律&#xff0c;这不仅是数据分析的艺术&#xff0c;更是概率模型展现其威力的舞台。在这一过程中&#xff0c;潜在变量模型尤为关键&#xff0c;它成为了数据驱动问题解决的核心引擎。潜在变量模型的基本理念在于&#xff0c;那些看似复杂、杂乱无…

uniapp加载打点点效果

uniapp加载打点点效果 背景实现思路代码实现尾巴 背景 为了增加系统的交互性&#xff0c;我们在加载数据时通常会增加一些loading动效&#xff0c;但是在某些场景下只需要一些简单文字提醒。比如说使用【加载中】或者【loading】等字段&#xff0c;但是写静态的字符又显得交互…

新手必备!短视频剪辑常用的18个技巧——剪映篇

导入素材&#xff1a;这里我们可以选择自己拍摄好的素材&#xff08;图片、视频或录制好的音频&#xff09;&#xff0c;按照顺序导入剪辑区剪辑。这一步是剪辑的基础&#xff0c;确定剪辑的大体思路与成片框架&#xff01;别忽略了&#xff0c;剪映官方素材库提供的素材&#…

Windows宝塔面板部署ThinkPHP8.0创建Vue项目案例

安装ThinkPHP8.0 登录宝塔面板&#xff0c;创建一个站点。 输入composer代码&#xff0c;执行完成后自动创建TP目录 composer create-project topthink/think tp 网站目录设置为tp&#xff0c;运行目录设置为public 设置PHP版本为8.0以上&#xff0c;不然会出现下面的报错代…

中科驭数第三代DPU芯片K2-Pro,专为数据中心打造的“六边形战士”

近日&#xff0c;中科驭数重磅发布第三代DPU芯片K2-Pro&#xff0c;是国内首颗面向量产的全功能芯片&#xff01; K2-Pro采用自主研发的Kernel Processing Unit架构&#xff0c;集网络、存储、安全及计算等多业务卸载功能于一体&#xff0c;包处理速率翻倍至80Mpps&#xff0c…

vue3+ts+vite项目报错:找不到名称“GC”。ts-plugin(2304)

GC变量通过script标签引入的第三方引入&#xff0c;但是ts-plugin并不知道&#xff0c;需要明确声明这个变量的类型 /// <reference types"vite/client" />declare module "*.vue" {import type { DefineComponent } from "vue";// eslint…

代表与民众的联系如何通过数字人大平台加强?正宇软件有方法

在数字时代的大潮中&#xff0c;数字中国建设已成为国家战略&#xff0c;数字人大平台作为战略中的组成部分&#xff0c;正逐步展现出其独特价值和重要作用。随着国家政策的引导与推动&#xff0c;数字人大平台不仅为人大代表履职提供了新工具&#xff0c;更为加强人大代表与民…

ctfshow web入门 sqli-labs web517--web524

web517 注入点id ?id-1’union select 1,2,3– 确认是否能够注入 ?id-1union select 1,database(),3-- 爆出库名 security爆出表名 ?id-1union select 1,(select group_concat(table_name) from information_schema.tables where table_schemasecurity),3-- emails,refer…

墨刀原型-单选按钮场景交互

画原型过程中&#xff0c;会遇到单选或多选的交互场景 这时就可以直接在基础组件部分&#xff0c;拉取单选按钮直接使用&#xff0c;只需要完成对应的交互事件就可实现交互 首先先说单选按钮实现交互 拉取一个单选组件&#xff0c;右侧可调整样式尺寸&#xff0c;在选项部分&…

生命在于学习——Python人工智能原理(2.5.1)

五、Python的类与继承 5.1 Python面向对象编程 在现实世界中存在各种不同形态的事物&#xff0c;这些事物之间存在各种各样的联系。在程序中使用对象来映射现实中的事物&#xff0c;使用对象之间的关系描述事物之间的联系&#xff0c;这种思想用在编程中就是面向对象编程。 …

【数据结构】线性表之《队列》超详细实现

队列 一.队列的概念及结构二.顺序队列与链队列1.顺序队列2.链队列 三.链队列的实现1.创建队列2.初始化队列3.入队4.出队5.获取队头元素6.获取队尾元素7.队列的大小8.队列的判空9.清空队列10.销毁队列 四.队列的盲区五.模块化源代码1.Queue.h2.Queue.c3.test.c 六.栈和队列必做O…

解题思路:LeetCode 第 209 题 “Minimum Size Subarray Sum“

解题思路&#xff1a;LeetCode 第 209 题 “Minimum Size Subarray Sum” 在这篇博文中&#xff0c;我们将探讨如何使用 Swift 解决 LeetCode 第 209 题 “Minimum Size Subarray Sum”。我们会讨论两种方法&#xff1a;暴力法和滑动窗口法&#xff0c;并对这两种方法的时间复…

confluence集成LDAP

一、confluence的权限管理 在集成前&#xff0c;我们必须得知道confluence自身的权限管理是如何做的。 用户组对应空间权限&#xff0c;用户组可以是一个项目&#xff0c;也可以是一个部门或组。 一个用户组里的用户&#xff0c;可以读写本空间的页面&#xff0c;而把其他组隔离…

“文本比对基础:最短编辑距离算法的原理与实现“

最短编辑距离 给定两个字符串 &#x1d434; 和 &#x1d435;&#xff0c;现在要将 &#x1d434; 经过若干操作变为 &#x1d435;&#xff0c;可进行的操作有&#xff1a; 删除–将字符串 &#x1d434; 中的某个字符删除。插入–在字符串 &#x1d434; 的某个位置插入某…