Table of Contents
Setting up the Qwik application " > Setting up the Qwik application
Start developing" >Start developing
Add Styles" >Add Styles
Prepare the homepage" >Prepare the homepage
Hi [wave emoji]
Conclusion" >Conclusion
Home Technology peripherals AI Teach you step by step how to build artificial intelligence network applications!

Teach you step by step how to build artificial intelligence network applications!

Sep 18, 2023 am 10:35 AM
AI

If you are like me, you will notice the explosion of artificial intelligence technology. It will disrupt not just software engineering, but every industry.

In this series, we'll learn how to integrate OpenAI's AI services into applications built with Qwik, a JavaScript framework focused on the concept of recoverability.

We'll get into the specifics of OpenAI and Qwik, but I'll focus mostly on general knowledge, tools, and implementations that should apply to whatever framework or toolchain you're using. We'll focus as closely as possible on the basics and I'll point out the unique parts of the application.

Preview:

vs.austinil.com 的屏幕截图

##Preparation

Before we start building anything, we must meet several prerequisites. Qwik is a JavaScript framework, so we have to install Node.js (and NPM). You can download the latest version, but anything higher than v16.8 should work. I will use version 20.

#Next, we also need an OpenAI account to access their API.

At the end of this series, we will deploy the application to a VPS (Virtual Private Server). No matter which provider you choose, the steps we follow should be the same. I'll be using Akamai's cloud computing service (formerly Linode).

Setting up the Qwik application

Assuming we meet the prerequisites, we can open a command line terminal and run the command: <span style="font-family: 宋体, SimSun; font-size: 14px;">npm create qwik@latest</span>. This will run the Qwik CLI which will help us bootstrap our application.

Example:

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

If everything is fine, open the project and start exploring.

In the project folder you will notice some important files and folders:

  1. <span style="font-family: 宋体, SimSun; font-size: 14px;">/src</span>: Contains all application business logic

  2. ##/src/components<span style="font-family: 宋体, SimSun; font-size: 14px;"></span>: Contains reusable components to build our application

  3. <span style="font-family: 宋体, SimSun; font-size: 14px;">/src/routes</span>: Responsible for Qwik’s file-based routing; each folder represents a route (can be a page or API endpoint). To create a page, place the <span style="font-family: 宋体, SimSun; font-size: 14px;">index.{jsx|tsx}</span> file into the route's folder.

  4. <span style="font-family: 宋体, SimSun; font-size: 14px;">/src/root.tsx</span>: This file exports the root component responsible for generating the HTML document root.

Start developing

Qwik uses Vite as the bundler, which is very Convenient because Vite has a built-in development server. It supports running our application locally and updating the browser when files change.

To start the development server, we can open the project in the terminal and execute the command <span style="font-family: 宋体, SimSun; font-size: 14px;">npm run dev</span>. Once the development server is running, you can open a browser and visit <span style="font-family: 宋体, SimSun; font-size: 14px;">http://localhost:5173</span> and you should see a very basic application.

Whenever we make changes to our application, we should see those changes reflected in the browser almost immediately.

Add Styles

This project won't focus too much on styles, so if you want to do your own thing, this part is completely optional. For simplicity, I will use Tailwind.

Qwik CLI makes it easy to add necessary changes by executing terminal commands<span style="font-family: 宋体, SimSun; font-size: 14px;">npm run qwik add</span> .

Example:

您想要添加什么集成?- 适配器: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(单元测试)

You can use the arrow keys to move down to the Tailwind plugin and press Enter. It will then show you the changes that will be made to your codebase and ask for confirmation. As long as it looks good, you can press Enter again.

准备好? 将 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 更新应用到您的应用程序了吗?- 是的,看起来不错,完成更新!

I also like to have a consistent theme for my projects, so I keep a file in GitHub to copy and paste from style. Obviously you can ignore this step if you want your own theme, but if you want your project to look as stunning as mine, copy the styles from this file on GitHub Go to the file <span style="font-family: 宋体, SimSun; font-size: 14px;">/src/global.css</span>. You can replace the old style but keep the Tailwind directive.

Prepare the homepage

To get the project off to a good start, the last thing we want to do today is make some changes to the homepage . The changes I want to make include:

  1. Remove<span style="font-family: 宋体, SimSun; font-size: 14px;">head</span> Export

  2. <span style="font-family: 宋体, SimSun; font-size: 14px;">h1</span>Remove all text except ; Feel free to add your own page title text.

  3. Add some Tailwind classes to center the content and make it <span style="font-family: 宋体, SimSun; font-size: 14px;">h1</span>larger

  4. Wrap content with tags<span style="font-family: 宋体, SimSun; font-size: 14px;">main</span> to make it more semantic

  5. Add the Tailwind class to the <span style="font-family: 宋体, SimSun; font-size: 14px;">main</span>#tag to add some padding and center the content

These are some minor changes that are not strictly necessary, but I think they will provide a good starting point for building our application in the next article starting point.

This is what the file looks like after I changed it.

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>
  );
});
Copy after login

In your browser:

Teach you step by step how to build artificial intelligence network applications!

Conclusion

That’s all we’re going to discuss today. Again, the main focus of this article is to eliminate boilerplate content so that the next article can be dedicated to integrating OpenAI's API into our project.

The above is the detailed content of Teach you step by step how to build artificial intelligence network applications!. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Bytedance Cutting launches SVIP super membership: 499 yuan for continuous annual subscription, providing a variety of AI functions Bytedance Cutting launches SVIP super membership: 499 yuan for continuous annual subscription, providing a variety of AI functions Jun 28, 2024 am 03:51 AM

This site reported on June 27 that Jianying is a video editing software developed by FaceMeng Technology, a subsidiary of ByteDance. It relies on the Douyin platform and basically produces short video content for users of the platform. It is compatible with iOS, Android, and Windows. , MacOS and other operating systems. Jianying officially announced the upgrade of its membership system and launched a new SVIP, which includes a variety of AI black technologies, such as intelligent translation, intelligent highlighting, intelligent packaging, digital human synthesis, etc. In terms of price, the monthly fee for clipping SVIP is 79 yuan, the annual fee is 599 yuan (note on this site: equivalent to 49.9 yuan per month), the continuous monthly subscription is 59 yuan per month, and the continuous annual subscription is 499 yuan per year (equivalent to 41.6 yuan per month) . In addition, the cut official also stated that in order to improve the user experience, those who have subscribed to the original VIP

Context-augmented AI coding assistant using Rag and Sem-Rag Context-augmented AI coding assistant using Rag and Sem-Rag Jun 10, 2024 am 11:08 AM

Improve developer productivity, efficiency, and accuracy by incorporating retrieval-enhanced generation and semantic memory into AI coding assistants. Translated from EnhancingAICodingAssistantswithContextUsingRAGandSEM-RAG, author JanakiramMSV. While basic AI programming assistants are naturally helpful, they often fail to provide the most relevant and correct code suggestions because they rely on a general understanding of the software language and the most common patterns of writing software. The code generated by these coding assistants is suitable for solving the problems they are responsible for solving, but often does not conform to the coding standards, conventions and styles of the individual teams. This often results in suggestions that need to be modified or refined in order for the code to be accepted into the application

Seven Cool GenAI & LLM Technical Interview Questions Seven Cool GenAI & LLM Technical Interview Questions Jun 07, 2024 am 10:06 AM

To learn more about AIGC, please visit: 51CTOAI.x Community https://www.51cto.com/aigc/Translator|Jingyan Reviewer|Chonglou is different from the traditional question bank that can be seen everywhere on the Internet. These questions It requires thinking outside the box. Large Language Models (LLMs) are increasingly important in the fields of data science, generative artificial intelligence (GenAI), and artificial intelligence. These complex algorithms enhance human skills and drive efficiency and innovation in many industries, becoming the key for companies to remain competitive. LLM has a wide range of applications. It can be used in fields such as natural language processing, text generation, speech recognition and recommendation systems. By learning from large amounts of data, LLM is able to generate text

Can fine-tuning really allow LLM to learn new things: introducing new knowledge may make the model produce more hallucinations Can fine-tuning really allow LLM to learn new things: introducing new knowledge may make the model produce more hallucinations Jun 11, 2024 pm 03:57 PM

Large Language Models (LLMs) are trained on huge text databases, where they acquire large amounts of real-world knowledge. This knowledge is embedded into their parameters and can then be used when needed. The knowledge of these models is "reified" at the end of training. At the end of pre-training, the model actually stops learning. Align or fine-tune the model to learn how to leverage this knowledge and respond more naturally to user questions. But sometimes model knowledge is not enough, and although the model can access external content through RAG, it is considered beneficial to adapt the model to new domains through fine-tuning. This fine-tuning is performed using input from human annotators or other LLM creations, where the model encounters additional real-world knowledge and integrates it

Five schools of machine learning you don't know about Five schools of machine learning you don't know about Jun 05, 2024 pm 08:51 PM

Machine learning is an important branch of artificial intelligence that gives computers the ability to learn from data and improve their capabilities without being explicitly programmed. Machine learning has a wide range of applications in various fields, from image recognition and natural language processing to recommendation systems and fraud detection, and it is changing the way we live. There are many different methods and theories in the field of machine learning, among which the five most influential methods are called the "Five Schools of Machine Learning". The five major schools are the symbolic school, the connectionist school, the evolutionary school, the Bayesian school and the analogy school. 1. Symbolism, also known as symbolism, emphasizes the use of symbols for logical reasoning and expression of knowledge. This school of thought believes that learning is a process of reverse deduction, through existing

To provide a new scientific and complex question answering benchmark and evaluation system for large models, UNSW, Argonne, University of Chicago and other institutions jointly launched the SciQAG framework To provide a new scientific and complex question answering benchmark and evaluation system for large models, UNSW, Argonne, University of Chicago and other institutions jointly launched the SciQAG framework Jul 25, 2024 am 06:42 AM

Editor |ScienceAI Question Answering (QA) data set plays a vital role in promoting natural language processing (NLP) research. High-quality QA data sets can not only be used to fine-tune models, but also effectively evaluate the capabilities of large language models (LLM), especially the ability to understand and reason about scientific knowledge. Although there are currently many scientific QA data sets covering medicine, chemistry, biology and other fields, these data sets still have some shortcomings. First, the data form is relatively simple, most of which are multiple-choice questions. They are easy to evaluate, but limit the model's answer selection range and cannot fully test the model's ability to answer scientific questions. In contrast, open-ended Q&A

SOTA performance, Xiamen multi-modal protein-ligand affinity prediction AI method, combines molecular surface information for the first time SOTA performance, Xiamen multi-modal protein-ligand affinity prediction AI method, combines molecular surface information for the first time Jul 17, 2024 pm 06:37 PM

Editor | KX In the field of drug research and development, accurately and effectively predicting the binding affinity of proteins and ligands is crucial for drug screening and optimization. However, current studies do not take into account the important role of molecular surface information in protein-ligand interactions. Based on this, researchers from Xiamen University proposed a novel multi-modal feature extraction (MFE) framework, which for the first time combines information on protein surface, 3D structure and sequence, and uses a cross-attention mechanism to compare different modalities. feature alignment. Experimental results demonstrate that this method achieves state-of-the-art performance in predicting protein-ligand binding affinities. Furthermore, ablation studies demonstrate the effectiveness and necessity of protein surface information and multimodal feature alignment within this framework. Related research begins with "S

SK Hynix will display new AI-related products on August 6: 12-layer HBM3E, 321-high NAND, etc. SK Hynix will display new AI-related products on August 6: 12-layer HBM3E, 321-high NAND, etc. Aug 01, 2024 pm 09:40 PM

According to news from this site on August 1, SK Hynix released a blog post today (August 1), announcing that it will attend the Global Semiconductor Memory Summit FMS2024 to be held in Santa Clara, California, USA from August 6 to 8, showcasing many new technologies. generation product. Introduction to the Future Memory and Storage Summit (FutureMemoryandStorage), formerly the Flash Memory Summit (FlashMemorySummit) mainly for NAND suppliers, in the context of increasing attention to artificial intelligence technology, this year was renamed the Future Memory and Storage Summit (FutureMemoryandStorage) to invite DRAM and storage vendors and many more players. New product SK hynix launched last year

See all articles