プロジェクト

全般

プロフィール

バグ #446

未完了

RAG Chat日本語化・LINEデザイン適用・Claude API連携実装

Redmine Admin さんが10日前に追加. 10日前に更新.

ステータス:
進行中
優先度:
急いで
担当者:
-
開始日:
2025-06-10
期日:
進捗率:

0%

予定工数:

説明

📋 実装要件

🎯 目標

  1. 日本語対話対応: すべてのUIと応答を日本語化
  2. LINEデザイン言語適用: 既存コンポーネントを活用
  3. Claude API連携実装: 実際のRAGシステム構築

🔧 実装内容

Phase 1: 日本語化・LINEデザイン適用

  • UIの完全日本語化
  • LINEデザイン言語コンポーネント適用
  • チャット画面をLINE風に調整

Phase 2: Claude API連携実装

  • Claude APIキー設定
  • 実際のRAGロジック実装
  • ベクトル検索統合(pgvector + Meilisearch)
  • ドキュメント処理機能
  • 日本語プロンプトエンジニアリング

📊 現状

  • UI: 完成(英語・基本デザイン)
  • API: モックモード動作中
  • インフラ: ベクトルDB・検索エンジン稼働中

🎯 完成イメージ

LINE風チャット画面での本格的な日本語RAGシステム

Redmine Admin さんが10日前に更新

  • ステータス新規 から 進行中 に変更

🚀 作業指示書 - RAG Chat日本語化・LINEデザイン適用・Claude API連携実装

📋 作業順序と詳細手順

Phase 1: 日本語化・LINEデザイン適用

Step 1.1: UIの完全日本語化
# 対象ファイル: /var/docker/task2-service/app/rag-advisor/src/pages/ChatInterface.tsx
# 修正内容:
- "RAG Assistant""RAGアシスタント"
- "Ask questions about your documents""ドキュメントについて質問してください"
- "No messages yet""まだメッセージはありません"
- "Start a conversation by asking a question below""下の入力欄から質問を開始してください"
- "Ask a question...""質問を入力してください..."
Step 1.2: LINEデザイン言語コンポーネント適用
// LINEスタイルのチャットバブル実装
// 色彩: LINE Green (#00B900), LINE Gray (#F7F7F7)
// フォント: LINE Seed Sans JP
// アイコン: LINE風の丸型アバター
// レイアウト: LINEチャット風の右寄せ・左寄せ
Step 1.3: CSSスタイル調整
/* LINEデザイン適用 */
.chat-bubble-user: background-color: #00B900; color: white; border-radius: 18px;
.chat-bubble-bot: background-color: #F7F7F7; color: #333; border-radius: 18px;

Phase 2: Claude API連携実装

Step 2.1: Claude APIキー設定
# 環境変数設定
cd /var/docker/task2-service
echo "ANTHROPIC_API_KEY=sk-ant-api03-..." >> .env
echo "CLAUDE_MODEL=claude-3-5-sonnet-20241022" >> .env
Step 2.2: 実際のRAGロジック実装
// /var/docker/task2-service/app/api/src/routes/rag.js の修正
const Anthropic = require('@anthropic-ai/sdk');

const anthropic = new Anthropic({
  apiKey: process.env.ANTHROPIC_API_KEY,
});

// 実際のRAG実装:
// 1. ベクトル検索でドキュメント取得
// 2. コンテキストをClaudeに送信
// 3. 日本語で回答生成
Step 2.3: ベクトル検索統合
// pgvector + Meilisearch統合
// 既存のtask2-vector-db (PostgreSQL + pgvector) 活用
// task2-search (Meilisearch) 活用
Step 2.4: 日本語プロンプトエンジニアリング
const systemPrompt = `
あなたは日本語対応のRAGアシスタントです。
提供されたドキュメントを基に、正確で有用な回答を日本語で提供してください。

回答時のルール:
1. 必ず日本語で回答
2. 丁寧語を使用
3. ソース情報を含める
4. 不明な場合は正直に伝える
`;

🔧 実装環境

対象コンテナ・サービス

  • task2-api: APIロジック実装
  • task2-ui: フロントエンド更新
  • task2-vector-db: ベクトル検索
  • task2-search: 全文検索

利用可能インフラ

  • ✅ PostgreSQL + pgvector (ベクトルDB稼働中)
  • ✅ Meilisearch (検索エンジン稼働中)
  • ✅ Redis (キャッシュ稼働中)
  • ✅ Nginx (プロキシ設定済み)

📊 期待される成果

完成後の機能

  1. 日本語でのRAG対話: 自然な日本語での質問・回答
  2. LINEライクなUI: 親しみやすいチャット画面
  3. 実際のドキュメント検索: pgvector + Meilisearchでの高精度検索
  4. Claude連携: 最新のClaude 3.5 Sonnetでの回答生成

テスト項目

  • 日本語質問の正常処理
  • ドキュメント検索の精度確認
  • Claude API応答の品質確認
  • LINE風UIの表示確認

🎯 開始準備完了

現在のシステム状況:

  • ✅ UI基盤: 完成
  • ✅ API構造: 完成
  • ✅ インフラ: 完全稼働
  • 🔄 Claude API: 実装待ち

標準ワークフローに従って実装を開始してください。

Redmine Admin さんが10日前に更新

📊 Phase 2進捗報告 - Claude API連携実装中

✅ 完了済み項目

Phase 1: LINE風デザイン・日本語化

  • 完全完了: 100%達成
  • UI: LINE風チャット画面実装
  • 日本語化: 全UI・メッセージの日本語対応
  • 動作確認: ブラウザテスト済み・スクリーンショット取得

Phase 2: Claude API連携実装

  • 環境設定: ANTHROPIC_API_KEY・CLAUDE_MODEL設定
  • コード実装: 208行の完全なClaude API統合ロジック作成
  • 日本語プロンプト: 日本語システムプロンプト実装
  • 検索統合: Meilisearch・pgvector統合準備
  • Git管理: コード変更をコミット・バックアップ作成

🔄 現在の課題と対応

依存関係の問題

  • 問題: コンテナ内で@anthropic-ai/sdkモジュールが見つからない
  • 原因: package.jsonとnode_modules間の不整合
  • 対応: 依存関係解決後にClaude API統合を再適用予定

実装済み機能(動作準備完了)

- /api/rag/ask: Claude API + RAG問答
- /api/rag/health: Claude API接続テスト  
- 日本語システムプロンプト
- Meilisearch全文検索
- エラーハンドリングログ

📈 進捗率

  • Phase 1: 100%完了 ✅
  • Phase 2: 75%完了 🔄
  • 全体: 87.5%完了

🎯 次のアクション

  1. 依存関係解決: npm install・モジュール同期
  2. Claude API統合再適用: 実装済みコードを安全に適用
  3. 段階的テスト: API→UI→エンドツーエンドテスト
  4. 最終動作確認: 日本語RAGシステム完全動作確認

Line風日本語RAGシステムの基盤は完成、Claude API統合の最終調整中です。

他の形式にエクスポート: Atom PDF