# practice_suggest.py - Simple (non-AI) query suggestion import random from typing import Tuple # Candidate queries per stage name (adjust as needed) CANDIDATES = { "Pythonサーバーサイド志望": [ "サーバーサイド リモート 業務改善", "API 開発 テスト自動化", "バックエンド 在宅 パフォーマンス改善", "Flask FastAPI データ処理", ], "リモート可のフロントエンド(React)希望": [ "React フロントエンド リモート", "Next.js UI改善 デザイン", "SPA 在宅 パフォーマンス最適化", "React 性能最適化 リモート勤務", ], "機械学習・NLPに挑戦したい": [ "機械学習 ABテスト 推薦", "日本語 学習 文章分類", "レコメンド モデル 改善", "指標設計 検索 仮説検証", ], "インフラ/SREとして信頼性を高めたい": [ "SRE 可観測性 自動化", "インフラ 設計 インシデント対応", "監視 ログ トレース", "信頼性 改善 KPI", ], "SaaSのビジネス職(営業/CS/マーケ)を希望": [ "解約率低減 LTV向上", "カスタマーサクセス オンボーディング", "B2B マーケ テック", "解約率 低減 施策", ], } def propose_query(stage_name: str, last_suggested: str = "") -> Tuple[str, str]: """Propose a simple query based on the stage name. Returns: (suggested_query, new_last_suggest_state) """ pool = CANDIDATES[stage_name] # Prefer a query that is different from the previous suggestion choices = [q for q in pool if q != last_suggested] suggestion = random.choice(choices) return suggestion, suggestion