自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

武子康

无限进步

  • 博客(101)
  • 收藏
  • 关注

原创 Rust-01 Hello Rust 10分钟上手编写第一个Rust程序 背景介绍 发展历史 环境配置 升级打怪的必经之路

Rust 是一种多范式、通用的编程语言,强调性能、类型安全和并发性。它通过一个称为“借用检查器”的机制在编译时追踪所有引用的对象生命周期,以强制实现内存安全,即确保所有引用都指向有效的内存,而不需要垃圾收集器。Rust 被设计为系统级编程语言,具有以下几个关键特性:- 内存安全:Rust 强制执行内存安全,无需垃圾收集器,通过所有权和生命周期的概念来管理内存- 并发安全:Rust 的设计旨在安全地处理并发操作,避免数据竞争- 性能:Rust 提供与 C 相当的性能,支持细粒度的内存控制- 跨平台:R

2024-04-22 11:20:57 342

原创 Ubuntu18 服务器 更新升级CUDA版本 pyenv nvidia ubuntu1804 原11.2升级到PyTorch要求12.1 全过程详细记录 apt update

我这里有一台 从算法组借用的GPU服务器,里边是 两张。使用命令查看当前的nvidia-smi。Ubuntu18 服务器 更新升级CUDA版本 pyenv nvidia ubuntu1804 原11.2升级到PyTorch要求12.1 全过程详细记录 apt update。根据你的操作系统内容选择。这里可以看到,需要的`CUDA`为`12.1`但是刚才我们`nvidia-smi`看到的`CUDA是11.2`。所以我们需要`升级CUDA`版本。我们需要在官方找到`12.1`的对应要求。

2024-04-22 10:29:35 605

原创 Midjourney-04 收集Prompt 百变小樱魔法卡 ClearCard 透明牌 提示词实践 Niji 5 Niji6 V6 详细记录 多种风格 附带文本关键词

由于我个人比较喜欢小樱,既然有这么好的机会,我自然是要好好尝试一下了!下面我们将记录一批实践过的结果,方便我们后续做查阅、借鉴、使用。木之本樱穿着透明卡套装,周围环绕着新的透明卡,魔杖中散发着充满活力的魔法能量。 友枝市的背景,樱花盛开,空中有魔法阵和字形,CLAMP的艺术风格,明亮多彩,带着一丝奇思妙想。

2024-04-21 15:30:32 291

原创 Midjourney-03 收集Prompt 动漫风格 樱花 武士 魔法少女 自然 机甲 拟人动物 歌剧场景 星际飞船 神秘森林 精灵 详细记录 超多图片 多种风格 附带文本 关键词

上一节我们注册,(已开了会员),并生成了我们的第一批图片。下面我们将记录一批实践过的结果,方便我们后续做查阅、借鉴、使用。很多数据都是来源自互联网的,调试一下并且生图,我觉得效果还不错。Midjourney-02 收集Prompt 动漫风格 东京 樱花 武士 魔法少女 自然 机甲 拟人动物 歌剧场景 星际飞船 神秘森林 精灵 详细记录 超多图片 多种风格 附带文本 关键词

2024-04-21 10:29:48 141

原创 Midjourney-02 收集Prompt 咕卡手账 零件套装展示 可爱猫猫 线稿生成 2077猫猫 niji 5 niji 6 对比 详细记录 超多图片 多种风格 附带文本 关键词

上一节我们注册,(已开了会员),并生成了我们的第一批图片。下面我们将记录一批实践过的结果,方便我们后续做查阅、借鉴、使用。很多数据都是来源自互联网的,调试一下并且生图,我觉得效果还不错。Midjourney-02 收集Prompt 详细记录 超多图片 多种风格 附带文本 关键词 咕卡手账 零件套装展示 可爱猫猫 线稿生成 2077猫猫 nijiV5 nijiV6 对比

2024-04-20 09:44:02 408

原创 Midjourney-01 初试上手 注册使用并生成你的第一张AI图片 详细流程 提示词 过程截图 生成结果 付费文生图的天花板!

Midjourney是一款基于人工智能技术的绘画软件,利用深度学习算法来辅助用户进行绘画创作。这款软件能够通过用户输入的文本描述生成图像,支持多种生成方式,包括文字生成图片、图片生成图片和混合图片生成图片。- 图像生成方式:Midjourney提供三种主要的图像生成方式。用户可以通过输入文本描述来生成图片,也可以上传一张图片并添加描述来生成相似风格的新图片,或者通过混合多张图片来创造全新的图像。- 高质量和高分辨率图像:Midjourney以其生成的高质量和高分辨率图像而受到赞誉。这使得生成的图像在细

2024-04-20 09:27:22 663

原创 LLM-05 大模型 15分钟 FineTuning 微调 ChatGLM3-6B(微调实战1) 官方案例 3090 24GB实战 需22GB显存 LoRA微调 P-TuningV2微调

LLM-04 大模型 15分钟 FineTuning 微调 ChatGLM3-6B(微调实战1) 官方案例 3090 24GB实战 需22GB显存 LoRA微调 P-TuningV2微调。LoRA的核心思想是在保持预训练模型的大部分权重参数不变的情况下,通过添加额外的网络层来进行微调。这些额外的网络层通常包括两个线性层,一个用于将数据从较高维度降到较低维度(称为秩),另一个则是将其从低维度恢复到原始维度。这种方法的关键在于,这些额外的低秩层的参数数量远少于原始模型的参数,从而实现了高效的参数使用。

2024-04-19 13:05:39 796

原创 LLM-04 大模型 15分钟 FineTuning 微调 ChatGLM3-6B(准备环境) 3090 24GB实战 需22GB显存 LoRA微调 P-TuningV2微调

- SFT 全量微调: 4张显卡平均分配,每张显卡占用 48346MiB 显存。- P-TuningV2 微调: 1张显卡,占用 18426MiB 显存。- LORA 微调: 1张显卡,占用 14082MiB 显存。ChatGLM3是由智谱AI和清华大学KEG实验室联合开发的一款新一代对话预训练模型。这个模型是ChatGLM系列的最新版本,旨在提供更流畅的对话体验和较低的部署门槛。ChatGLM3-6B是该系列中的一个开源模型,它继承了前两代模型的优秀特性,并引入了一些新的功能和改进。

2024-04-19 11:15:57 1096

原创 LLM-03 大模型 15分钟 FineTuning 微调 GPT2 模型 finetuning GPT微调实战 仅需6GB显存 单卡微调 数据 10MB数据集微调

这里提供一个例子,运行可以自动把模型下载下来。这边建议独立环境,避免相互影响。执行之后,观察显卡的情况,大致占用。的显卡,小显卡也可以正常运行)。LLM-03 大模型 15分钟 FineTuning 微调 GPT2 模型 finetuning GPT微调实战 仅需6GB显存 单卡微调 Kaggle数据 10MB数据集微调。观察显卡的情况,大致占用4.6GB的显存(虽然我这里是3090 24GB的显卡,小显卡也可以正常运行)。建议独立环境,避免相互影响。可看LLM-01 和 LLM-02 章节中的 Pyenv

2024-04-18 11:03:26 617

原创 LLM-02 大模型 本地部署运行 ChatGLM3-6B(13GB) 双卡2070Super8GB 环境配置 单机多卡 基于LLM-01章节 继续乘风破浪 为大模型微调做准备

LLM-02 大模型 本地部署运行 ChatGLM3-6B(13GB) 双卡2070Super8GB 环境配置 单机多卡 基于LLM-01章节 继续乘风破浪 为大模型微调做准备。ChatGLM3-6B 是 ChatGLM 系列最新一代的开源模型,在保留了前两代模型对话流畅、部署门槛低等众多优秀特性的基础上,ChatGLM3-6B 引入了如下特性:更强大的基础模型: ChatGLM3-6B 的基础模型 ChatGLM3-6B-Base 采用了更多样的训练数据、更充分的训练步数和更合理的训练策略。在语义、数

2024-04-18 10:36:23 456

原创 LLM-01 大模型 本地部署运行 ChatGLM2-6B-INT4(6GB) 简单上手 环境配置 单机单卡多卡 2070Super8GBx2 打怪升级!

目前借到一台算法组的服务器,我们可以查看一下目前显卡的情况nvidia-smi(后续已经对CUDA等进行了升级,可看我的其他文章,有升级的详细过程),由于很多不同的项目队`python`版本的要求不同,同时对版本的要求也不同,所以你需要配置一个独立的环境。这里你可以选择 `Conda`,也可以选择`pyenv`,或者`docker`。我选的方案是:`pyenv`在项目的目录下,我们利用现成的直接启动:`web_demo.py````shell# 先打开看一眼vim web_demo.py```

2024-04-17 10:11:55 365

原创 StableDiffusion-04 (炼丹篇) 15分钟 部署服务并进行LoRA微调全过程详细记录 不到20张百变小樱Sakura微调 3090(24GB) 学不会你打我!

按照我们上节的情况,我们打开:`http://server:6006`页面,请图文对比着一起配置。由于我们是学习,所以按照图中可以跑起来是第一要义,不用调整太多了。● Model-Pretrained model name or path: 基础模型的位置,如果没有将下载● Model-Trained Model output name: 输出的模型名称● Model-Image folder: 图片的上一级目录,(不要写到30_sakura这一级)● Folders

2024-04-17 09:14:36 1278

原创 StableDiffusion-03 (准备篇)15分钟 部署服务并进行LoRA微调全过程详细记录 不到20张百变小樱Sakura微调 3090(24GB) 学不会你打我!

本篇是环境的安装(Python、CUDA、GIT、安装依赖、项目启动)、图片的准备(下载、裁切、打标签)、(准备篇)15分钟 部署服务并进行LoRA微调全过程详细记录 不到20张百变小樱Sakura微调 3090(24GB) 学不会你打我! 从小就非常喜欢小樱!从小樱的动画到动漫书我都看了个遍,包括C妈几年前更新了(哇这么久了都)Clear Card。直到最近C妈终于更新完了Clear Card的漫画,听说好像新的视频在筹备了,我好期待!!!

2024-04-16 10:14:36 1034

原创 StableDiffusion-02 LoRA上手使用实测 尝试生成图片 使用多个LoRA 调整LoRA效果 10分钟上手 多图

LoRA上手使用实测 尝试生成图片 使用多个LoRA 调整LoRA效果 10分钟上手 多图,`Stable Diffusion`中的`LoRA(Low-Rank Adaptation,低秩自适应)`是一种针对大型模型微调的技术,旨在加速模型的训练过程并显著减少模型文件的存储成本。这项技术通过冻结原有基础模型的权重层并重新计算,实现了快速的训练速度和较小的模型文件大小,从而提高了训练效率和降低了存储成本。

2024-04-16 09:12:37 392

原创 StableDiffusion-01本地服务器部署服务 10分钟上手 底显存 中等显存机器 加载模型测试效果 附带安装指令 多显卡 2070Super 8GB*2

StableDiffusion 本地服务器部署服务 10分钟上手 底显存 中等显存机器 加载模型测试效果 附带安装指令 多显卡 2070Super 8GB*2

2024-04-15 10:05:34 851

原创 LangChain-26 Custom Agent 自定义一个Agent并通过@tool绑定对应的工具 同时让大模型自己调用编写的@tools函数

Custom Agent 自定义一个Agent并通过@tool绑定对应的工具 同时让大模型自己调用编写的@tools函数

2024-04-15 09:39:02 373

原创 LangChain-25 ReAct 让大模型自己思考和决策下一步 AutoGPT实现途径、AGI重要里程碑

大模型ReAct(Reasoning and Acting)是一种新兴的技术框架,旨在通过逻辑推理和行动序列的构建,使大型语言模型(LLM)能够达成特定的目标。这一框架的核心思想是赋予机器模型类似人类的推理和行动能力,从而在各种任务和环境中实现更高效、更智能的决策和操作。

2024-04-14 10:41:59 679

原创 LangChain-24 Agengts 通过TavilySearch Agent实现检索内容并回答 AgentExecutor转换Search 借助Prompt Tools工具

LangChain-24 Agengts 通过TavilySearch Agent实现检索内容并回答 AgentExecutor转换Search 借助Prompt Tools工具

2024-04-14 10:34:33 209

原创 LangChain-23 Vector stores 向量化存储 并附带一个实际案例 通过Loader加载 Embedding后持久化 LangChain ChatOpenAI ChatGLM3对话

- 通过DocumentLoader 加载了 word 文档- 通过 OpenAI Embedding 或 开源的 text2vec-base-chinese 对数据进行向量化处理- 持久化向量过的内容- 利用LangChain开发整体的功能- 使用了 ChatOpenAI,也配置了 ChatGLM3 的方式(本地部署安全且免费)- 简易的Flask服务,开发一个GET的方式请求,方便接口调用并返回。

2024-04-13 09:43:23 457

原创 LangChain-22 Text Embedding 续接21节 文本切分后 对文本进行embedding向量化处理 后续可保存到向量数据库后进行检索 从而扩展大模型的能力

Text Embedding在大模型中的应用是一个重要的技术,它涉及到将高维度的数据(如文本)映射到低维度空间的过程。这一过程不仅有助于减少数据处理的复杂性,还能够捕捉和表达数据的语义信息。在自然语言处理(NLP)和机器学习领域,Text Embedding是实现文本分类、情感分析、机器翻译等任务的基础。

2024-04-13 08:53:09 204

原创 LangChain-21 Text Splitters 内容切分器 支持多种格式 HTML JSON md Code(JS/Py/TS/etc) 进行切分并输出 方便将数据进行结构化后检索

LangChain提供了多种类型的Text Splitters,以满足不同的需求:- RecursiveCharacterTextSplitter:基于字符将文本划分,从第一个字符开始。如果结果片段太大,则继续划分下一个字符。这种方式提供了定义划分字符和片段大小的灵活性。- CharacterTextSplitter:类似于RecursiveCharacterTextSplitter,但能够指定自定义分隔符以实现更具体的划分。默认情况下,它尝试在如“\n\n”、“\n”和空格等字符上进行分割。- Re

2024-04-12 09:32:36 372 2

原创 LangChain-20 Document Loader 文件加载 加载MD DOCX EXCEL PPT PDF HTML JSON 等多种文件格式 后续可通过FAISS向量化 增强检索

LangChain 提供了多种文档加载器,包括但不限于以下几种:- TextLoader:用于从各种来源加载文本数据。- CSVLoader:用于加载 CSV 文件并将其转换为 LangChain 可以处理的文档格式。- UnstructuredFileLoader:能够自动检测并处理不同格式的文件。- DirectoryLoader:用于加载指定文件夹中的文件。- UnstructuredHTMLLoader:用于从 HTML 文件中提取有意义的内容。- JSONLoader:用于加载和处理

2024-04-12 09:19:41 364

原创 LangChain-19 TokenUsage 通过回调函数 只需一行 统计当前调用API的花费情况 包含Tokens数量和Cost花费

仅需要一行代码,统计当前API的调用花费情况,包含Tokens和Cost计算,我们将通过:`get_openai_callback` 函数,`LangChain` 已经帮我们封装好了。此时我们通过该回调函数,变可以完成对消费的计算和统计。

2024-04-11 08:52:21 242

原创 LangChain-18 Caching 将回答内容进行缓存 可在内存中或数据库中持久化缓存

可以将问答的内容缓存起来,如果是相同的问题,那么将会直接把答案返回去,可以节约费用和计算。通过InMemoryCache和SQLiteCache将答案进行缓存,在调用的过程中,相似的问题会直接返回答案,通过两次连续调用,我们可以发现第一次是速度较慢,第二次返回速度非常快,同时后台中也只有一次API消费,而第二次是直接返回结果的。

2024-04-11 08:42:31 566

原创 LangChain-17 FunctionCalling 利用大模型对函数进行回调 扩展大模型的额外的能力 比如实现加减乘除等功能

Function Calling是一种允许用户在使用大型语言模型(如GPT系列)处理特定问题时,定制并调用外部函数的功能。这些外部函数可以是专门为处理特定任务(如数据分析、图像处理等)而设计的代码块。通过Function Calling,大模型可以调用这些外部函数获取信息,然后根据这些信息生成相应的输出,从而实现更加复杂和专业化的任务处理能力。

2024-04-10 09:13:30 554

原创 LangChain-16 Using Tools LangChain封装好的工具集tools

LangChain的社区提供了很多封装好的工具,可以直接拿来用(有的需要申请和配置API KEY)。在 langchain.tools中(新版在 langchain_community.tools)中,封装了如搜索、邮件、数学相关等工具集内容。

2024-04-10 08:44:15 186

原创 LangChain-15 Manage Prompt Size 管理上下文大小,用Agent的方式询问问题,并去百科检索内容,总结后返回

- 涉及到Wikipedia的检索(有现成的插件)- 有`AgentExecutor`来帮助我们执行- 后续由于上下文过大, 我们通过计算`num_tokens`,来控制我们的上下文Grok是一个基于大型语言模型(LLM)的生成式人工智能聊天机器人,由xAI开发。Grok的开发是由Elon Musk作为对OpenAI推出的ChatGPT崛起的直接回应而启动的项目,其中Elon Musk是OpenAI的共同创始人。Grok的一个特点是它被宣传为“具有幽默感”,并且可以直接访问Twitter(现X)。

2024-04-09 09:00:36 1124

原创 LangChain-14 Moderation OpenAI提供的功能:检测内容中是否有违反条例的内容

我们在调用OpenAI的接口时,有些内容可能是违反条例的,所以官方提供了一个工具来检测。

2024-04-09 08:51:47 177

原创 LangChain-13 Memory 通过 ConversationBufferMemory 记录会话的上下文 并在对话中自动检索

平常我们的任务都是一次性会话,大模型是不会记录你的上下文的。如果我们要进行持续会话,或者希望大模型有记忆的话,我们需要对上下文进行管理。但这个过程是比较复杂的,`LangChain` 提供了一系列的工具来帮助我们简化过程。

2024-04-08 09:38:52 144

原创 LangChain-12 Routing By Semantic Similarity 让GPT根据不明确的问题 自动选择工具集 根据语义自动路由

此时如果type传入的不是数字,那我们就没法处理。比如用户说:`我想喝水`,此时我们的程序就无法进行了,会走到`else`分支下。那我们该如何处理这种问题?借助大模型的推理能力,可以帮助理解用户的问题,并推理出对应的方案。

2024-04-08 09:32:09 1023

原创 LangChain-11 Code Writing FunctionCalling 大模型通过编写代码完成需求 大模型计算加法

我们知道GPT模型对于内容的输出,是对下一个字符的预测,通过概率选出下一个文本。而且我们也知道,训练样本是非常庞大的,对于GPT来说,也是有可能学习过`1 + 1 = 2`的。当我们向GPT询问`1+1` 时,完全可以通过概率来推测出结果是`2`但是当我们要求GPT计算:`12311111111111111` + `999999988888888111`时,显然训练样本中不可能出现这么抽象的内容。那我们该如何让大模型进行计算呢???

2024-04-07 09:07:28 251

原创 LangChain-10(2) 加餐 编写Agent获取本地Docker运行情况 无技术含量只是思路

这里是通过执行 Shell的方式来获取状态的。通过执行`Docker`指令之后,可以获取到一大段的文本内容,此时把这些内容交给大模型去处理,大模型对内容进行提取和推理,最终回答我们。- `注意@tool注解,没有这个注解的话,无法使用`- `注意要写"""xxx""" 要写明该工具的介绍,大模型将根据介绍来选择是否调用`- `如果3.5的效果不好,可以尝试使用4`

2024-04-07 09:00:38 264

原创 LangChain-10 Agents langchainhub 共享的提示词Prompt

`LangChainHub` 的思路真的很好,通过Hub的方式将`Prompt` 共享起来,大家可以通过很方便的手段,短短的几行代码就可以使用共享的`Prompt`。我个人非常看好这个项目。官方推荐使用LangChainHub,但是它在GitHub已经一年没有更新了, 倒是数据还在更新。代码主要部分是,定义了一个工具`tool`,让`Agent`执行,模拟了一个搜索引擎,让GPT利用工具对自身的内容进行扩展,从而完成复杂的任务。

2024-04-06 12:40:46 871

原创 LangChain-09 Query SQL DB With RUN GPT 查询数据库 并 执行SQL 返回结果

【代码】LangChain-09 Query SQL DB With RUN GPT 查询数据库 并 执行SQL 返回结果。结合 上一节,根据我们的需求,生成SQL后,执行返回结果。

2024-04-06 12:26:43 287

原创 LangChain-08 Query SQL DB 通过GPT自动查询SQL

LangChain的方式进行数据库查询,通过编写SQL对DB进行读取,并返回运行的结果,我们需要下载一个LangChain官方提供的本地小数据库,同时需要编写一段Chain来达到我们的目的。

2024-04-05 08:23:21 680 2

原创 LangChain-07 Multiple Chains 多链串联

LangChain中的Runnables 可以很容易地用于将多个链串在一起。将定义的 chain1和chain2这种多个链都串联到一定,进行执行,方便我们进行扩展

2024-04-05 08:00:06 188

原创 LangChain-06 RAG With Source Doc 通过文档进行检索增强

【代码】LangChain-06 RAG With Source Doc 通过文档进行检索增强。

2024-04-04 09:40:12 201

原创 LangChain-05 RAG Conversational 增强检索会话

通过LangChain Template 编写了一个RAG的增强内容检索,同时通过chat history 来增强我们的对话,显然大模型通过我们定义的一些文档内容,和相对应的上下文,推测出了一些答案。

2024-04-04 09:16:49 283

原创 LangChain-04 RAG Retrieval-Augmented Generation 检索增强生成

LangChain 中的 "RAG" 指的是 "Retrieval-Augmented Generation",即检索增强生成。它是一种结合了检索(从大量数据中检索相关信息)和生成(基于检索到的信息生成文本)的技术,旨在改善和增强自然语言生成模型的性能。

2024-04-03 08:52:19 612

原创 LangChain-03 astream_events 流输出

FAISS向量检索,DocArrayInMemorySearch向量检索,astream_events 流输出

2024-04-03 08:47:24 179

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除