Maison >interface Web >js tutoriel >Intégrez l'IA sans effort : guide du débutant sur l'utilisation de CopilotKit
CopilotKit est un framework open source qui facilite l'intégration de copilotes IA puissants et prêts pour la production dans n'importe quelle application. Avec CopilotKit, vous pouvez implémenter en toute transparence des chatbots IA personnalisés, des agents, des zones de texte et bien plus encore pour améliorer votre produit.
?Créons une application dans laquelle nous apprendrons comment intégrer CopilotKit dans notre application :-
Cette application utilise CopilotKit pour générer automatiquement des flashcards et des quiz. Demandez simplement au chatbot alimenté par l'IA de créer des flashcards sur n'importe quel sujet, et il générera instantanément à la fois des flashcards et un quiz correspondant. C’est un moyen rapide et efficace d’en apprendre davantage sur n’importe quel sujet.
Frontend : NextJs, Tailwind CSS, shadcdn, Zustand
Backend : Js suivants
Stockage de données : Stockage local
npm install @copilotkit/react-core @copilotkit/react-ui @copilotkit/runtime
GROQ_API_KEY=<your_groq_api_key>
?Pour obtenir votre clé API Groq, suivez ces étapes :
Accédez à GroqCloud et générez une clé API en cliquant sur le bouton Créer une clé API.
Backend : Pour le backend, nous allons configurer un point de terminaison /api/copilotkit. Ce point de terminaison traitera les requêtes du frontend, servira les données ou répondra selon les besoins. Ce point de terminaison unique est tout ce dont vous avez besoin pour alimenter votre application avec CopilotKit.
import { CopilotRuntime, GroqAdapter, copilotRuntimeNextJSAppRouterEndpoint, } from "@copilotkit/runtime"; import { NextRequest } from "next/server"; import Groq from "groq-sdk"; const groq:Groq = new Groq({ apiKey: process.env.GROQ_API_KEY }) ; const copilotKit = new CopilotRuntime(); const serviceAdapter = new GroqAdapter({ groq, model: "llama3-groq-8b-8192-tool-use-preview" }); export const POST = async (req: NextRequest) => { const { handleRequest } = copilotRuntimeNextJSAppRouterEndpoint({ runtime: copilotKit, serviceAdapter, endpoint: "/api/copilotkit", }); return handleRequest(req); };
Frontend :
Maintenant, intégrons CopilotKit dans notre application. CopilotKit fournit plusieurs hooks utiles, et pour ce tutoriel, nous nous concentrerons sur deux essentiels :
npm install @copilotkit/react-core @copilotkit/react-ui @copilotkit/runtime
GROQ_API_KEY=<your_groq_api_key>
import { CopilotRuntime, GroqAdapter, copilotRuntimeNextJSAppRouterEndpoint, } from "@copilotkit/runtime"; import { NextRequest } from "next/server"; import Groq from "groq-sdk"; const groq:Groq = new Groq({ apiKey: process.env.GROQ_API_KEY }) ; const copilotKit = new CopilotRuntime(); const serviceAdapter = new GroqAdapter({ groq, model: "llama3-groq-8b-8192-tool-use-preview" }); export const POST = async (req: NextRequest) => { const { handleRequest } = copilotRuntimeNextJSAppRouterEndpoint({ runtime: copilotKit, serviceAdapter, endpoint: "/api/copilotkit", }); return handleRequest(req); };
useCopilotReadable({ description: 'A code snippet manager', value: flashcards, });
useCopilotAction({ name: "create-flashcards-and-also-quiz-questions-for-those-flashcards", description: `Create a new flashcard along with corresponding quiz questions. Each flashcard should contain a term, description, topic, and relevant tags. Additionally, for each flashcard, generate quiz questions with multiple answer options. The quiz questions should conform to the 'QuizQuestion' interface, where: - Each question contains a string 'question', an array of four 'options', and the 'correctOption' corresponding to the correct answer. `, parameters: [ { name: "flashcards", description: "The flashcards for the given topic", type: "object[]", // Use "array" as the type }, { name: "quiz", description: "The quiz questions for the given topic, adhering to the QuizQuestion interface", type: "object[]", // Use "array" for QuizQuestion[] }, { name:"topic", description: "The title of the topic", type: "string" } ], handler: (args: { flashcards: Flashcard[], quiz: QuizQuestion[], topic: string }) => { addTopics(args); }, });
Captures d'écran de l'application finale :
C'est le projet auquel je fais référence :
https://github.com/Niharika0104/learn-using-flash-cards
Ici une démonstration en direct du projet :
https://apprendre-à-utiliser-flash-cards.vercel.app/
J'espère que vous avez apprécié ce court tutoriel sur CopilotKit. Restez à l'écoute pour d'autres tutoriels aussi intéressants et concis !
J'espère vous voir tous dans le prochain,
Niharika.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!