✨ あなたのドキュメントでChatGPTをトレーニングしよう 🪄 ✨
ChatGPTは2022年までトレーニングされています。
でも、自分のウェブサイトについて具体的な情報がほしいとしたらどうでしょうか?たいていは無理ですが、もうそうではありません!
OpenAIが新機能を導入しました - アシスタントです。
これで、簡単にあなたのウェブサイトを索引付けて、それについてChatGPTに質問することができます。このチュートリアルでは、ウェブサイトを索引付けてクエリできるシステムを構築します。次のように進めます:
- ドキュメンテーションのサイトマップをスクレイプする。
- ウェブサイト上の全ページから情報を抽出する。
- 新しい情報を持つ新しいアシスタントを作成する。
- 単純なChatGPTフロントエンドインターフェイスを構築し、アシスタントにクエリする。
バックグラウンドジョブプラットフォーム 🔌
Trigger.dev はオープンソースライブラリで、NextJS、Remix、Astroなどでアプリ作成や長時間実行されるジョブの監視ができます!
星をください 🥹。
それで、このような記事をもっと作るのを手伝ってくださるはずです 💖
はじめに 🔥
新しいNextJSプロジェクトをセットアップしましょう。
npx create-next-app@latest
💡 新しいアプリルーターNextJSを使います。プロジェクトのインストール前にnodeバージョン18+があることを確かめてください
アシスタントとスクレイプされたページを保存する新しいデータベースを作りましょう。
私たちの例では、SQLiteを使ったPrismaを使用します。
インストールはとても簡単です。実行するだけ:
npm install prisma @prisma/client --save
それから、以下を実行してスキーマとデータベースを追加します:
npx prisma init --datasource-provider sqlite
prisma/schema.prisma
に移動し、以下のスキーマに置き換えます:
// これはあなたのPrismaスキーマファイル、
// ドキュメントで詳しく学ぶことができます: https://pris.ly/d/prisma-schema
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "sqlite"
url = env("DATABASE_URL")
}
model Docs {
id Int @id @default(autoincrement())
content String
url String @unique
identifier String
@@index([identifier])
}
model Assistant {
id Int @id @default(autoincrement())
aId String
url String @unique
}
それから以下を実行します:
npx prisma db push
これで新しいSQLiteデータベース(ローカルファイル)が、2つの主要なテーブルDocs
とAssistant
を含むようになります。
Docs
は、スクレイプされた全ページを含みます。Assistant
は、ドキュメントのURLと内部のChatGPTアシスタントIDを含みます。
Prismaクライアントを追加しましょう。
新しいフォルダhelper
を作り、新しいファイルprisma.ts
を追加し、以下のコードを入れます:
import {PrismaClient} from '@prisma/client';
export const prisma = new PrismaClient();
これで後でprisma
変数を使用してデータベースに問い合わせられます。
---
こちらの記事はdev.toの良い記事を日本人向けに翻訳しています。
https://dev.to/triggerdotdev/train-chatgpt-on-your-documentation-1a9g