目录
准备工作" >准备工作
设置 Qwik 应用程序" >设置 Qwik 应用程序
开始开发" >开始开发
🎜开始开发🎜
添加样式" >添加样式
准备主页" >准备主页
🎜准备主页🎜
Hi [wave emoji]
结论" >结论
首页 科技周边 人工智能 手把手教你打造人工智能网络应用!

手把手教你打造人工智能网络应用!

Sep 18, 2023 am 10:35 AM
人工智能

如果你和我一样,你就会注意到人工智能技术的火爆。它不仅会颠覆软件工程,还会颠覆每个行业。

在本系列中,我们将学习如何将OpenAI的 AI 服务集成到使用Qwik构建的应用程序中,Qwik 是一个专注于可恢复性概念的 JavaScript 框架。

我们将深入了解 OpenAI 和 Qwik 的具体细节,但我将主要关注通用知识、工具和实现,这些知识、工具和实现应适用于您正在使用的任何框架或工具链。我们将尽可能密切地关注基础知识,我将指出该应用程序的独特部分。

预览:

vs.austinil.com 的屏幕截图

准备工作

在开始构建任何东西之前,我们必须满足几个先决条件。Qwik 是一个 JavaScript 框架,因此我们必须安装Node.js(和 NPM)。您可以下载最新版本,但任何高于 v16.8 的版本都应该可以使用。我将使用版本 20。

接下来,我们还需要一个 OpenAI 帐户才能访问他们的API

在本系列的最后,我们将把应用程序部署到 VPS(虚拟专用服务器)。无论您选择哪个提供商,我们遵循的步骤都应该是相同的。我将使用 Akamai 的云计算服务(以前称为 Linode)。 

设置 Qwik 应用程序

假设我们满足了先决条件,我们可以打开命令行终端并运行命令:<span style="font-family: 宋体, SimSun; font-size: 14px;">npm create qwik@latest<code style="box-sizing: border-box; font-family: Menlo, Monaco, Consolas, " courier new monospace font-size: padding: color: rgb background-color: border-radius:><span style="font-family: 宋体, SimSun; font-size: 14px;">npm create qwik@latest</span>。这将运行 Qwik CLI,它将帮助我们引导我们的应用程序。

示例:

让我们创建一个 Qwik 应用程序 ✨ (v1.2.7)您想在哪里创建新项目? (使用“.”或“./”表示当前目录):与在 /home/austin/code/versus 中创建新项目选择启动器:空应用程序您想安装 npm 依赖项吗? 是的初始化一个新的git存储库? 是的正在完成安装。 想听个笑话吗? 是的,大花对小花说了什么? 嗨,伙计!

如果一切正常,请打开项目并开始探索。

在项目文件夹中,您会注意到一些重要的文件和文件夹:

  1. <span style="font-family: 宋体, SimSun; font-size: 14px;">/src<code style="box-sizing: border-box; font-family: Menlo, Monaco, Consolas, " courier new monospace font-size: padding: color: rgb background-color: border-radius:><span style="font-family: 宋体, SimSun; font-size: 14px;">/src</span>:包含所有应用业务逻辑

  2. <span style="font-family: 宋体, SimSun; font-size: 14px;">/src/components</span>:包含所有应用业务逻辑

  3. 🎜🎜<span style="font-family: 宋体, SimSun; font-size: 14px;">/src/components🎜</span>🎜:包含可重用的组件来构建我们的应用程序🎜🎜
  4. <span style="font-family: 宋体, SimSun; font-size: 14px;">/src/routes<code style="box-sizing: border-box; font-family: Menlo, Monaco, Consolas, " courier new monospace font-size: padding: color: rgb background-color: border-radius:><span style="font-family: 宋体, SimSun; font-size: 14px;">/src/routes</span>:负责Qwik的基于文件的路由;每个文件夹代表一个路由(可以是页面或 API 端点)。要创建页面,请将<span style="font-family: 宋体, SimSun; font-size: 14px;">index.{jsx|tsx}</span>文件放入路线的文件夹中。

  5. <span style="font-family: 宋体, SimSun; font-size: 14px;">/src/root.tsx</span>:该文件导出负责生成 HTML 文档根的根组件。

开始开发

Qwik 使用Vite作为捆绑器,这很方便,因为 Vite 内置了开发服务器。它支持在本地运行我们的应用程序,并在文件更改时更新浏览器。

要启动开发服务器,我们可以在终端中打开项目并执行命令<span style="font-family: 宋体, SimSun; font-size: 14px;">npm run dev</span>。开发服务器运行后,您可以打开浏览器并访问<span style="font-family: 宋体, SimSun; font-size: 14px;">http://localhost:5173</span>:负责Qwik的基于文件的路由;每个文件夹代表一个路由(可以是页面或 API 端点)。要创建页面,请将<span style="font-family: 宋体, SimSun; font-size: 14px;">index.{jsx|tsx}</span>

文件放入路线的文件夹中。

🎜🎜<span style="font-family: 宋体, SimSun; font-size: 14px;">/src/root.tsx🎜</span>🎜:该文件导出负责生成 HTML 文档根的根组件。🎜🎜🎜

🎜开始开发🎜

🎜Qwik 使用🎜Vite作为捆绑器,这很方便,因为 Vite 内置了开发服务器。它支持在本地运行我们的应用程序,并在文件更改时更新浏览器。🎜🎜🎜🎜🎜要启动开发服务器,我们可以在终端中打开项目并执行命令🎜<span style="font-family: 宋体, SimSun; font-size: 14px;">npm run dev🎜</span>🎜。开发服务器运行后,您可以打开浏览器并访问🎜<span style="font-family: 宋体, SimSun; font-size: 14px;">http://localhost:5173🎜</span>🎜,您应该会看到一个非常基本的应用程序。🎜🎜🎜🎜每当我们对应用程序进行更改时,我们都应该看到这些更改几乎立即反映在浏览器中。🎜🎜

添加样式

该项目不会过多关注样式,因此如果您想做自己的事情,这部分完全是可选的。为了简单起见,我将使用Tailwind

通过执行终端命令 ,Qwik CLI 可以轻松添加必要的更改<code style="box-sizing: border-box; font-family: Menlo, Monaco, Consolas, " courier new monospace font-size: padding: color: rgb background-color: border-radius:><span style="font-family: 宋体, SimSun; font-size: 14px;">npm run qwik add</span>npm run qwik add

示例:

🎜
您想要添加什么集成?- 适配器:Cloudflare Pages- 适配器:AWS Lambda- 适配器:Azure Static Web Apps- 适配器:Netlify Edge- 适配器:Vercel Edge- 适配器:Google Cloud Run 服务器- 适配器:Deno Server- 适配器: Node.js Express 服务器- 适配器:Node.js Fastify 服务器- 适配器:Node.js 服务器- 适配器:静态站点(.html 文件)- 集成:Builder.io- 集成:Cypress- 集成:Storybook- 集成:Auth.js (身份验证)- 集成:Orama(全文搜索引擎)- 集成:PandaCSS(样式)- 集成:Playwright(E2E 测试)- 集成:PostCSS(样式)- 集成:Prisma(数据库 ORM)- 集成:Styled-Vanilla -提取(样式)-集成:Tailwind(样式)(在 Qwik 应用程序中使用 Tailwind)-集成:Turso(数据库)-集成:Vitest(单元测试)

您可以使用箭头键向下移动到 Tailwind 插件,然后按 Enter。然后它会向您显示将对您的代码库进行的更改并要求确认。只要看起来不错,您就可以再次按 Enter 键。

准备好? 将 tailwind 添加到您的应用程序?修改- package.json- .vscode/settings.json- src/global.css 创建- postcss.config.js- tailwind.config.js 安装 npm 依赖项:- autoprefixer ^10.4.14- postcss 8.4.27 - tailwindcss 3.3.3准备好将 tailwind 更新应用到您的应用程序了吗?- 是的,看起来不错,完成更新!

对于我的项目,我也喜欢有一致的主题,因此我在GitHub中保留一个文件以从中复制和粘贴样式。显然,如果你想要自己的主题,你可以忽略这一步,但如果你想让你的项目看起来像我的一样令人惊叹,请将GitHub 上这个文件中的样式复制到该文件中<code style="box-sizing: border-box; font-family: Menlo, Monaco, Consolas, " courier new monospace font-size: padding: color: rgb background-color: border-radius:><span style="font-family: 宋体, SimSun; font-size: 14px;">/src/global.css</span>。您可以替换旧样式,但保留 Tailwind 指令。

准备主页

为了使项目有一个良好的起点,我们今天要做的最后一件事是对主页进行一些更改。我想要做出的更改包括:

  1. 删除<span style="font-family: 宋体, SimSun; font-size: 14px;">head</span>/src/global.css。您可以替换旧样式,但保留 Tailwind 指令。

    🎜

    🎜准备主页🎜

    🎜🎜为了使项目有一个良好的起点,我们今天要做的最后一件事是对主页进行一些更改。🎜🎜我想要做出的更改包括:🎜🎜
    1. 🎜删除🎜🎜head🎜🎜导出🎜🎜

    2. <span style="font-family: 宋体, SimSun; font-size: 14px;">h1<code style="box-sizing: border-box; font-family: Menlo, Monaco, Consolas, " courier new monospace font-size: padding: color: rgb background-color: border-radius:><span style="font-family: 宋体, SimSun; font-size: 14px;">h1</span>删除除;之外的所有文本 请随意添加您自己的页面标题文本。

    3. 添加一些 Tailwind 类以将内容居中并使内容<span style="font-family: 宋体, SimSun; font-size: 14px;">h1</span>更大

    4. 用标签包裹内容<span style="font-family: 宋体, SimSun; font-size: 14px;">main</span>以使其更具语义

    5. 将 Tailwind 类添加到<span style="font-family: 宋体, SimSun; font-size: 14px;">main</span>删除除;之外的所有文本 请随意添加您自己的页面标题文本。

    添加一些 Tailwind 类以将内容居中并使内容<span style="font-family: 宋体, SimSun; font-size: 14px;">h1</span>

    更大

    用标签包裹内容

    <span style="font-family: 宋体, SimSun; font-size: 14px;">main<p style="box-sizing: border-box; margin-top: 5px; margin-bottom: 15px; padding-top: 0px; color: rgb(34, 38, 53); font-family: Cambria, serif; font-size: 19px; text-wrap: wrap; background-color: rgb(255, 255, 255);"></p></span>以使其更具语义🎜🎜🎜🎜将 Tailwind 类添加到🎜<span style="font-family: 宋体, SimSun; font-size: 14px;">main🎜</span>🎜标签以添加一些填充并使内容居中🎜🎜🎜🎜🎜🎜这些都是一些微小的变化,并不是绝对必要的,但我认为它们将为在下一篇文章中构建我们的应用程序提供一个很好的起点。🎜🎜🎜🎜这是我更改后文件的样子。🎜🎜🎜🎜🎜🎜
    import { component$ } from "@builder.io/qwik";
    export default component$(() => {
      return (
        <main class="max-w-4xl mx-auto p-4">
          <h1 id="Hi-nbsp-wave-nbsp-emoji">Hi [wave emoji]</h1>
        </main>
      );
    });
    登录后复制
    🎜🎜在浏览器中:🎜🎜
    手把手教你打造人工智能网络应用!

    结论

    这就是我们今天要讨论的全部内容。同样,这篇文章的主要重点是消除样板内容,以便下一篇文章可以致力于将 OpenAI 的 API 集成到我们的项目中。

以上是手把手教你打造人工智能网络应用!的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

字节跳动剪映推出 SVIP 超级会员:连续包年 499 元,提供多种 AI 功能 字节跳动剪映推出 SVIP 超级会员:连续包年 499 元,提供多种 AI 功能 Jun 28, 2024 am 03:51 AM

本站6月27日消息,剪映是由字节跳动旗下脸萌科技开发的一款视频剪辑软件,依托于抖音平台且基本面向该平台用户制作短视频内容,并兼容iOS、安卓、Windows、MacOS等操作系统。剪映官方宣布会员体系升级,推出全新SVIP,包含多种AI黑科技,例如智能翻译、智能划重点、智能包装、数字人合成等。价格方面,剪映SVIP月费79元,年费599元(本站注:折合每月49.9元),连续包月则为59元每月,连续包年为499元每年(折合每月41.6元)。此外,剪映官方还表示,为提升用户体验,向已订阅了原版VIP

使用Rag和Sem-Rag提供上下文增强AI编码助手 使用Rag和Sem-Rag提供上下文增强AI编码助手 Jun 10, 2024 am 11:08 AM

通过将检索增强生成和语义记忆纳入AI编码助手,提升开发人员的生产力、效率和准确性。译自EnhancingAICodingAssistantswithContextUsingRAGandSEM-RAG,作者JanakiramMSV。虽然基本AI编程助手自然有帮助,但由于依赖对软件语言和编写软件最常见模式的总体理解,因此常常无法提供最相关和正确的代码建议。这些编码助手生成的代码适合解决他们负责解决的问题,但通常不符合各个团队的编码标准、惯例和风格。这通常会导致需要修改或完善其建议,以便将代码接受到应

七个很酷的GenAI & LLM技术性面试问题 七个很酷的GenAI & LLM技术性面试问题 Jun 07, 2024 am 10:06 AM

想了解更多AIGC的内容,请访问:51CTOAI.x社区https://www.51cto.com/aigc/译者|晶颜审校|重楼不同于互联网上随处可见的传统问题库,这些问题需要跳出常规思维。大语言模型(LLM)在数据科学、生成式人工智能(GenAI)和人工智能领域越来越重要。这些复杂的算法提升了人类的技能,并在诸多行业中推动了效率和创新性的提升,成为企业保持竞争力的关键。LLM的应用范围非常广泛,它可以用于自然语言处理、文本生成、语音识别和推荐系统等领域。通过学习大量的数据,LLM能够生成文本

微调真的能让LLM学到新东西吗:引入新知识可能让模型产生更多的幻觉 微调真的能让LLM学到新东西吗:引入新知识可能让模型产生更多的幻觉 Jun 11, 2024 pm 03:57 PM

大型语言模型(LLM)是在巨大的文本数据库上训练的,在那里它们获得了大量的实际知识。这些知识嵌入到它们的参数中,然后可以在需要时使用。这些模型的知识在训练结束时被“具体化”。在预训练结束时,模型实际上停止学习。对模型进行对齐或进行指令调优,让模型学习如何充分利用这些知识,以及如何更自然地响应用户的问题。但是有时模型知识是不够的,尽管模型可以通过RAG访问外部内容,但通过微调使用模型适应新的领域被认为是有益的。这种微调是使用人工标注者或其他llm创建的输入进行的,模型会遇到额外的实际知识并将其整合

你所不知道的机器学习五大学派 你所不知道的机器学习五大学派 Jun 05, 2024 pm 08:51 PM

机器学习是人工智能的重要分支,它赋予计算机从数据中学习的能力,并能够在无需明确编程的情况下改进自身能力。机器学习在各个领域都有着广泛的应用,从图像识别和自然语言处理到推荐系统和欺诈检测,它正在改变我们的生活方式。机器学习领域存在着多种不同的方法和理论,其中最具影响力的五种方法被称为“机器学习五大派”。这五大派分别为符号派、联结派、进化派、贝叶斯派和类推学派。1.符号学派符号学(Symbolism),又称为符号主义,强调利用符号进行逻辑推理和表达知识。该学派认为学习是一种逆向演绎的过程,通过已有的

为大模型提供全新科学复杂问答基准与测评体系,UNSW、阿贡、芝加哥大学等多家机构联合推出SciQAG框架 为大模型提供全新科学复杂问答基准与测评体系,UNSW、阿贡、芝加哥大学等多家机构联合推出SciQAG框架 Jul 25, 2024 am 06:42 AM

编辑|ScienceAI问答(QA)数据集在推动自然语言处理(NLP)研究发挥着至关重要的作用。高质量QA数据集不仅可以用于微调模型,也可以有效评估大语言模型(LLM)的能力,尤其是针对科学知识的理解和推理能力。尽管当前已有许多科学QA数据集,涵盖了医学、化学、生物等领域,但这些数据集仍存在一些不足。其一,数据形式较为单一,大多数为多项选择题(multiple-choicequestions),它们易于进行评估,但限制了模型的答案选择范围,无法充分测试模型的科学问题解答能力。相比之下,开放式问答

SK 海力士 8 月 6 日将展示 AI 相关新品:12 层 HBM3E、321-high NAND 等 SK 海力士 8 月 6 日将展示 AI 相关新品:12 层 HBM3E、321-high NAND 等 Aug 01, 2024 pm 09:40 PM

本站8月1日消息,SK海力士今天(8月1日)发布博文,宣布将出席8月6日至8日,在美国加利福尼亚州圣克拉拉举行的全球半导体存储器峰会FMS2024,展示诸多新一代产品。未来存储器和存储峰会(FutureMemoryandStorage)简介前身是主要面向NAND供应商的闪存峰会(FlashMemorySummit),在人工智能技术日益受到关注的背景下,今年重新命名为未来存储器和存储峰会(FutureMemoryandStorage),以邀请DRAM和存储供应商等更多参与者。新产品SK海力士去年在

SOTA性能,厦大多模态蛋白质-配体亲和力预测AI方法,首次结合分子表面信息 SOTA性能,厦大多模态蛋白质-配体亲和力预测AI方法,首次结合分子表面信息 Jul 17, 2024 pm 06:37 PM

编辑|KX在药物研发领域,准确有效地预测蛋白质与配体的结合亲和力对于药物筛选和优化至关重要。然而,目前的研究没有考虑到分子表面信息在蛋白质-配体相互作用中的重要作用。基于此,来自厦门大学的研究人员提出了一种新颖的多模态特征提取(MFE)框架,该框架首次结合了蛋白质表面、3D结构和序列的信息,并使用交叉注意机制进行不同模态之间的特征对齐。实验结果表明,该方法在预测蛋白质-配体结合亲和力方面取得了最先进的性能。此外,消融研究证明了该框架内蛋白质表面信息和多模态特征对齐的有效性和必要性。相关研究以「S

See all articles