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-extract1
      source: start
      target: extract1
    - data:
        sourceType: parameter-extractor
        targetType: llm
      id: extract1-to-llm1
      source: extract1
      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
          completion_params:
            temperature: 0.2
        query:
        - start
        - query
        parameters:
        - name: client_name
          type: string
          description: 顧客の氏名・年齢・性別などの識別情報（可能な範囲で）
          required: false
        - name: age
          type: number
          description: 年齢（数値）。不明なら空欄に
          required: false
        - name: financial_status
          type: string
          description: 収入・貯蓄・資産・負債などの財務状況の要約
          required: true
        - name: investment_purpose
          type: string
          description: 資金使途・投資目的（例：老後資金、教育資金など）
          required: true
        - name: investment_experience
          type: string
          description: 投資・金融商品の経験（未経験・少し・豊富 等）
          required: true
        - name: risk_tolerance
          type: string
          description: リスク許容度（低〜高、具体的な記述があれば併記）
          required: true
        - name: investment_horizon
          type: string
          description: 投資／保有の期間（短期・中期・長期、年数など）
          required: true
        - name: liquidity_needs
          type: string
          description: 流動性の必要性（いつ現金化する可能性があるか）
          required: false
        - name: existing_insurance
          type: string
          description: 既存の保険加入状況（種類・保障額など）
          required: false
        - name: conflicts_of_interest
          type: string
          description: 面談で明示された利益相反や制約事項
          required: false
        - name: recommended_products
          type: string
          description: 提案された商品（面談内で営業が言及した商品）
          required: true
        - name: suitability_conclusion
          type: string
          description: 適合性判断の結論（提案が適合／一部適合しない 等）
          required: true
        reasoning_mode: prompt
        instruction: '以下の面談文字起こし（start.query）を参照し、上記パラメータを抽出してください。

          - 各パラメータが見つからない場合は空文字列にしてください。

          - 複数値がある場合は改行で区切って列挙してください。

          - financial_status や existing_insurance などは、可能な限り具体的な数値・事実（収入、貯蓄、既存保障の概要）を含めてください。

          - 最終的な出力は人間が読みやすい短い文章でお願いします。

          '
      height: 90
      id: extract1
      position:
        x: 380
        y: 282
      type: custom
      width: 244
    - data:
        title: 整形・規制チェックリスト生成（LLM）
        type: llm
        model:
          provider: openai
          name: gpt-5-mini
          mode: chat
          completion_params:
            temperature: 0.2
        prompt_template:
        - role: system
          text: 'あなたは日本の生命保険販売における法令（金融庁募集規制）と適合性確認に精通した専門家です。面談の文字起こしと抽出情報を元に、以下のフォーマットで出力してください。
            1) 意向把握（顧客の投資・保険に関する目的・ニーズの要約） 2) 適合性確認（各評価項目ごとに、抽出内容と照合した評価: 適合 / 一部適合しない
            / 不適合 と理由） 3) 推奨商品とその適合理由（該当する場合） 4) 面談要点（重要な発言や確認事項の抜粋） 5) コンプライアンス備考（必要な追加確認事項や記録留意点）
            出力は日本語で、読みやすい箇条書き形式と短い説明文を組み合わせてください。不要な追加フィールドは作成しないでください。

            '
        - role: user
          text: '面談の文字起こし:

            {{#start.query#}}


            抽出結果:

            client_name: {{#extract1.client_name#}}

            age: {{#extract1.age#}}

            financial_status: {{#extract1.financial_status#}}

            investment_purpose: {{#extract1.investment_purpose#}}

            investment_experience: {{#extract1.investment_experience#}}

            risk_tolerance: {{#extract1.risk_tolerance#}}

            investment_horizon: {{#extract1.investment_horizon#}}

            liquidity_needs: {{#extract1.liquidity_needs#}}

            existing_insurance: {{#extract1.existing_insurance#}}

            conflicts_of_interest: {{#extract1.conflicts_of_interest#}}

            recommended_products: {{#extract1.recommended_products#}}

            suitability_conclusion: {{#extract1.suitability_conclusion#}}


            上記を元に、金融庁の募集規制観点で「意向把握」と「適合性確認」が明確にわかる形式で整形してください。特に適合性の判断根拠を短く明示してください。

            '
        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
