xAI の API を使用した個人用チャットボットアプリケーションです。過去の会話履歴を考慮した対話を行うことができます。
- 複数のチャットスレッドの作成と管理
- チャット履歴の永続化
- 過去のコンテキストを考慮した応答
- シンプルで使いやすい UI
- フロントエンド: Next.js (App Router), TypeScript, Tailwind CSS
- 状態管理: Zustand
- データベース: PostgreSQL (Neon)
- ORM: Prisma
- API: xAI API
- Node.js 18 以上
- NPM または Yarn
- xAI API キー
- PostgreSQL データベース (Neon を推奨)
PowerShell/CMD:
git clone <リポジトリURL>
cd llm-chatbot
Bash (Linux/macOS):
git clone <リポジトリURL>
cd llm-chatbot
PowerShell/CMD:
npm install
Bash (Linux/macOS):
npm install
# または
yarn install
- Neon 公式サイトにアクセスし、アカウントを作成します。
- ダッシュボードから「New Project」を選択します。
- プロジェクト名を入力します(例:「grok-chatbot」)。
- リージョンを選択します(通常は最も近い地域)。
- 「Create Project」をクリックします。
- 作成したプロジェクトの接続情報(接続文字列)をコピーします。
- 接続文字列の形式:
postgresql://user:password@hostname:port/database
.env.local
ファイルを作成し、以下の環境変数を設定:
DATABASE_URL="postgresql://username:password@host:port/database"
XAI_API_KEY="your-xAI-api-key"
XAI_API_URL="https://api.x.ai/v1"
llm-app/prisma ディレクトリに.env ファイルを作製し、以下の環境変数を設定:
DATABASE_URL="postgresql://username:password@host:port/database"
PowerShell/CMD:
npx prisma migrate dev --name init
Bash (Linux/macOS):
npx prisma migrate dev --name init
PowerShell/CMD:
npm run dev
Bash (Linux/macOS):
npm run dev
# または
yarn dev
ブラウザで http://localhost:3000 にアクセスしてアプリケーションを使用できます。
- 「新規チャット」ボタンをクリックして新しい会話を開始
- チャットのタイトルを入力
- メッセージを入力して送信
- 左側のサイドバーからチャット履歴を閲覧・管理
- API エンドポイントは
/api/chat
と/api/messages
に実装されています - Prisma スキーマは
prisma/schema.prisma
にあります - 状態管理は
src/lib/store.ts
で行なっています
MIT