8
n8n 中文网amn8n.com

🏠 与房地产经纪人和 Bright Data 一起寻找您的家

中级

这是一个AI, Marketing领域的自动化工作流,包含 11 个节点。主要使用 If, Wait, Agent, BrightData, BrightDataTool 等节点,结合人工智能技术实现智能自动化。 🏠 与房地产经纪人和 Bright Data 一起寻找您的家

前置要求
  • OpenAI API Key
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "meta": {
    "instanceId": "b1f85eae352fde76d801a1a612661df6824cc2e68bfd6741e31305160a737e6e",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "d9e07286-a8be-4c28-8519-acf7cd35ad86",
      "name": "当收到聊天消息时",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        -900,
        -40
      ],
      "webhookId": "57251efe-e57c-43e2-ac58-bf27f1ec639d",
      "parameters": {
        "public": true,
        "options": {
          "showWelcomeScreen": true
        },
        "initialMessages": "Hi there! 👋\n\nMy name is Miquel and I am your personal Real Estate agent. I help you to find your new home.\n\nWhat are you looking for?"
      },
      "typeVersion": 1.1
    },
    {
      "id": "7ca48714-3c65-4f32-9491-7b7b621aaa00",
      "name": "简单记忆1",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        -420,
        140
      ],
      "parameters": {
        "contextWindowLength": 30
      },
      "typeVersion": 1.3
    },
    {
      "id": "79bea812-5a33-40a1-aa74-fe202d39dded",
      "name": "OpenAI 聊天模型",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -580,
        140
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "oKzfvOwieOm4upQ2",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "30ef3cfc-56db-4092-af0d-304afdad94f0",
      "name": "过滤数据集",
      "type": "n8n-nodes-brightdata.brightDataTool",
      "position": [
        -260,
        140
      ],
      "parameters": {
        "resource": "marketplaceDataset",
        "operation": "filterDataset",
        "dataset_id": {
          "__rl": true,
          "mode": "list",
          "value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Dataset', ``, 'string') }}"
        },
        "filter_type": "filters_group",
        "filters_group": "={{ $fromAI('Filters_Group') }}",
        "records_limit": "=3",
        "descriptionType": "manual",
        "toolDescription": "Create a dataset snapshot based on a provided filter in BrightData. use always filter homeStatus = FOR_SALE. We have the next operators: =, >, >=, in, <, <=, not_array_includes, !=, not_in, not_includes\n\nFilter must follow the next format:\n{\n    \"operator\": \"and\",\n    \"filters\": [\n        {\n            \"name\": \"homeStatus\",\n            \"operator\": \"=\",\n            \"value\": \"FOR_SALE\"\n        },\n        {\n            \"name\": \"price\",\n            \"operator\": \"=\",\n            \"value\": 1000000\n        },\n        {\n            \"name\": \"city\",\n            \"operator\": \"=\",\n            \"value\": \"new york\"\n        },\n        {\n            \"name\": \"bathrooms\",\n            \"operator\": \"=\",\n            \"value\": 2\n        },\n        {\n            \"name\": \"bedrooms\",\n            \"operator\": \"=\",\n            \"value\": 4\n        }\n    ]\n}"
      },
      "credentials": {
        "brightdataApi": {
          "id": "jk945kIuAFAo9bcg",
          "name": "BrightData account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "6c4c4338-e4d2-40ee-89c0-89e1dd1dc330",
      "name": "当由另一个工作流执行时",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        -660,
        -340
      ],
      "parameters": {
        "inputSource": "passthrough"
      },
      "typeVersion": 1.1
    },
    {
      "id": "9db2680e-8bad-4b91-9cd6-8240f53081a0",
      "name": "快照准备好了吗?",
      "type": "n8n-nodes-base.if",
      "position": [
        -120,
        -340
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "or",
          "conditions": [
            {
              "id": "3e99082f-412a-4e33-ab77-c99ddd4d7ff5",
              "operator": {
                "type": "string",
                "operation": "exists",
                "singleValue": true
              },
              "leftValue": "={{ $json.items[0].abbreviatedAddress }}",
              "rightValue": "NodeApiError"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "75f66a3a-7738-4a1c-af8a-29385ad41749",
      "name": "等待",
      "type": "n8n-nodes-base.wait",
      "position": [
        100,
        -260
      ],
      "webhookId": "7d5607bb-7cbd-439e-a95e-dfe326486b74",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "19beba9e-6089-443f-a384-4be3ec821423",
      "name": "房地产AI助手",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -460,
        -40
      ],
      "parameters": {
        "text": "={{ $json.chatInput }}",
        "options": {
          "maxIterations": 10,
          "systemMessage": "=You are an expert AI Real Estate Agent.\n\nFollow the next guidelines always:\n\n1) If you have no memory, recover the metadata from the next databases:\n- Zillow properties listing information gd_lfqkr8wm13ixtbd8f5\nWe have the next filters:\n- city: City name where entity is located. Contains valid US city names as text strings.\n- bedrooms: Column stores the number of bedrooms in properties. Values are positive integers ranging from 1 to 7, with most properties having 2-4 bedrooms and no null values.\n- bathrooms: Number of bathrooms in residential properties. Values are positive integers ranging from 1 to 7, with most properties having 2-3 bathrooms and no null values.\n- price: Property price in US dollars. Format sample: 180,000\n\nInform user that only 3 houses will be reported.\nOnly call filterDataset if user completes city, bedrooms, bathrooms and price filters.\n\n2) Use filterDataset to generate a snapshot of the requested houses by mapping filter of the user.\nOnly allow one call to tool \"Filter Dataset\", \n\n3) After calling \"filter Dataset\" tool, use tool \"Get Snapshot Content\". Pass snapshot_id parameter.\n\n4) Use output from tool \"Get Snapshot Content\" to convert json to a list of properties with ul > li\nuse returned images to present home briefing"
        },
        "promptType": "define"
      },
      "typeVersion": 1.9
    },
    {
      "id": "679e5b92-7b52-4230-a395-f3840d167756",
      "name": "便签1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -960,
        -600
      ],
      "parameters": {
        "width": 1260,
        "height": 880,
        "content": "# 使用Bright Data的房地产AI助手"
      },
      "typeVersion": 1
    },
    {
      "id": "118c60c3-3a46-4ca2-be84-997218949bde",
      "name": "恢复快照内容",
      "type": "n8n-nodes-brightdata.brightData",
      "position": [
        -340,
        -340
      ],
      "parameters": {
        "resource": "marketplaceDataset",
        "operation": "getSnapshotContent",
        "snapshot_id": "={{ $('When Executed by Another Workflow').item.json.query }}"
      },
      "credentials": {
        "brightdataApi": {
          "id": "jk945kIuAFAo9bcg",
          "name": "BrightData account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "5cc00806-6995-4d82-a832-f3159a66e31a",
      "name": "获取快照内容",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        -100,
        140
      ],
      "parameters": {
        "workflowId": {
          "__rl": true,
          "mode": "id",
          "value": "Ky9jD15PJgT7PIgP"
        },
        "workflowInputs": {
          "value": {},
          "schema": [],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2.2
    }
  ],
  "pinData": {},
  "connections": {
    "Wait": {
      "main": [
        [
          {
            "node": "Recover Snapshot Content",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter Dataset": {
      "ai_tool": [
        [
          {
            "node": "Real Estate AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Simple Memory1": {
      "ai_memory": [
        [
          {
            "node": "Real Estate AI Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Real Estate AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Snapshot is ready?": {
      "main": [
        [],
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Snapshot Content": {
      "ai_tool": [
        [
          {
            "node": "Real Estate AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Recover Snapshot Content": {
      "main": [
        [
          {
            "node": "Snapshot is ready?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received": {
      "main": [
        [
          {
            "node": "Real Estate AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When Executed by Another Workflow": {
      "main": [
        [
          {
            "node": "Recover Snapshot Content",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

中级 - 人工智能, 营销

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
中级
节点数量11
分类2
节点类型11
难度说明

适合有一定经验的用户,包含 6-15 个节点的中等复杂度工作流

作者
Miquel Colomer

Miquel Colomer

@mcolomer

As a passionate developer and AI agent creator, I’ve been at the forefront of automation, pioneering workflows and training AI to handle complex tasks seamlessly. I’m an early adopter and expert of n8n, having worked with its powerful capabilities to create automation solutions for diverse industries. I founded n8nhackers, the first AI-powered agency focused on n8n, where we help businesses transform their workflows with cutting-edge automation.

外部链接
在 n8n.io 查看

分享此工作流