app:
  description: 保険の更新案内・失効予告のメール／文書ドラフトを、顧客属性に合わせて自動生成します。入力は営業やオペレーターが記載した顧客情報・備考を一つのテキスト欄にまとめて入力してください。出力は件名と本文（日本語）を含むドラフトです。
  icon: 📨
  icon_background: '#FFEAD5'
  mode: workflow
  name: 保険_更新通知文ドラフト生成
  use_icon_as_answer_icon: false
kind: app
version: 0.6.0
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: end
      id: llm1-to-end
      source: llm1
      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: customer_name
          type: string
          description: 顧客氏名（敬称含む、可能ならフルネーム）
          required: true
        - name: policy_type
          type: string
          description: '保険の種類（例: 自動車保険、生命保険など）'
          required: true
        - name: renewal_date
          type: string
          description: 更新予定日（可能なら YYYY-MM-DD 形式）
          required: true
        - name: premium
          type: number
          description: 保険料（年間または月額。不明なら空）
          required: false
        - name: customer_status
          type: string
          description: '契約状況（例: 有効、失効、継続審査中等）'
          required: true
        - name: contact_preference
          type: string
          description: 連絡方法の希望（メール、郵送、電話等）
          required: false
        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: "あなたは保険会社のカスタマーコミュニケーション作成の専門家です。以下のルールに従って、顧客属性に合わせた「更新案内」または「失効予告」のメール／文書ドラフト（日本語）を作成してください。\n\
            出力ルール:\n1) 常に「件名」と「本文」を作ること。本文は導入→主要案内→行動喚起（CTA）→問い合わせ情報の順に構成すること。\n2)\
            \ 顧客の契約状況（customer_status）に応じてトーンを変える:\n   - 「失効」「失効予告」に該当する場合: 友好的かつ差し迫ったトーンで、期限・影響・対応方法を明確に伝える（具体的な締切日や連絡方法を明記）。\n\
            \   - 「有効」「更新案内」に該当する場合: 更新手続きの案内と、早期対応のメリットを丁寧に説明する。\n3) 顧客名や保険種別、更新日、保険料、連絡希望がある場合は本文中に自然に差し込む（敬称は「様」）。個人情報の省略は指示がない限り行わないでください。\n\
            4) 行動喚起は具体的に（例: ウェブ手続きリンク、電話番号、返信用メールアドレス、必要書類）を1つ以上提示する。利用できない情報は「お問い合わせください」の文言で代替する。\n\
            5) 不足情報がある場合、本文末尾に「不足情報」として箇条書きで列挙すること。\n6) 出力は日本語で、営業やコールセンターがそのまま利用できる文面を意識すること。専門用語が出る場合は簡潔な注釈を付ける。\n"
        - role: user
          text: 'ユーザー入力:

            {{#start.query#}}


            抽出結果:

            顧客名: {{#extractor1.customer_name#}}

            保険種別: {{#extractor1.policy_type#}}

            更新予定日: {{#extractor1.renewal_date#}}

            保険料: {{#extractor1.premium#}}

            契約状況: {{#extractor1.customer_status#}}

            連絡希望: {{#extractor1.contact_preference#}}


            指示:

            - 上記をもとに最適な文面を作成してください。

            - 「契約状況」に「失効」「失効予定」「lapse」などの語が含まれる場合は、失効予告のフォーマット（差し迫ったトーン）を優先してください。

            - それ以外は更新案内フォーマットで作成してください。

            - 件名は簡潔かつ注意を引く文面にし、本文は読みやすい段落と箇条書きを含めてください。

            - 可能であれば、保険料が数値で示されていれば「ご負担額」の提示文に反映してください。

            - 出力はプレーンテキストとして「件名: ...」と「本文:」で始めてください。

            '
        vision:
          enabled: false
        memory: null
        context:
          enabled: false
      height: 90
      id: llm1
      position:
        x: 680
        y: 282
      type: custom
      width: 244
    - data:
        title: 終了
        type: end
        outputs:
        - value_selector:
          - llm1
          - text
          variable: result
      height: 90
      id: end
      position:
        x: 980
        y: 282
      type: custom
      width: 244
  hash: null
