app:
  description: 季節イベントやターゲット層に基づき、競合ホテルのプランも踏まえて魅力的な宿泊プランを提案します。
  icon: 🤖
  icon_background: '#FFEAD5'
  mode: workflow
  name: 宿泊プランコンセプト提案
  use_icon_as_answer_icon: false
kind: app
version: 0.1.5
workflow:
  conversation_variables: []
  environment_variables: []
  features:
    file_upload:
      image:
        enabled: false
    opening_statement: ''
    suggested_questions: []
    suggested_questions_after_answer:
      enabled: false
    text_to_speech:
      enabled: false
  graph:
    edges:
    - data:
        sourceType: start
        targetType: parameter-extractor
      id: start-to-extractor1
      source: start
      target: extractor1
    - data:
        sourceType: parameter-extractor
        targetType: llm
      id: extractor1-to-llm1
      source: extractor1
      target: llm1
    - data:
        sourceType: llm
        targetType: template-transform
      id: llm1-to-template1
      source: llm1
      target: template1
    - data:
        sourceType: template-transform
        targetType: end
      id: template1-to-end
      source: template1
      target: end
    nodes:
    - data:
        title: 開始
        type: start
        variables:
        - label: query
          max_length: 2048
          options: []
          required: true
          type: paragraph
          variable: query
      height: 90
      id: start
      position:
        x: 80
        y: 282
      type: custom
      width: 244
    - data:
        title: 提案情報抽出
        type: parameter-extractor
        model:
          provider: openai
          name: gpt-5-mini
          mode: chat
        query:
        - start
        - query
        parameters:
        - name: season
          type: string
          description: '宿泊プランの対象となる季節（例: 夏、冬、通年）。情報がない場合は「不明」と抽出。'
          required: true
        - name: target_audience
          type: string
          description: '宿泊プランのターゲットとなる客層（例: カップル、ファミリー、ビジネス客）。情報がない場合は「不明」と抽出。'
          required: true
        - name: location_keywords
          type: string
          description: '場所や雰囲気に関するキーワード（例: 海の見える、温泉付き、静かな山奥）。情報がない場合は「不明」と抽出。'
          required: true
        - name: competitor_info
          type: string
          description: '考慮すべき競合に関する情報（例: 競合AのBBQプラン、近くの高級旅館）。情報がない場合は「なし」と抽出。'
          required: true
        - name: specific_requests
          type: string
          description: 'その他具体的な要望や特徴（例: 星空観察、地元の食材を使った料理、ペット同伴可）。情報がない場合は「なし」と抽出。'
          required: true
        reasoning_mode: prompt
        instruction: ユーザーからの要望に基づき、宿泊プラン提案に必要な以下の情報を抽出してください。抽出できない場合は必ず「不明」または「なし」と返してください。
      height: 90
      id: extractor1
      position:
        x: 380
        y: 282
      type: custom
      width: 244
    - data:
        title: プランコンセプト提案
        type: llm
        model:
          provider: openai
          name: gpt-5-mini
          mode: chat
          completion_params:
            temperature: 0.7
        prompt_template:
        - role: system
          text: 'あなたは一流のホテル・飲食プランナーです。ユーザーが提供した情報と、そこから抽出された以下の情報に基づいて、競合と比較して魅力的で具体的な宿泊プランのコンセプトを2～3案提案してください。


            提案は以下の項目を網羅し、ユーザーの興味を引くように工夫してください。特に競合との差別化ポイントを明確にしてください。


            - プラン名: [魅力的なプラン名]

            - ターゲット: [このプランが誰向けか]

            - コンセプト概要: [プランの全体像、提供価値]

            - 主な特徴・アクティビティ: [提供される具体的な体験、食事、サービスなど]

            - 競合との差別化ポイント: [競合他社と比較して優れている点や独自性]

            - 想定される価格帯: [例: 2万円台～、高級志向]


            出力はMarkdown形式で、読みやすく整形してください。



            ---


            【最終出力フォーマット (この指示が最優先)】

            最終出力は **読みやすい日本語の Markdown** で返してください。JSON

            配列・オブジェクトをそのまま出力してはいけません。

            - 見出し (## / ###) でセクションを区切る

            - リスト (- / 1.) や表 (| ... |) で構造化

            - 各項目の意図や根拠が分かるよう短い説明文を添える

            - 営業デモで顧客に直接見せられる体裁にする


            (構造化されたデータ項目を内部で扱うのは構いませんが、出力時に Markdown

            に変換してください。)'
        - role: user
          text: '### ユーザーのオリジナル要望:

            {{#start.query#}}


            ### 抽出された情報:

            季節: {{#extractor1.season#}}

            ターゲット層: {{#extractor1.target_audience#}}

            ロケーション/雰囲気: {{#extractor1.location_keywords#}}

            競合情報: {{#extractor1.competitor_info#}}

            具体的な要望: {{#extractor1.specific_requests#}}


            ### 提案依頼:

            上記の情報を踏まえ、魅力的な宿泊プランのコンセプトを複数案提案してください。

            '
        vision:
          enabled: false
        memory: null
        context:
          enabled: false
      height: 90
      id: llm1
      position:
        x: 680
        y: 282
      type: custom
      width: 244
    - data:
        title: レポート整形
        type: template-transform
        template: '**宿泊プランコンセプト提案レポート**


          **ユーザーからの依頼内容概要**

          {{ query }}


          **AIによる提案プランコンセプト**

          ---

          {{ plan_suggestions }}

          ---


          このレポートはAIによって生成されたものです。詳細な企画は専門家にご相談ください。

          '
        variables:
        - value_selector:
          - start
          - query
          variable: query
        - value_selector:
          - llm1
          - text
          variable: plan_suggestions
      height: 90
      id: template1
      position:
        x: 980
        y: 282
      type: custom
      width: 244
    - data:
        title: 終了
        type: end
        outputs:
        - value_selector:
          - template1
          - output
          variable: result
      height: 90
      id: end
      position:
        x: 1280
        y: 282
      type: custom
      width: 244
  hash: null
