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

大模型应用实践:AIGC探索之旅

随着OpenAI推出ChatGPT,AIGC迎来了前所未有的发展机遇。大模型技术已经不仅仅是技术趋势,而是深刻地塑造着我们交流、工作和思考的方式。

本文介绍了笔者理解的大模型和AIGC的密切联系,从历史沿革到实际应用案例,再到面临的技术挑战和伦理监管问题,探讨这一技术浪潮如何引领我们进入一个智能化的未来。

前言

2022.11月30号OpenAI推出ChatGPT后随即爆火,五天注册用户数过百万,2个月用户破1亿,成为史上增长最快的消费者应用。随后各大厂也纷纷卷入AIGC领域,迎来国产GPT大模型发布潮(百度"文新一言"、阿里"通义千问"、商汤"商量 SenseChat"等)及AI创业公司成立潮(王小川、李开复等)。

大模型代表一个新的技术AI时代的来临,大模型展现出的强大的语义理解,内容生成以及泛化能力正在逐渐改变我们的工作与生活方式(AI+)、工作方式和思维方式。正如《陆奇的大模型观》所讲当前我们正迎来新范式的新拐点,从信息系统到模型系统过渡,"模型"知识无处不在。人工智能的浪潮正在引领新的技术革命,或许可称为第五次工业革命。

(【注】推荐大家去阅读《陆奇的大模型观》。强烈建议直接看陆奇演讲视频 奇绩创坛| 陆奇最新演讲完整视频|大模型带来的新范式:演讲涵盖陆奇对大模型时代的宏观思考,包括拐点的内在动因、技术演进、创业公司结构性机会点以及给创业者的建议。)

在人工智能的新时代,大模型技术正成为推动AIGC(人工智能生成内容)前沿的关键力量。本文将通过介绍我们的AIGC项目,来深入探讨这一技术的开发、实施与应用。因个人能力限制,文章中可能存在一些理解或表述错误的地方,希望各位大佬能及时批评和指正。

技术交流

技术要学会分享、交流,不建议闭门造车。一个人走的很快、一堆人可以走的更远。

大模型资料、数据、技术交流提升, 均可加知识星球交流群获取,群友已超过2000人,添加时切记的备注方式为:来源+兴趣方向,方便找到志同道合的朋友。

方式①、添加微信号:mlc2060,备注:技术交流
方式②、微信搜索公众号:机器学习社区,后台回复:技术交流

在这里插入图片描述

AIGC简介与发展历程

在与业务等交谈过程中,经常会听大家提到AIGC、ChatGPT、大模型、XX等许多概念,但也发现部分内容混淆。首先来解决下当下最火概念AIGC、ChatGPT、大模型到底是什么?

  1. ChatGPT "Chat Generative Pre-trained Transformer”的缩写,ChatGPT是一种基于人工智能技术的聊天机器人,能用于问答、文本摘要生成、机器翻译、分类、代码生成和对话AI,是一款由OpenAI开发的基于Transformer架构的的自然语言处理工具。

  2. AIGC,全名“AI generated content”,又称生成式AI,意为人工智能生成内容。狭义概念是利用AI自动生成内容的生产方式(UGC->PGC->AIGC);广义的AIGC可以看作像人类一样具备生成创造能力的AI技术,包括但不限于文本生成、音频生成、图像生成、视频生成及图像、视频、文本间的跨模态生成等等。

  3. 大模型:大模型通常是指参数量非常大的深度学习模型,如Transformer架构的GPT-3、BERT、T5等模型。这些模型通过在海量数据上进行训练,能够学习到丰富的语言和知识表示,并展现出强大的自然语言处理能力。

AIGC是一个更广泛的概念,包括多种类型的内容生成;ChatGPT则是一个具体的产品。简单可以这么理解:AIGC是平台,ChatGPT是平台上的某个软件。

结合人工智能的演进历程,AIGC发展大致分三个阶段[人工智能行业生成内容(AIGC)白皮书(2022年)(地址:https://www.vzkoo.com/document/20220907cc987d2511ffc7c895ed6dd4.html?spm=ata.21736010.0.0.56075d51YB56mA)]:

  • 早期萌芽阶段(1950s-1990s)

早期萌芽阶段(1950s-1990s),受限于当时的科技水平,AIGC仅限于小范围实验。

  1. 1957 年,莱杰伦·希勒和伦纳德·艾萨克森完成历史第一支由计算机创作的弦乐四重奏《伊利亚克组曲》。

  2. 1966年,约瑟夫·魏岑鲍姆和肯尼斯·科尔比开发了世界第一款可人机对话的机器人Eliza。

  3. 80年代中期,IBM基于(Hidden Markov Model,HMM)创造了语音控制打字机Tangora。

  4. 80年度末-90年度中,由于高昂系统成本无法带来可观的商业化变现,AIGC未取得重大突破。

  • 沉淀积累阶段(1990s-2010s)

沉淀积累阶段(1990s-2010s),AIGC从实验性向实用性逐渐转变。

  1. 2006年,深度学习算法取得重大突破,及图形处理器(GPU)、张量处理器(TPU)等算力设备性能不断提升互联网规模膨胀提供海量训练数据,但AIGC仍受限算法效率,应用及效果有待提升。

  2. 2007年,世界第一部完全由人工智能创作的小说《1 The Road》问世,虽其可读性不强,但象征意义远大于实际意义。

  3. 2012年,微软公开展示了一个全自动同声传译系统,基于深层神经网络(Deep Neural Network,DNN)可以自动将英文演讲者的内容通过语音识别、语言翻译、语音合成等技术生成中文语音。

  • 快速发展阶段(2010s至今)

快速发展阶段(2010s至今),深度学习模型不断迭代,AIGC突破性发展。

  1. 2014年,随着以生成式对抗网络(Generative Adversarial Network,GAN)为代表深度学习算法的提出和迭代更新,AIGC迎来了新时代,生成内容百花齐放,效果逐渐逼真直至人类难以分辨。

  2. 2017年,微软人工智能少女“小冰”推出了世界首部100%由人工智能创作的诗集《阳光失了玻璃窗》。

  3. 2018年英伟达发布了StyleGAN模型可以自动生成图片,目前已经发展到了第四代模型StyleGAN-XL,其生成的高分辨率图片让人难以分辨真假。

  4. 2019 年,DeepMind 发布了 DVD-GAN 模型用以生成连续视频,在草地、广场等明确场景下表现突出。

  5. 2021 年,OpenAI 推出了 DALL-E 并于一年后推出了升级版本 DALL-E-2,主要应用于文本与图像的交互生成内容,用户只需输入简短的描述性文字,DALL-E-2 即可创作 出相应极高质量的卡通、写实、抽象等风格的绘画作品。

  6. 2022年,12月OpenAI的ChatGPT在推出,两个月后用户数量就突破1亿了。在文本生成、代码生成与修改、多轮对话等领域,已经展现了大幅超越过去AI 问答系统的能力。

  7. 随后各大厂也纷纷卷入AIGC领域(百度“文新一言”、阿里“通义千问”、商汤“商量”SenseChat等),涌现运用AI于写作、编曲、绘画和视频制作等创意领域。目前 AIGC 技术可以自动生成文字、图片、音频、视频,甚至 3D模型和代码,在搜索引擎、艺术创作、影音游戏,以及金融、教育、医疗、工业等领域的应用前景十分广阔。

  8. 据 TBanic Date 估计,到 2025 年人工智能生成数据占比将达到 10%。

大模型与AIGC的关联

大模型(Large Models)与AIGC(人工智能生成内容)之间存在密切的关联,AIGC依赖于大型的人工智能模型来生成高质量的内容。它们是人工智能技术发展的两个重要方面。简单来说:

  1. 技术基础:大模型是实现AIGC的重要技术基础之一。大模型通常经过训练,以从海量数据中学习语言、图像或音频的模式。这些模型能够理解和模仿人类创作的风格和结构,从而在不同的领域中生成新的内容。例如,使用大模型可以生成文本、图像等内容,这些都是AIGC的核心应用场景。

  2. 性能提升:随着大模型的发展,其生成内容的能力也在不断提高,使得AIGC的质量更加逼真和丰富,从而拓展了应用范围。

  3. 协同工作:在某些情况下,大模型可能需要与其他技术(如计算机视觉或自然语言理解)结合使用,共同为AIGC服务。

  4. 产业影响:大模型的广泛应用推动了AIGC相关产业的发展,AIGC利用这些模型在媒体、娱乐、教育、科研和商业领域中创造价值。

总的来说,大模型和AIGC相互促进、共同发展,形成了一个紧密联系的技术生态系统。在这个系统中,大模型提供了底层的技术支持,而AIGC则代表了一种实际的应用形式。

大模型概述

大模型的定义和特点

大模型(Large Models)在人工智能(AI)和机器学习(ML)领域,通常指的是具有大量参数的(通常包含数百万到数十亿甚至更多的参数)、复杂计算结构和强泛化能力的机器学习模型。这类模型往往是基于神经网络,尤其是深度神经网络,包括但不限于深度卷积神经网络(CNNs)、循环神经网络(RNNs)、长短期记忆网络(LSTMs)和Transformer架构。

其主要特点包括:

  1. 大量参数:大模型拥有庞大的参数量,通常包含数百万到数十亿甚至更多的参数,远超过传统的小型模型。使其具备极高的表达能力,能够模拟和学习非常复杂的函数关系。

  2. 强大的学习能力:由于参数量巨大,这些模型具有强大的学习和泛化能力,能够在各种任务上达到或超越人类的表现。

  3. 大数据集&计算资源密集:为了训练这些模型避免过拟合,并充分利用其学习能力,需要大量的训练数据。且需要大量的计算资源进行训练,包括高性能硬件GPU集群和大量的电力。

  4. 预训练和微调:大多数大模型采用两阶段的学习过程,首先在大量的无标注数据上进行预训练,然后在特定任务的数据集上进行微调,以获得更好的性能。

  5. 自我监督学习:许多大模型通过自我监督学习来提高其泛化能力,这种学习方法不需要人工标签,而是让模型自己从输入数据中学习到有用的特征。

  6. 上下文敏感性:大模型在处理自然语言理解和生成任务时,能考虑到更多的上下文信息,从而生成更加准确和流畅的文本。因此在实践大模型过程中要尽可能输入足够的上下文信息来提高结果的准确度。

  7. 解释性的挑战:由于模型的复杂性,理解模型的决策过程和内部工作机制是具有挑战性的,这通常被称为模型的解释性或透明度问题。

典型大模型举例

国际:

组织
模型/应用
备注

OpenAI

GPT-1/GPT-2/GPT-3

  • GPT-1:1.17亿参数;5GB预训练数据

  • GPT-2:15亿参数;40GB预训练数据

  • GPT-3:1750亿参数;570GB预训练数据

OpenAI

GPT-4

  • 加入图片功能,对外开放

  • 更愿意调用自己的外部知识

  • 有更强的逻辑推理能力

  • 体验地址:https://chat.openai.com/

Google

LaMDA

  • 谷歌推出的基于Transformer架构的大语言模型

  • 137B参数

  • 独特之处在于采用了对话式的交互方式,让用户能够更加自然地与计算机进行交流

Google

PaLM-E

  • 拥有5400亿个参数

  • 独特之处在于可将语言模型和视觉模型结合起来,实现多模态理解与生成。

Meta

PaLM-A

  • 基于PaLM架构

  • 可应用于多种场景,包括文本分类、问答系统等

Meta

LLaMA

  • 7B-65B参数

微软

Windows Copilot

  • 集中式 AI 协助的 PC 平台,高效的个人助理

国内:

组织
模型/应用
备注
复旦大学

MOSS

  • 160亿参数的支持中英双语的对话大语言模型

  • 国内首个类ChatGPT模型

  • 体验地址:https://moss.fastnlp.top/

阿里

通义千问

  • 内测 https://bazinga.aliyun-inc.com/

  • 公开 https://tongyi.aliyun.com/

清华大学

ChatGLM

  • 开源模型

  • https://github.com/THUDM/ChatGLM-6B

华为

盘古

  • 国内首个全栈自主的AI大模型,有盘古NLP大模型(对话问答,代码生成,文案生成,Versatile,NL2SQL)、 盘古CV大模型,盘古多模态大模型(图形生成,图像编辑,3D生成),盘古预测大模型,盘古科学计算大模型等

  • 体验地址:https://pangu.huaweicloud.com/index.html?ref=openi.cn

商汤

“商量”SenseChat

  • 体验地址:https://chat.sensetime.com/wb/

腾讯

混元

  • 具备强大的中文创作能力,复杂语境下的逻辑推理能力

  • 超1000亿参数规模,预训练语料超2万亿tokens

  • 体验地址:https://hunyuan.tencent.com/

科大讯飞

星火认知

  • 拥有跨领域的知识和语言理解能力,能够基于自然对话方式理解与执行任务。

  • 体验地址:https://xinghuo.xfyun.cn/

百川智能

Baichuan-7B、Baichuan-13B

  • 开源可免费商用的百川大模型

  • 体验地址:https://www.baichuan-ai.com/home

百度

文心一言

2023.10.17 文心大模型4.0正式发布

  • 体验地址:https://yiyan.baidu.com/

  • 文心大模型的4.0正式发布:在理解、生成、逻辑、记忆这四大能力上明显的提升

【注】更多模型可从huggingface模型平台查看 ;

huggingface国内镜像(地址:https://aliendao.cn/models#/)

总结来看:

  1. 模型演进方向:模型参数规模更大、多模态支持演进

  2. 技术成熟度:国内整体能力尚处在追赶GPT3.5阶段,部分中文能力上逼近GPT3.5(见下附图),与国外有一定差距

图片

【附】中文能力上10月 SuperCLUE 评测排名

AIGC应用探索

业务背景

笔者所在业务存在多国家多语种的千万级别的海外特色供给,因多语种翻译、商品信息不足、供应商能力等问题导致大量商品属性缺失、图片素材质量低;导致用户理解难、转化低、万求高。面对极大品量,运营手动仅可补全少量头部商品,无法全量优化。在AI技术成熟的背景下,考虑采用AIGC的方式对商品的属性、卖点、素材图片、场景图等信息进行补全及优化。

AIGC技术落地过程

作为一名业务技术开发,必须时刻围绕解决业务实际问题、技术创新驱动业务发展、快速响应市场变化等方面思考。在项目启动初期,我们首先基于探物香水标品场景2000个品批量AIGC素材,验证AIGC生产可行性。并经过多次脑暴探索,明确要做能够带来业务价值的、能够规模化的、能够突出国际垂类优势的AIGC应用。不做炫技的,落不了地的,没有业务感知的,不做通用的模型,算力(资源不允许)。

因此技术目标:搭建可复用可扩展、嵌入产供投链路的AIGC工程引擎;辅助业务快速落地AIGC场景。技术选型核心三步:1、模型底层选择;2、语言&框架选择;3、整体架构设计。

  • 模型选择

生文模型:初期我们采用GPT4、GPT3.5,后面也逐步引入了通义千问、vertex-PaLM2、claude2等。

生图模型:Stable Diffusion

成本方面估算:对于英文,1个token大约为4个英文字符或0.75个英文单词;对于中文,1中文约1-3个token。前期试验下来,探物品 cost=0.12元/品,是在业务可接受的范围。

测算token数网站:https://gpttools.com/estimator

  • 技术框架选择

综合开源社区活跃、可靠性,以及前期我们采用GPT模型适配度等多方面考虑,在模型层我们采用LangChain框架构建。

特点

LangChain

Llama-Index

Semantic Kernel(微软)

语言

Python ;Js/Ts

Python

TypeScript

可组合性




LLMs和Prompt管理

Chains(编排能力)


数据索引处理



任务管理(agents)



状态管理


Evaluation


文档

https://github.com/hwchase17/langchain

https://langchain.github.io/


https://github.com/microsoft/semantic-kernel

https://learn.microsoft.com/en-us/semantic-kernel/

【注】这些框架的目的是为 LLM 交互创建一个底层编排引擎

LangChain是一个基于大型语言模型(LLMs)构建应用的框架。它的核心思想是定义标准接口(可以自定义实现)& 可以将不同的组件“链接”起来,创建更高级的LLMs应用 ,类似spring全家桶。它可以帮助你实现聊天机器人、生成式问答、文本摘要等功能。


langchain-python

langchain-java

生态繁荣度和可靠性

高,社区活跃,github 4.7W+star

低,集团内部团队自建

扩展工具多样性

高度丰富的组件能力

极少

集团中间件兼容

和集团内部对接都需要进行框架层开发,比如hsf调用、数据库对接、服务化的能力

支持

集团容器兼容

支持

支持

集团LLM接口兼容

需要进行框架层对接,开发成本较低

有对接成本

开发成本

python数据处理(爬取、清洗、标注)、大模型交互python性价比更高,可快速搭建试错

跟数据处理和大模型交互更重,试错周期长

文档

langchain官网:https://python.langchain.com/en


【语言选择】:python+java结合的方式:

  1. 核心LLM执行引擎层:langchain-python选型具备优势(数据处理、大模型交互python性价比更高,也可快速搭建试错)

  2. 上层能力层可以采用java工程搭建(偏业务交互)

  • 整体架构设计

图片

数据层:弹内/弹外数据->自然语言文本处理->国际自营行业向量数据库

模型层:依赖集团内部/国际自营大模型能力

工程引擎:横向通用能力视角(生文、生图、会话等),支撑上层业务场景&嵌入生产投放链路

  1. LLM任务执行引擎层:基于langchain框架思想构建,将 LLM 模型与外部数据源进行连接,按场景编排链路,以及选择执行工具

  2. 图任务引擎:高清化能力、图像切割能力、背景替换合图能力

  3. prompt工程能力:prompt模板定义(Instruction、Input Data、Output Indicator、requirements等),动态化模板解析&填充能力(具备外部输入+规则动态拼接能力,串联生产链路)

  4. 任务调度能力:支持业务excel/圈品等多方式任务创建、任务试跑(准确性校验&费用预估等)、DTS任务调度执行能力

部分实践案例

建设批量文生文AIGC工程引擎,具备prompt模板提示&自动填充、任务试跑预览、费用预估、批量化AIGC生产等能力。已应用素材文生文、商品咨询FAQ生产等场景。

图片

建设图生图AIGC工程引擎,完成图片的超分处理、AI二创等工程建设,支持业务优化商品图片素材质量。已应用探物标品素材图生图等场景。

图片

其他应用场景

下面是本人收集的一些应用场景case,希望给大家更多的思考启发。

外部公司应用场景更广,这里简单列举下:

  1. AIGC+传媒:写稿机器人、采访助手、视频字幕生成、语音播报、视频锦集、人工智能合成主播等

  2. AIGC+电商:商品3D模型、虚拟主播、虚拟货场等

  3. AIGC+影视:AI剧本创作、AI合成人脸和声音、AI创作角色和场景、AI自动生成影视预告片等

  4. AIGC+娱乐:AI换脸应用(如FaceAPP、ZAO)、AI作曲(如初音未来虚拟歌姬)、AI合成音视频动画等

  5. AIGC+教育:AI合成虚拟教师、AI根据课本制作历史人物形象、AI将2D课本转换为3D

  6. AIGC+金融:通过AIGC实现金融资讯、产品介绍视频内容的自动化生产,通过AIGC塑造虚拟数字人客服等

  7. AIGC+医疗;AIGC为失声者合成语言音频、为残疾人合成肢体投影、为心理疾病患者合成医护陪伴等

  8. AIGC+工业:通过AIGC完成工程设计中重复的低层次任务,通过AIGC生成衍生设计,为工程师提供灵感等。

AIGC的实践挑战

笔者在AIGC应用的初探,技术挑战与机遇并存。下面给大家分享下AIGC的实践挑战以及部分解决思路。

技术挑战
问题
描述

解决方案及思路

知识量有限

比如GPT 4,21年前训练样本&通用语料训练,实时数据、垂直领域的数据&专属知识无法理解
无法"在外部世界行动",不论是搜索网页、调用 API 还是查找数据库
方案1.LLM+检索增强 :LLM的基础上通过检索等额外提供领域数据信息; 对于用户输入Query,结合业务数据中检索到的结果一起输入给LLM,则可以得到更精准的回答。
方案2.构建行业数据集对LLM进行微调,使模型本身具备输出行业信息的能力。(成本高且效果不佳)
【解决方案】:LLM+检索增强:OpenAI提出了chatgpt-retrieval-plugin 、 WebGPT ,开源社区提出了 DocsGPT 、 ChatPDF 、 基于langchain的检索增强chatbot 等等一系列解决方案

效果问题

部分场景效果不及预期
复杂逻辑推理能力不佳
对未见过的知识语料回答效果差
1、大模型+上下文学习技术(In-Context Learning), 设计合理的prompt模版
2、大模型+思维链提示(Chain-of-Thought Prompting),引入推理路径作为提示,激发大模型按照这种推理的模式生成出合理的结果
3、大模型+高质量标注样本+指令微调,提高模型对特定任务的泛化能力

延迟问题

一次完整问答大概 10s+ (用户200ms会有体感)
延迟主要受两个因素影响:模型和生成的令牌数量。
1、流式传输。请求中的设置stream: true使模型在令牌可用时立即开始返回令牌,而不是等待生成完整的令牌序列。它不会改变获取所有令牌的时间,但它会减少我们想要显示部分进度或将停止生成的应用程序的第一个令牌的时间。这可以是更好的用户体验和 UX 改进,因此值得尝试 流式传输。
2、基础设施。openai 美国。存在跨国网络延时
3、减小token 。例如使用更短的提示。
  • 交互式分词器工具来帮助估算成本
4、缓存:通过存储经常访问的数据,可以缩短响应时间,而无需重复调用 API。但在添加新信息时使缓存无效。

资源和性能

训练&微调都需要不少机器资源,目前GPU资源匮乏
部署资源,尤其是C端投放有高并发低延时要求,需要投入巨大成本在线serving
1、不训练基座模型,微调选择的基座模型选几B~几十B左右的LLM (如ChatGLM-6B)
2、曲线救国,线上不直接使用大模型serving,一种是利用大模型的embedding, 另一种是利用大模型来进行更多样本标注,来辅助小模型学习
伦理和监管问题

随着大模型在AIGC中的广泛应用,它们引发了关于数据隐私、版权、内容监管和偏见等问题的讨论。因此,大模型的使用不仅涉及技术层面,还涉及伦理和法律层面。

问题
描述
解决方案及思路

安全与合规

如政治敏感、违法犯罪、伦理道德等问题,尤其是LLM直接面向C端场景

1、建设安全校验模块能力
2、B端:生成素材数据清洗&人工审核

3、C端:生成式大模型必须通过SFT、RLHF等微调技术对大模型做适配微调,对齐人类的价值观;

政策问题

对于类GPT能力作为C端应用的开放程度需受限于政策

1、上线前需安全评估

【附】网信办411公布《生成式人工智能服务管理办法》征求意见稿,规范生成式人工智能产品(AIGC,如 ChatGPT)的开发和使用方式、行业的定义、对生产者的要求和责任等方面。意见稿中尤其提出:“利用生成式人工智能产品向公众提供服务前,应当按照《具有舆论属性或社会动员能力的互联网信息服务安全评估规定》向国家网信部门申报安全评估,并按照《互联网信息服务算法推荐管理规定》履行算法备案和变更、注销备案手续

C端应用上线需要过“双新评估”:

图片

AIGC的未来展望

业务侧规划:基于业务场景继续创新,扩大战果。更多还是聚焦基建和业务场景应用。

技术期待:AI大势浩浩荡荡,顺之者昌逆之者亡。YY几个未来的期待场景

  1. 增强的交互式AI:类似google最近发布的Gemini,改变当前信息交互方式,期待每个人都有专属钢铁侠中的人工智能“贾维斯”。

  2. 个性化和定制化内容:大数据+AIGC根据用户偏好、历史行为和实时反馈生成的个性化和定制化内容。

  3. 虚拟现实内容:AIGC多模态内容生成发展,图像、视频、音频等,未来说不定AI构建虚拟现实内容。

附录

  1. langchain 官方文档 https://python.langchain.com/en/latest/getting_started/getting_started.html

  2. langchain 快速入门中文版 https://github.com/liaokongVFX/LangChain-Chinese-Getting-Started-Guide

  3. 吴恩达llm教程 https://www.deeplearning.ai/short-courses/

  4. GPT开发应用利器:LangChain https://zhuanlan.zhihu.com/p/630253274

  5. LangChain使用调研 https://blog.csdn.net/benben044/article/details/130843326

  6. openai 原始接口文档 https://platform.openai.com/docs/api-reference/completions

相关文章:

大模型应用实践:AIGC探索之旅

随着OpenAI推出ChatGPT,AIGC迎来了前所未有的发展机遇。大模型技术已经不仅仅是技术趋势,而是深刻地塑造着我们交流、工作和思考的方式。 本文介绍了笔者理解的大模型和AIGC的密切联系,从历史沿革到实际应用案例,再到面临的技术挑…...

【.NET Core】异步编程模式

【.NET Core】异步编程模式 文章目录 【.NET Core】异步编程模式一、概述二、基于任务的异步模式(TAP)2.1 TAP模式命名、参数和返回类型2.2 TAP初始化异步操2.3 TAP如何编译2.4 手动生成TAP方法2.5 混合方法实现TAP2.6 TAP中Await挂起执行2.7 TAP中使用Y…...

macOS通过外置驱动器备份数据

通过外置驱动器备份数据(谨慎操作) 1.将外置驱动器连接到您的 Mac。驱动器容量应等于或大于您当前的启动磁盘。驱动器还应该是您可以抹掉的。 2.使用 macOS 恢复功能 抹掉外置驱动器,然后将 macOS 安装 到外置驱动器上。确保您选择的外置驱动…...

rtsp解析视频流

这里先说一下 播放rtsp 视频流,尽量让后端转换一下其他格式的流进行播放。因为rtsp的流需要flash支持,现在很多浏览器不支持flash。 先说一下这里我没有用video-player插件,因为它需要用flash ,在一个是我下载flash后,还是无法播放…...

【物联网】手把手完整实现STM32+ESP8266+MQTT+阿里云+APP应用——第3节-云产品流转配置

🌟博主领域:嵌入式领域&人工智能&软件开发 本节目标:本节目标是进行云产品流转配置为后面实际的手机APP的接入做铺垫。云产品流转配置的目的是为了后面能够让后面实际做出来的手机APP可以控制STM32/MCU,STM32/MCU可以将数…...

Spring Cloud Config相关问题及答案(2024)

1、什么是 Spring Cloud Config,它解决了哪些问题? Spring Cloud Config 是一个为微服务架构提供集中化外部配置支持的项目。它是构建在 Spring Cloud 生态系统之上,利用 Spring Boot 的开发便利性,简化了分布式系统中的配置管理…...

【Azure 架构师学习笔记】- Azure Databricks (4) - 使用Azure Key Vault 管理ADB Secret

本文属于【Azure 架构师学习笔记】系列。 本文属于【Azure Databricks】系列。 接上文 【Azure 架构师学习笔记】- Azure Databricks (3) - 再次认识DataBricks 前言 Azure Databricks有access token,是具有ADB内部最高权限的token。在云环境中这些高级别权限的sec…...

[每周一更]-(第50期):Go的垃圾回收GC

参考文章: https://juejin.cn/post/7111515970669117447https://draveness.me/golang/docs/part3-runtime/ch07-memory/golang-garbage-collector/https://colobu.com/2022/07/16/A-Guide-to-the-Go-Garbage-Collector/https://liangyaopei.github.io/2021/01/02/g…...

【嵌入式学习笔记-01】什么是UC,操作系统历史介绍,计算机系统分层,环境变量(PATH),错误

【嵌入式学习笔记】什么是UC,操作系统历史介绍,计算机系统分层,环境变量(PATH),错误 文章目录 什么是UC?计算机系统分层什么是操作系统? 环境变量什么是环境变量?环境变量的添加&am…...

【动态规划】LeetCode-10. 正则表达式匹配

10. 正则表达式匹配。 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。 ‘.’ 匹配任意单个字符‘*’ 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。 …...

lenovo联想拯救者8.8英寸掌上游戏机Legion Go 8APU1(83E1)原装出厂Windows11预装系统

链接:https://pan.baidu.com/s/1d586XWXcAWVxlLyV2Oku7Q?pwdd74t 提取码:d74t 系统自带所有驱动、出厂主题壁纸、Office办公软件、联想电脑管家等预装程序 所需要工具:16G或以上的U盘 文件格式:ISO 文件大小:…...

经典目标检测YOLO系列(一)复现YOLOV1(4)VOC2007数据集的读取及预处理

经典目标检测YOLO系列(一)复现YOLOV1(4)VOC2007数据集的读取及预处理 之前,我们依据《YOLO目标检测》(ISBN:9787115627094)一书,提出了新的YOLOV1架构,并解决前向推理过程中的两个问题,继续按照此书进行YOLOV1的复现。 经典目标检…...

Android Studio xml布局代码补全功能失效问题

这里写目录标题 前言:问题描述原因分析:解决方案:1.更新 Android Studio 版本2.原版本解决XML补全失效 小结 前言: 在开发过程中,你可能遇到很多奇奇怪怪的问题。Android Studio 编译器出现问题也是常有的事情&#x…...

算法每日一题:队列中可以看到的人数 | 单调栈

大家好,我是星恒 今天是一道困难题,他的题解比较好理解,但是不好想出来,接下来就让我带大家来捋一捋这道题的思路,以及他有什么特征 题目:leetcode 1944有 n 个人排成一个队列,从左到右 编号为 …...

报表控件Stimulsoft 2023回顾:都做了哪些产品的改变?

在2023年过去一年中,报表控件Stimulsoft 针各类控件都做了重大改变,其中新增了某些产品、同时加强了很多产品的性能和UI设计,更加符合开发者需求,下面就跟随小编一起来回顾,具体都有哪些↓↓↓ Stimulsoft Ultimate &…...

Mybatis缓存实现方式

文章目录 装饰器模式Cache 接口及核心实现Cache 接口装饰器1. BlockingCache2. FifoCache3. LruCache4. SoftCache5. WeakCache 小结 缓存是优化数据库性能的常用手段之一,我们在实践中经常使用的是 Memcached、Redis 等外部缓存组件,很多持久化框架提供…...

C#用StringBuilder高效处理字符串

目录 一、背景 二、使用StringBuilder便捷、高效地操作字符串 三、实例 1.源码 2.生成效果 四、实例中知识点 1.StringBuilder 构造函数 (1)定义 (2)重载 (3)StringBuilder() (4&…...

python开发案例教程-清华大学出版社(张基温)答案(4.2)

目录 练习 4.2 1. 代码分析题 2. 程序设计题 练习 4.2 1. 代码分析题 阅读下面的代码,给出输出结果。 (1) class A:def __init__(self,a,b,c):self.xabca A(3,5,7);b getattr(a,x);setattr(a,x,b3);print(a.x)18 (2&…...

【MATLAB】【数字信号处理】线性卷积和抽样定理

已知有限长序列:xk1,2,1,1,0,-3, hk[1,-1,1] , 计算离散卷积和ykxk*h(k) 。 程序如下: function [t,x] My_conv(x1,x2,t1,t2,dt) %文件名与函数名对应 %自写的卷积函数 x conv(x1,x2)*dt; t0 t1(1) t2(1); L length(x1) length(x2)-2; t t0:dt…...

什么是 MVVM ?

课堂笔记 什么是 MVVM ? MVVM 是一种架构模式,它最初是由微软的两位工程师在 2005 年的时候所提出的。 Model:Model代表的是你的数据View:视图,直接和用户打交道的ViewModel:ViewModel 是 View 和 Model…...

Redis(一)

1、redis Redis是一个完全开源免费的高性能(NOSQL)的key-value数据库。它遵守BSD协议,使用ANSI C语言编写,并支持网络和持久化。Redis拥有极高的性能,每秒可以进行11万次的读取操作和8.1万次的写入操作。它支持丰富的数…...

自动驾驶预测-决策-规划-控制学习(1):自动驾驶框架、硬件、软件概述

文章目录 前言:无人驾驶分级一、不同level的无人驾驶实例分析1.L2级别2.L3级别3.L4级别①如何在减少成本的情况下,实现类似全方位高精度的感知呢?②路侧终归是辅助,主车的智能才是重中之重:融合深度学习 二、无人驾驶的…...

SSM建材商城网站----计算机毕业设计

项目介绍 本项目分为前后台,前台为普通用户登录,后台为管理员登录; 管理员角色包含以下功能: 管理员登录,管理员管理,注册用户管理,新闻公告管理,建材类型管理,配货点管理,建材商品管理,建材订单管理,建材评价管理等功能。 用…...

js逆向第9例:猿人学第2题-js混淆-动态cookie1

题目2:提取全部5页发布日热度的值,计算所有值的加和,并提交答案 (感谢蔡老板为本题提供混淆方案) 既然题目已经给出了cookie问题,那就从cookie入手,控制台找到数据请求地址 可以看到如下加密字符串m类似md5,后面跟着时间戳 m=45cc41dcdb15159ebb50564635f8e362|1704301…...

[论文分享]TimesURL:通用时间序列表示学习的自监督对比学习

论文题目:TimesURL: Self-supervised Contrastive Learning for Universal Time Series Representation Learning 论文地址:https://arxiv.org/abs/2312.15709 代码地址:暂无 摘要 学习适用于各种下游任务的通用时间序列表示具有挑战性&…...

解决sublime中文符号乱码问题

效果图 原来 后来 问题不是出自encode文件编码,而是win10的字体问题。 解决方法 配置: { "font_face":"Microsoft Yahei", "dpi_scale": 1.0 } 参考自 Sublime 输入中文显示方框问号乱码_sublime中文问号-CSDN博…...

厚积薄发11年,鸿蒙究竟有多可怕

​12月20日中国工程院等权威单位发布《2023年全球十大工程成就》。本次发布的2023全球十大工程成就包括“鸿蒙操作系统”在内。入围的“全球十大工程成就”,主要指过去五年由世界各国工程科技工作者合作或单独完成且实践验证有效的,并且已经产生全球影响…...

pyDAL一个python的ORM(4) pyDAL查询操作

1 、简单查询 rows db(db.person.dept marketing).select(db.person.id, db.person.name, db.person.dept) rows db(db.person.dept marketing).select() rows db(db.person.dept marketing).select(db.person.ALL) rows db().select(db.person.ALL) / db(db.person).se…...

如何通过Python将各种数据写入到Excel工作表

在数据处理和报告生成等工作中,Excel表格是一种常见且广泛使用的工具。然而,手动将大量数据输入到Excel表格中既费时又容易出错。为了提高效率并减少错误,使用Python编程语言来自动化数据写入Excel表格是一个明智的选择。Python作为一种简单易…...

跟着cherno手搓游戏引擎【2】:日志系统spdlog和premake的使用

配置: 日志库文件github: GitHub - gabime/spdlog: Fast C logging library. 新建vendor文件夹 将下载好的spdlog放入 配置YOTOEngine的附加包含目录: 配置Sandbox的附加包含目录: 包装spdlog: 在YOTO文件夹下创建…...

电子商务网站功能需求/磁力屋 最好用

1&#xff1a;Mongostat MongoDB2.6版本 MongoDB3.0版本 2&#xff1a;db.setProfilingLevel(2):打开profiler 类似于MySQL的slow log Profiler默认是关闭的&#xff0c;你可以选择全部开启&#xff0c;或者有慢查询的时候开启。 db.setProfilingLevel(level,<slowms>) 0…...

泰安网站开发/怎样优化标题关键词

vsftpd简介vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序&#xff1b;特点是小巧轻快&#xff0c;安全易用&#xff1b;能让其自身特点得发挥和掌握&#xff0c;也然最主要的是会用&#xff1b;目前在开源操作系统中常用的FTPD套件主要有ProFTPD、PureFTPd和wuftpd等&am…...

张槎网站建设/百度关键词排名优化

作者&#xff1a;jason cnblogs.com/baizhanshi/p/7211802.html 之前栈长分享了重入锁的概念&#xff1a;《到底什么是重入锁&#xff0c;拜托&#xff0c;一次搞清楚&#xff01;》&#xff0c;今天现来深入了解下 Synchronized 与 ReentrantLock 的区别&#xff01; 可重入性…...

网站内容是什么/网站排名优化方法

要知道&#xff0c;要把一件事情做好&#xff0c;不管是做哪们技术还是办什么手续&#xff0c;明白这个事情的流程非常关键&#xff0c;它决定了这件事情的顺利进行与否。同样&#xff0c;我们学习FPGA开发数字系统这个技术&#xff0c;先撇开使用这个技术的基础编程语言的具体…...

wordpress提示没有/体验式营销经典案例

给%JAVA_HOME%\bin前面增加英文的点和分号 “.;”...

广州化妆品网站建设公司/游戏特效培训机构排名

为保证Windows XP系统安全&#xff0c;很多朋友都在公共电脑上设置了组策略的“只运行许可的Windows应用程序”项&#xff0c;以此来防范外来程序对系统的破坏。而疏忽大意或为了防范他人修改组策略&#xff0c;一些朋友干脆连“gpedit.msc”文件也一并排除在允许运行程序之外&…...