AI Database Sample 技術仕様書

目次

  1. システム概要
  2. システムアーキテクチャ
  3. ファイル構成
  4. データベース設計
  5. API仕様
  6. AI機能詳細
  7. セキュリティ仕様
  8. パフォーマンス仕様
  9. 運用要件
  10. 拡張性
  11. 制限事項
  12. エラーハンドリング

1. システム概要

AI Database Sampleは、OpenAI APIとPHP/SQLiteを使用したAI駆動型顧客管理システムです。従来の手動CRUD操作に加えて、自然言語によるデータベース操作機能を提供します。

1.1 主要機能

2. システムアーキテクチャ

2.1 技術スタック

フロントエンドHTML5, JavaScript (ES6+), Bootstrap 5
バックエンドPHP 7.4+
データベースSQLite 3
AI機能OpenAI GPT API
WebサーバーApache/Nginx(PHP対応)

2.2 システム構成図

[ブラウザ] ↓ HTTP Request [index.html] ↓ AJAX Request [API Layer (PHP)] ├─ customers.php (CRUD API) ├─ chat.php (AI Chat API) └─ config.php (設定・DB接続) ↓ SQLite Connection [SQLite Database (セッション固有)] ↓ External API Call [OpenAI API]

3. ファイル構成

ai_db/ ├── index.html # メインUI・SPA ├── config.php # 設定ファイル・データベース管理 ├── database.sql # データベース初期化スクリプト ├── api/ │ ├── customers.php # 顧客CRUD API │ └── chat.php # AI チャットAPI └── databases/ # セッション固有データベース格納フォルダ └── session_*.db # セッション毎のSQLiteファイル

4. データベース設計

4.1 テーブル構成

customers テーブル

フィールド名 データ型 制約 説明
idINTEGERPRIMARY KEY, AUTOINCREMENT顧客ID(自動採番)
customer_codeTEXTNOT NULL, UNIQUE顧客コード
customer_nameTEXTNOT NULL顧客名称
addressTEXTNOT NULL住所
created_atDATETIMEDEFAULT CURRENT_TIMESTAMP作成日時
updated_atDATETIMEDEFAULT CURRENT_TIMESTAMP更新日時

4.2 データベース管理機能

5. API仕様

5.1 顧客管理API(/api/customers.php)

GET 全顧客取得

GET 特定顧客取得

POST 新規顧客作成

{ "customer_code": "CUST004", "customer_name": "新規顧客株式会社", "address": "東京都新宿区1-1-1" }

PUT 顧客更新

{ "customer_name": "更新された顧客名" }

DELETE 顧客削除

5.2 AI チャットAPI(/api/chat.php)

POST 自然言語操作

{ "message": "IDが3の顧客を削除して" }
{ "success": true, "message": "操作が完了しました", "data": {...}, "ai_action": {...}, "user_message": "..." }

6. AI機能詳細

6.1 AI処理フロー

  1. ユーザーからの自然言語入力を受信
  2. OpenAI APIに処理指示を送信
  3. AIがデータベース操作アクションを判定
  4. 判定されたアクションに基づきデータベース操作を実行
  5. 結果をユーザーに返却

6.2 対応操作種別

6.3 AI プロンプト設計

システムプロンプトにより、AIに以下の役割を定義:

7. セキュリティ仕様

7.1 データベースセキュリティ

7.2 API セキュリティ

8. パフォーマンス仕様

8.1 データベース最適化

8.2 フロントエンド最適化

9. 運用要件

9.1 システム要件

9.2 必要な設定

注意: config.php内の設定項目(データベースディレクトリパス、セッション設定、CORS設定)の適切な設定が必要です。

9.3 メンテナンス機能

10. 拡張性

10.1 機能拡張ポイント

10.2 技術拡張ポイント

11. 制限事項

11.1 技術的制限

11.2 AI機能制限

12. エラーハンドリング

12.1 データベースエラー

12.2 API エラー

12.3 AI API エラー

AI Database Sample 技術仕様書 - 最終更新日: 2025年8月30日