人工智能
文章平均质量分 82
用算法解决问题,专攻机器视觉、深度学习的落地,采用Tf、keras、caffe等框架嵌入C++、Python、Android中、全程源码开放。细致教学。
优惠券已抵扣
余额抵扣
还需支付
¥19.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
南七小僧
这个作者很懒,什么都没留下…
展开
-
python自动化测试工具selenium使用指南
selenium是网页应用中最流行的自动化测试工具,可以用来做自动化测试或者浏览器爬虫等。官网地址为:https://www.selenium.dev/。免费开源轻量级,不同语言只需要一个体积很小的依赖包支持多种系统,包括Windows,Mac,Linux支持多种浏览器,包括Chrome,FireFox,IE,safari,opera等支持多语言,包括Java,C,python,c#等主流语言支持分布式测试用例执行。原创 2024-07-17 00:35:40 · 18 阅读 · 0 评论 -
LangChain入门:使用Python和通义千问打造免费的Qwen大模型聊天机器人
LangChain 是一个用于开发由大型语言模型(Large Language Models,简称LLMs)驱动的应用程序的框架。它提供了一个灵活的框架,使得开发者可以构建具有上下文感知能力和推理能力的应用程序,这些应用程序可以利用公司的数据和APIs。这个框架由几个部分组成。LangChain 库:Python 和 JavaScript 库。包含了各种组件的接口和集成,一个基本的运行时,用于将这些组件组合成链和代理,以及现成的链和代理的实现。LangChain 模板。原创 2024-07-16 17:00:05 · 178 阅读 · 0 评论 -
树莓派使用蓝牙设置wifi网络
外链图片转存中…(img-BteK79oW-1721104143862)]在树莓派使用过程中,很多人都有遇到过这样的问题,经常由于工作场所变化,在无显示器和鼠标的情况下无法方便快捷对树莓派设置wifi网络。在物联网场景下,成熟的方案是使用蓝牙为设备设置网络,在本教程中,我想向您展示一种简单的方法,可以通过蓝牙仅使用Android手机为Raspberry Pi配置Wi-Fi网络。原创 2024-07-16 12:29:29 · 21 阅读 · 0 评论 -
入坑树莓派(2)——树莓派4B与手机蓝牙通信
现在继续开展下一步,尝试与手机通信,一开始是想弄wifi连接的,但发现基于wifi的APP比较难弄,为了降低开发的难度,又因为树莓派板子自带蓝牙模块,所以直接选用蓝牙连接手机通信。(1)安卓手机(我的是实验专用老机子HONOR 6X)先下载一个蓝牙调试器(苹果的按道理也可以,但是没探索用什么软件)(3)打开手机蓝牙调试器,搜索并连接树莓派,然后手机给树莓派发送文本数据,如下图,(3)直接打开手机的蓝牙,找到树莓派的蓝牙名称,点击配对,即可。框框中的两行,第一行增加 -C,第二行直接添加,如下面所示,原创 2024-07-16 12:20:22 · 76 阅读 · 0 评论 -
向量数据库Faiss的搭建与使用
向量数据库Faiss是Facebook AI研究院开发的一种高效的相似性搜索和聚类的库。它能够快速处理大规模数据,并且支持在高维空间中进行相似性搜索。本文将介绍如何搭建Faiss环境并提供一个简单的使用示例。原创 2024-07-15 21:40:37 · 3 阅读 · 0 评论 -
LangChain-RAG必备:向量数据库如何CRUD
*CRUD只是操作向量数据库的基础手段,想要用好RAG必须在CRUD的基础上掌握语义检索的相关原理。**比如文档拆分时需要按语义尽可能的拆分为小的单元,而在召回时,则需要基于召回的单元尽可能的补充完整的窗口上下文,才能在最终使用LLM时得到尽可能好的结果。这些都需要在crud的基础上执行一些额外操作,我将在下次给大家讲述,希望你持续关注。以上就是本文的全部内容,我希望你能从中学到一些有用的知识,也欢迎你在评论区留下你的反馈或问题。😊。原创 2024-07-15 21:34:38 · 123 阅读 · 0 评论 -
LLama Factory+ModelScope实战——使用 Web UI 进行监督微调
我们在浏览器地址栏中输入 http://localhost:7860 进入 Web 界面,接着可以在“语言/Language”选项中,将界面的语言修改为“中文/zh”,然后在模型名称中选择“Yi-6B”,在模型路径中选择“01ai/Yi-6B”。适配器指的是 lora 微调的输出结果,可以理解为将预训练模型的输出转换为目标形式的组件,需要搭配预训练模型一起使用。注意,在模型的微调过程中,使用较小的保存间隔可能会在训练的过程中保存大量的检查点(checkpoint),占用大量的磁盘空间。原创 2024-07-11 16:41:59 · 222 阅读 · 0 评论 -
11种方法用Python下载文件,建议收藏!!
现在,为了启动协同程序,我们必须使用asyncio的get_event_loop()方法将协同程序放入事件循环中,最后,我们使用asyncio的run_until_complete()方法执行该事件循环。在本节中,你将学习如何**使用requests从一个URL下载文件,该URL会被重定向到另一个带有一个.pdf文件的URL。我们已经将其设置为1024字节,接着遍历每个块,**并在文件中写入这些块,直到块结束。在这段代码中,我们使用了urlretrieve方法并传递了文件的URL,以及保存文件的路径。原创 2024-07-05 13:46:31 · 84 阅读 · 0 评论 -
Android Studio 解决AAPT: error: file failed to compile
脚本遍历加载页面的DOM元素的信息,然后将其用于构建页面的表示形式。换句话说,它实际上并不截取页面的屏幕截图,而是根据它从DOM读取的属性来构建页面的表示形式。结果,它只能正确呈现它理解的属性,这意味着有许多CSS属性无效,。原创 2024-07-01 13:33:28 · 253 阅读 · 0 评论 -
在vue项目中html2canvas的使用和遇到的问题
脚本遍历加载页面的DOM元素的信息,然后将其用于构建页面的表示形式。换句话说,它实际上并不截取页面的屏幕截图,而是根据它从DOM读取的属性来构建页面的表示形式。结果,它只能正确呈现它理解的属性,这意味着有许多CSS属性无效,。原创 2024-06-30 15:31:48 · 76 阅读 · 0 评论 -
第十三章:Prompting 情感分析
本文我们将运用 Transformers 库来完成情感分析任务,并且使用当前流行的 Prompting 方法。Prompting 方法的核心思想就是借助模板将问题转换为与预训练任务类似的形式来处理。原创 2024-06-29 06:06:06 · 94 阅读 · 0 评论 -
第十二章:抽取式问答
本文我们将运用 Transformers 库来完成抽取式问答任务。自动问答 (Question Answering, QA) 是经典的 NLP 任务,需要模型基于给定的上下文回答问题。抽取式问答模型通常采用纯 Encoder 框架(例如 BERT),它更适用于处理事实性问题,例如“谁发明了 Transformer 架构?”,这些问题的答案通常就包含在上下文中;而生成式问答模型则通常采用 Encoder-Decoder 框架(例如 T5、BART),它更适用于处理开放式问题,例如“天空为什么是蓝色的?原创 2024-06-29 06:05:36 · 44 阅读 · 0 评论 -
第十一章:文本摘要任务
本文我们将运用 Transformers 库来完成文本摘要任务。与我们上一章进行的翻译任务一样,文本摘要同样是一个 Seq2Seq 任务,旨在尽可能保留文本语义的情况下将长文本压缩为短文本。虽然 Hugging Face 已经提供了很多,但是它们大部分只能处理英文,因此本文将微调一个多语言文本摘要模型用于完成中文摘要:为新浪微博短新闻生成摘要。文本摘要可以看作是将长文本“翻译”为捕获关键信息的短文本,因此大部分文本摘要模型同样采用 Encoder-Decoder 框架。原创 2024-06-29 06:04:52 · 17 阅读 · 0 评论 -
第十章:翻译任务
本章我们将运用 Transformers 库来完成翻译任务。翻译是典型的序列到序列 (sequence-to-sequence, Seq2Seq) 任务,即对于每一个输入序列都会输出一个对应的序列。理论上我们也可以将本章的操作应用于完成这些 Seq2Seq 任务。翻译任务通常需要大量的对照语料用于训练,如果我们有足够多的训练数据就可以从头训练一个翻译模型,但是微调预训练好的模型会更快,例如将 mT5、mBART 等多语言模型微调到特定的语言对。原创 2024-06-29 06:03:10 · 37 阅读 · 0 评论 -
第九章:序列标注任务
我们的第一个实战任务是序列标注 (Sequence Labeling/Tagging),其目标是为文本中的每一个 token 分配一个标签,因此 Transformers 库也将其称为 token 分类任务。常见的序列标注任务有(Named Entity Recognition) 和命名实体识别 NER 旨在识别出文本中诸如人物、地点、组织等实体,即为所有的 token 都打上实体标签(包含“非实体”)。词性标注 POS 旨在为文本中的每一个词语标注上对应的词性,例如名词、动词、形容词等。原创 2024-06-29 06:02:33 · 45 阅读 · 0 评论 -
第八章:快速分词器
通过前面章节的介绍,我们已经对 Transformers 库有了基本的了解,并且上手微调了一个句子对分类模型。从本章开始,我们将通过一系列的实例向大家展示如何使用 Transformers 库来完成目前主流的 NLP 任务。在开始之前,我们先回顾一下在第五章《模型与分词器》中已经介绍过的分词器 (Tokenizer),进一步了解分词器的一些高级功能。原创 2024-06-29 06:00:43 · 41 阅读 · 0 评论 -
第七章:微调预训练模型
在上一篇中,我们介绍了使用 Transformers 库必须要掌握的 Pytorch 知识。本文我们将正式上手微调一个句子对分类模型,并且保存验证集上最好的模型权重。原创 2024-06-29 05:59:01 · 27 阅读 · 0 评论 -
第六章:必要的 Pytorch 知识
在上一章中,我们介绍了Model类和Tokenizers类,尤其是如何运用分词器对文本进行预处理。Transformers 库建立在 Pytorch 框架之上(Tensorflow 的版本功能并不完善),虽然官方宣称使用 Transformers 库并不需要掌握 Pytorch 知识,但是实际上我们还是需要通过 Pytorch 的DataLoader类来加载数据、使用 Pytorch 的优化器对模型参数进行调整等等。原创 2024-06-29 05:53:06 · 315 阅读 · 0 评论 -
第五章:模型与分词器
本章我们将介绍 Transformers 库中的两个重要组件:**模型**和**分词器**。## 5.1 模型除了像之前使用 `AutoModel` 根据 checkpoint 自动加载模型以外,我们也可以直接使用模型对应的 `Model` 类,例如 BERT 对应的就是 `BertModel`:```from transformers import BertModelmodel = BertModel.from_pretrained("bert-base-cased")```注意,原创 2024-06-29 05:52:08 · 8 阅读 · 0 评论 -
第四章:开箱即用的 pipelines
预训练模型的本体只包含基础的 Transformer 模块,对于给定的输入,它会输出一些神经元的值,称为 hidden states 或者特征 (features)。对于 NLP 模型来说,可以理解为是文本的高维语义表示。可以看到,输出中包含两个键 input_ids 和 attention_mask,其中 input_ids 对应分词之后的 tokens 映射到的数字编号列表,而 attention_mask 则是用来标记哪些 tokens 是被填充的(这里“1”表示是原文,“0”表示是填充字符)。原创 2024-06-29 05:51:07 · 11 阅读 · 0 评论 -
第三章:注意力机制
正如在前两章所说,自从 2017 年 Google 发布之后,各种基于 Transformer 的模型和方法层出不穷。尤其是 2018 年,OpenAI 发布的和 Google 发布的模型在几乎所有 NLP 任务上都取得了远超先前最强基准的性能,将 Transformer 模型的热度推上了新的高峰。Transformer 模型之所以如此强大,是因为它抛弃了之前广泛采用的循环网络和卷积网络,而采用了一种特殊的结构——注意力机制 (Attention) 来建模文本。原创 2024-06-29 05:49:12 · 28 阅读 · 0 评论 -
第一章:自然语言处理
自然语言处理 (NLP, Natural Language Processing) 又称为计算语言学,是一门借助计算机技术研究人类语言的科学。虽然 NLP 只有六七十年的历史,但是这门学科发展迅速且取得了令人印象深刻的成果。在上手实践之前,我想先花点时间给大家介绍一下 NLP 的发展历史和 Transformer 模型相关的概念,这对于后期理解模型结构以及自己设计方法会有很大的帮助。本章将带大家快速穿越 NLP 的发展史,见证从专家系统到 BERT 模型的巨大变化。原创 2024-06-29 05:06:01 · 204 阅读 · 0 评论 -
第二章:Transformer 模型
Transformer 模型本质上都是预训练语言模型,大都采用自监督学习 (Self-supervised learning) 的方式在大量生语料上进行训练,也就是说,训练这些 Transformer 模型完全不需要人工标注数据。自监督学习是一种训练目标可以根据模型的输入自动计算的训练方法。例如下面两个常用的预训练任务:基于句子的前 n 个词来预测下一个词,因为输出依赖于过去和当前的输入,因此该任务被称为因果语言建模。原创 2024-06-29 05:05:14 · 131 阅读 · 0 评论 -
如何在本地部署ChatTTS? 完美部署 简单几步 cpu gpu cuda
本文介绍了ChatTTS的本地化部署方式,并对文本的切割合成和音色的固定,以及背景音的增加进行了相应介绍。对于ChatTTS,未来可以考虑更多的应用场景。原创 2024-06-18 13:22:59 · 733 阅读 · 0 评论 -
手把手教学!新一代 Kaldi: TTS Runtime ASR 实时本地语音识别 语音合成来啦
如果你希望从源码编译,或者你希望使用其他语言的 API, 比如 C/C++/Go/Kotlin/C#/Swift 等, 请参考文档。本文使用的测试模型,都是来源于网上开源的。我们也提供一个单一的 Windows exe 程序,双击就能运行,无须安装。目前使用的模型源于网上开源的 预训练模型,后续我们也会在。的意思是使用第10个说话人的声音。下面两个表格总结了本文用到的模型文件下载链接。注:本文使用的模型为网上开源的预训练模型。注:本文使用的模型为网上开源的预训练模型。注:你仍然需要自己单独下载模型文件。原创 2024-06-17 01:19:37 · 157 阅读 · 0 评论 -
树莓派等Linux开发板上使用 SSD1306 OLED 屏幕,bullseye系统 ubuntu,debian
Raspberry Pi OS Bullseye 最近发布了,随之而来的是许多改进,但其中大部分都在引擎盖下。没有那么多视觉差异,最明显的可能是新的默认桌面背景,现在是大坝或湖泊上的日落。通过这次操作系统升级,我们还遇到了常见的错误和软件不兼容。这些导致我之前用于的不再正常工作。如果按照上一教程操作,则会出现大量错误。因此,在本教程中,我将带您完成安装和设置过程,以获得在Raspberry Pi OS Bullseye上运行相同的128×64 I2C OLED显示器。原创 2024-06-15 01:56:16 · 273 阅读 · 0 评论 -
构建知识图谱:从技术到实战的完整指南
知识图谱是一种通过图形结构表达知识的方法,它通过节点(实体)和边(关系)来表示和存储现实世界中的各种对象及其相互联系。这些实体和关系构成了一个复杂的网络,使得知识的存储不再是孤立的,而是相互关联和支持的。知识图谱根据其内容和应用领域可以分为多种类型。例如,通用知识图谱旨在覆盖广泛的领域知识,如 Google 的 Knowledge Graph;而领域知识图谱则专注于特定领域,如医疗、金融等。此外,根据构建方法的不同,知识图谱还可以分为基于规则的、基于统计的和混合型知识图谱。原创 2024-06-13 14:56:32 · 164 阅读 · 0 评论 -
知识图谱构建三要素:实体、关系与属性技术与实战全解析
知识图谱,作为人工智能和数据科学领域的重要组成部分,正在逐渐成为信息组织和智能处理的核心技术。它能够结构化地表示和整合大量的信息和知识,为机器学习模型提供丰富的语义信息。知识图谱的三大基本要素——实体(Entity)、关系(Relationship)和属性(Attribute)——构成了其基础框架。这些要素不仅是构建知识图谱的基石,而且在实际应用中发挥着至关重要的作用。实体(Entity)在知识图谱中扮演着至关重要的角色。它们是构成知识图谱的基本单位,代表着现实世界或概念世界中的具体对象。原创 2024-06-13 14:54:00 · 360 阅读 · 0 评论 -
嵌入式树莓派4,成功安装ollama软件,内存4G,推荐使用命令行界面安装,使用raspi-config配置wifi,运行速度飞快
(3):树莓派4,成功安装ollama软件,内存4G,安装命令行版本,使用raspi-config配置wifi,速度9 t/s。原创 2024-06-11 22:00:53 · 115 阅读 · 0 评论 -
huggingface无法下载 翻墙也不行,一行命令解决,国内镜像
指定临时环境变量,引导至国内源。原创 2024-06-11 02:29:02 · 736 阅读 · 2 评论 -
在安装MeloTTS时遇到的一些问题,解决python3 -m unidic download 时 unidic无法下载的问题
3.打开文件 /usr/local/lib/python3.9/site-packages/unidic/download.py,找到93行的download_version函数,将函数里除了download_and_clean()以外的代码全部注释掉。2.下载好的unidic-3.1.0.zip文件拷贝到目录:/usr/local/lib/python3.9/site-packages/unidic/,并且重命名它为unidic.zip。[HTML]: 实操代码在92行。[HTML]: 实操在62行。原创 2024-06-11 02:08:13 · 121 阅读 · 0 评论 -
从零开始利用树莓派+扬声器,实现简单的蓝牙音箱,手机连接放歌
树莓派4B自带蓝牙和Wifi, 无需外接 USB dongle;蓝牙最常见的应用是近距离传输数据,比如蓝牙传文件,蓝牙音箱等。正好家里有个普通的usb供电的便携音箱;本文用树莓派蓝牙+普通音箱,实现简单的蓝牙音箱。怎样理解这三层:可以类比Linux网络层:ALSA 类似网络驱动框架A2DP 类似TCP/UDP层PulseAudio 类似HTTP层的服务器,类比Apache而蓝牙连接类似http连接和会话;原创 2024-06-09 20:54:52 · 754 阅读 · 0 评论 -
在Ubuntu Linux 树莓派中通过systemd或rc.local开机自启动、延迟启动服务
本文以一个简单的python程序为例,介绍开机程序自启动的两种方式,以及其中可能遇到的问题。python程序myled.py如下,保存路径为/home/pi/myled.py。原创 2024-06-09 20:00:39 · 35 阅读 · 0 评论 -
树莓派 linux安装PyBlueZ报错:fatal error: bluetooth/bluetooth.h: No such file or directory
解决方案,先安装这个库,在pip。原创 2024-06-08 20:25:06 · 128 阅读 · 0 评论 -
树莓派 linux ARM 如何更新libc库
到 http://www.gnu.org/software/libc/libc.html 或 Index of /pub/gnu/libc下载你要的LIBC库。如果你的开发板用的是Ubunt的根文件系统,那么恭喜你,你要更新LIBC库就变得很简单。笔者采用的是nfs根文件系统更新ARM上的库。3. 拷贝PC使用的交叉编译工具的arm-linux-gnueabihf/libc/usr/lib 的所有。/arm/lib/arm-linux-gnueabi/ -d //-d 代表拷贝软连接。原创 2024-06-07 16:42:57 · 170 阅读 · 0 评论 -
winscp无法上传,删除,修改文件并提示权限不够的分析
在使用WinSCP远程连接服务器时,想要删除项目的文件夹,但是当时创建该文件的权限是root,现在登陆的账号为自己的普通账号,所以无法删除;(2)可以参考上面的链接使用工具putty.exe进行删除,或者直接在xshell里面升级为root直接进行删除(文件多了还是有点复杂)。(1)winscp以root模式登入进行操作,但是winscp是不推荐用root登入的。最后点击确定,然后点击保存,在进行登入就可以完成文件操作了!输入主机名(即IP地址)、用户名和密码,然后点击高级。在箭头所指位置输入sudo +原创 2024-06-06 02:44:25 · 123 阅读 · 0 评论 -
flask自动生成swagger的api接口文档
acs.marshal_with(token):把token这个model放入相应体中,也是可以做validate的,如果响应体写了,那么最后return的时候必须以键值对的形式return该model的参数名。model:请求内容,或者是响应内容,都可以用model描述,请求内容与@acs.doc(body=model)联用,响应内容与@acs.marshal_with(token) 联用。api.namespace :是命名空间,很多接口都有get,post,命名空间把他们分隔开,可理解为蓝图。原创 2024-05-28 19:41:43 · 42 阅读 · 0 评论 -
一键接入大模型:One-Api本地安装配置实操,POSTMAN、APIFOX调用CURL
最近准备学习一下OpenAI的Api申请麻烦,所以想通过One-api对接一下国内的在线大模型,先熟悉一下的基本用法,本篇文章重点记录一下OneApi安装配置的过程。讯飞星火有3.5模型的200w个人免费token,可以拿来学习。讯飞星火申请链接通过标准的OpenAI API格式访问所有的大模型OpenAI ChatGPT 系列模型(支持 Azure OpenAI API)Anthropic Claude 系列模型 (支持 AWS Claude)Google PaLM2/Gemini 系列模型。原创 2024-05-27 18:59:19 · 585 阅读 · 1 评论 -
vueJS React前端实现AI问答小助手(1)——播放语音
第一步是实现语音播放功能,也就是将从TTS(Text-to-speech)文字转语音服务中获取到的二进制语音文件播放出来。只是在微信等浏览器环境下,存在一些更严格的策略限制,比如用户操作大约5秒以后才创建出来的Audio元素仍然无法自动播放。在产品的业务流程中,用户会先按住底部语音按钮,并在松开时发送用户语音消息。然后AI进行回复,同时播放语音。然后,在需要播放语音的地方,使用这个播放器组合式函数即可。首先遇到的第一个坑,是浏览器的策略限制禁止自动播放。因此,我们的使用场景理论上是满足自动播放的条件的。原创 2024-05-22 16:32:05 · 94 阅读 · 0 评论 -
VueJS ReactJS实现AI问答小助手(2)——流式TTS文字转实时语音播放
文档只给出了一些配置项的说明,以及java端的代码示例,但没有web端的。所以这篇笔记可以给web开发者参考。首先,AI答复的消息是通过SSE()返回的。SSE请求的实现流程后续有时间再填坑。代码实现中,使用了一个onReply回调来执行后续动作。这个方法会连续多次执行,直到消息结束。SSE是单向的,只能由服务端向客户端推送,而流式TTS这种双向通信需要通过socket来实现。socket的实现,原本是打算用封装了心跳、房间等概念的socket.io。原创 2024-05-22 16:13:38 · 603 阅读 · 1 评论