🦄 2024 独立开发者训练营,一起创业!(早鸟优惠在1天后结束)查看介绍 / 立即报名 →

博客

开发人工智能模型驱动的应用(OpenAI,GPT,HuggingFace,LangChain)

谷歌、微软、奥多比(Adobe)在 AI 领域的动作都非常频繁,每周都有相关的产品发布,大部分产品都在测试阶段,只对少部分用户公开,这也足矣说明一点,AI 平民化的时代已经开始了。我们作为软件工程师,现在应该建立起一套新的开发思路与工具包,为创造智能化应用做好准备。

我们先来明确一些相关的概念,AI 指的是人工智能,它是一个比较大的概念,它的下面又包含了很多领域,比如机器学习,深度学习,计算机视觉,自然语言处理等等。OpenAI 是一家初创公司,这家公司训练了一些 AI 模型,比如 GPT,前阵子经常出现在媒体上出现的 ChatGPT 这个网站应用,它在后端使用的就是 GPT 模型。

GPT 是 Generative Pre-trained Transformer 的简称,中文可以翻译成 “生成式预训练转换器”,这种东西是基于深度学习里的 Transformer(转换器)架构训练出来的。训练这种东西需要用到大量的高质量的文本数据,它会在其中找出规律,理解语言的意思,这样当你给它提供一些文本指令或提示的时候,它会通过推理给出文本结果。

MiiMosa:农产品众筹平台

最近关注了一下 Agtech 初创项目,发现了 MiiMosa,它是一个针对农业和农村发展项目的众筹平台,旨在连接农民、生产者和农村企业家与有兴趣支持他们的倡议的个人、企业和组织。总部在法国巴黎,项目发布于 2014 年,目前融资 8400 万。

LangnChain AI 应用开发课程目录

快速起步

langchain-s23-01-00-01-使用 Warp 的 AI 命令搜索
langchain-s23-01-00-02-创建 LangChain 项目(Node.js)
langchain-s23-01-01-01-使用大语言模型生成文本(Models)
langchain-s23-01-01-02-使用提示模板管理模型提示(Prompts)
langchain-s23-01-01-03-使用链组合模型与提示完成多步工作流(Chains)
langchain-s23-01-01-04-使用工具处理任务(Tools)
langchain-s23-01-01-05-使用代理动态执行任务(Agents)
langchain-s23-01-01-06-让链与代理有记忆(Memory)

成为 Prompt 工程师开发 AI 驱动的应用,LangChain 新课预告

最近,宁皓网为同学们准备了一套关于开发AI驱动应用的重要课程,基于大语言模型(LLM),让应用智能化,这应该是未来几年的必然趋势,几乎所有的应用都需要做智能化改造,所以成为一名 Prompt 工程师,将会拥有无限的发展机会。

课程主要介绍的是 LangChain 这个应用框架,内容覆盖了框架所有的关键概念。最近这个框架拿到了 6900 万的种子资金,种子轮能拿这么多钱,也足以能证明资本市场对大语言模型应用的信心。这个框架有两个版本,Python 与 Node.js,我们选择的是 Node.js 这个版本,可以很好地跟宁皓网现有的 Node.js 生态课程融合在一起。

大模型语言可以让应用以前所未有的方式工作,但是需要做大量的 Prompt 工程,也就是你需要用人类语言描述你要做的事情,比如可以在 Prompt 里写清楚需要的数据格式,提供少量的样本数据,有时候还需要使用之前的对话作为上下文。LangChain 这个框架提供了一些工具,可以让 Prompt 工程变得简单,也更容易维护。

以下是大语言模型的几个应用场景:

新课发布《React.js 前端应用开发:Hooks》

如果你是一位正在学习 React 的开发者,或者想要进一步了解 React 的函数式组件和钩子(Hooks)概念,那么这个课程是为你量身定制的。在这个课程中,我们将重点介绍 React 中一些最重要的钩子,以及如何在函数式组件中使用它们。

课程的第一部分将从最基础的钩子开始:useState。我们将学习如何在函数式组件中使用useState来管理状态。从简单的状态管理到懒初始状态和函数式更新状态,我们将详细讲解这些概念,并通过实例演示如何使用它们。

接下来,我们将深入研究另一个重要的钩子:useEffect。通过使用useEffect,我们可以在函数式组件中添加各种效应,例如订阅事件、发送网络请求或处理其他副作用。我们将学习如何正确地使用useEffect,以及如何处理清理和依赖项的变化。

在本课程的下一部分,我们将介绍自定义React Hook的概念。你将学习如何创建自己的钩子,以便在多个组件之间共享和复用逻辑。自定义Hook是提高代码可维护性和重用性的强大工具,我们将通过实例演示如何创建和使用它们。

新课发布《React.js 前端应用开发:表单元素》

React 是一个流行的 JavaScript 库,用于构建用户界面。在 React 中,表单元素是与用户交互最频繁的部分之一。本课程将介绍如何在 React 中处理表单元素。

首先,我们会学习如何防止表单元素的默认行为,例如提交表单时自动刷新页面的问题。通过使用 preventDefault() 方法,我们可以轻松地解决这个问题。

接下来,我们将介绍受控组件,这是一种将表单元素的状态交给 React 组件控制的方法。通过将表单元素的值绑定到组件的状态中,我们可以实现实时更新表单值和对用户输入进行验证的功能。

然后,我们会探讨多行文本框、复选框、多值复选框、单选按钮、选择列表和选择文件等表单元素的使用方法。您将了解如何将这些元素添加到您的表单中,并在提交表单时读取它们的值。

最后,我们将学习如何使用 ref 控制文本框的焦点状态。通过使用 ref,我们可以轻松地将焦点聚焦到文本框中,并使用户更加方便地输入信息。

通过完成本课程,您将能够使用 React 创建复杂的表单,并使用户输入数据变得更加简单和流畅。

新课发布:《React.js 前端应用开发:定义组件》

这门课程介绍的是关于React组件的基础知识和技能。React组件是React开发中不可或缺的部分,通过学习这门课程,学生将掌握如何绑定React元素的样式属性、处理React元素的事件、按条件显示元素、导入样式表、使用编辑器代码片段快速创建组件、在组件中显示列表、使用children属性、实现内容插槽和导入组件时使用绝对位置等技术。

在课程的第一部分,学生将学习如何绑定React元素的样式属性,包括如何在组件中使用style属性来设置样式,并且通过实例讲解如何使用内联样式或外部样式表来美化组件。

在第二部分,学生将学习如何处理React元素的事件,包括如何在组件中定义事件处理程序、如何传递事件参数和如何防止默认行为等。

在第三部分,学生将学习如何在React组件中按条件显示元素,包括如何使用条件语句或三目运算符来实现根据条件动态显示或隐藏组件。

在第四部分,学生将学习如何导入样式表,包括如何在组件中引入外部样式表、如何使用CSS模块来管理样式和如何在组件中定义局部样式表。

在第五部分,学生将学习如何使用编辑器代码片段快速创建React组件,包括如何使用编辑器的代码片段来快速生成组件结构和常见的React组件模板。

新课发布:《 OpenAI:嵌入向量 》

本课程将介绍嵌入(Embeddings)的概念和使用方法。我们将使用 OpenAI 应用接口与客户端获取文本的嵌入(Node.js),并且给内容生成嵌入向量。接着,我们将使用这些嵌入向量实现语义智能搜索功能(Semantic Search)和聚类功能(Clustering)。

在本课程中,你将学习如何使用嵌入向量来将文本转换为数学空间中的向量表示,这种表示方式可以捕捉到单词、短语和句子之间的语义关系。我们将介绍如何使用 OpenAI 应用接口与客户端获取文本的嵌入,并使用 Node.js 进行代码实现。通过实践项目,你将了解如何从文本中生成嵌入向量,并使用它们实现语义智能搜索和聚类功能。

在本课程的语义智能搜索部分,你将学习如何使用嵌入向量实现基于语义的搜索功能。我们将演示如何使用嵌入向量计算文本之间的相似性,并且如何使用这种相似性来进行搜索。通过这个项目,你将学会如何使用嵌入向量实现更加智能的搜索功能。

在聚类部分,你将学习如何使用嵌入向量实现聚类功能。我们将演示如何使用聚类算法将文本数据分组成类似的子集。通过这个项目,你将学习如何使用嵌入向量实现更加智能的数据聚类。

修复:宁皓网在 iOS 设备视频无法播放

有同学反馈宁皓网最近在 iOS 设备上无法播放视频,问题已经修正了,感谢反馈这个问题的同学们。这个问题跟 NGINX 服务器的 HTTP2 有关,如果你想禁用 NGINX 的 HTTP2,需要在所有 server 区块禁用,如果有一个 server 区块使用了 http2,在指定 IP 与端口提供服务的服务器都会使用 HTTP2。

新课发布:微调(训练) GPT 模型适应新的任务

这周我们学一下如何 Fine-tuning(微调)一个 GPT 模型,通过训练,你可以让模型适应新的任务,比如让它模仿你的语气,给指定内容分类等等。要注意的是,微调并不是单纯地让模型记住你给它的训练数据,而是让模型在预训练的基础上进一步学习和调整,以适应新的任务或数据集。微调的目的是提高模型在新任务或数据集上的泛化能力,而不是简单地记住训练数据。

介绍

本课程将介绍几个深度学习中的重要概念和实践,包括小样本学习、终止序列、我们还将介绍如何安装和使用 OpenAI 命令行工具,准备训练数据给你微调模型。

首先,我们将深入探讨小样本学习。在深度学习中,通常需要大量的数据来训练模型。然而,在某些情况下,我们只有很少的数据可用于训练。小样本学习是一种特殊的学习技术,它旨在解决这个问题。我们将探讨不同的小样本学习方法和如何实现它们。

其次,我们将介绍终止序列。在自然语言处理中,终止序列是指输入序列中表示结束的特殊标记。我们将探讨终止序列的作用以及如何在不同的应用场景中使用它们。

接下来,我们将深入了解微调模型。微调是一种常见的深度学习技术,它利用预训练的模型进行进一步的训练,以适应新的数据集或任务。我们将讨论微调模型的原理、实现和最佳实践。

微信好友

用微信扫描二维码,
加我好友。

微信公众号

用微信扫描二维码,
订阅宁皓网公众号。

240746680

用 QQ 扫描二维码,
加入宁皓网 QQ 群。

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点