Gmail to Vector Embeddings with PGVector and Ollama

该工作流自动从Gmail邮箱抓取邮件,结构化存储邮件内容到PostgreSQL数据库,并利用Ollama模型将文本转换为向量嵌入,存入PGVector数据库。支持历史邮件批量导入和新邮件实时监听,自动处理附件,提升邮件数据整理与智能检索的效率,适用于需要快速定位和分析大量邮件信息的企业与个人。

流程图
Gmail to Vector Embeddings with PGVector and Ollama 工作流程图

工作流名称

Gmail to Vector Embeddings with PGVector and Ollama

主要功能和亮点

该工作流实现了自动从Gmail邮箱抓取邮件,并将邮件内容结构化存储到PostgreSQL数据库中,同时利用Ollama的nomic-embed-text模型将邮件文本转化为向量嵌入(Vector Embeddings),存储于PGVector向量数据库,支持基于内容的相似度搜索。它支持批量导入历史邮件及实时监听新邮件,自动处理附件,并能按时间分批次抓取邮件。

解决的核心问题

  • 自动化整理和存储海量邮件数据,避免手动管理带来的低效和混乱
  • 将非结构化邮件文本转化为结构化数据及向量表示,方便后续的快速检索和智能分析
  • 支持邮件内容的相似度搜索,提升邮件信息利用效率
  • 解决历史邮件批量导入与新邮件实时同步的统一管理问题

应用场景

  • 企业或个人对大量邮件进行归档、检索和分析
  • 需要基于邮件内容做知识库构建、智能搜索和数据挖掘的场景
  • 客户服务、销售跟踪中快速定位相关邮件内容
  • 邮件数据与AI应用(如聊天机器人、智能问答)结合的基础数据准备

主要流程步骤

  1. Gmail Trigger:定时(每分钟)监听Gmail收件箱的新邮件,支持附件下载
  2. 批量历史邮件获取:通过设置时间区间,批量拉取历史邮件数据
  3. 邮件字段提取:抽取邮件文本、发件人、收件人、抄送、主题、附件等关键信息
  4. 结构化存储:将提取的邮件元数据保存到PostgreSQL数据库的emails_metadata
  5. 文本分割:对邮件正文进行递归字符切割,保证向量化输入质量
  6. 向量嵌入生成:调用Ollama的nomic-embed-text模型,生成邮件文本的向量表示
  7. 向量存储:将生成的向量嵌入存入PGVector的emails_embeddings表,关联邮件ID和线程ID
  8. 条件判断:针对手动触发和自动触发流程进行分流处理,确保灵活运行

涉及的系统或服务

  • Gmail(邮件收集和触发)
  • PostgreSQL(结构化数据存储)
  • PGVector(向量数据库插件,存储向量嵌入)
  • Ollama(调用nomic-embed-text模型生成文本嵌入)
  • n8n自动化平台(工作流编排执行)

适用人群或使用价值

  • IT运维和数据工程师:自动化邮件数据归档与管理,提升系统数据资产价值
  • 数据科学家和AI开发者:快速获取结构化邮件数据和对应向量,为机器学习和智能应用提供基础
  • 企业管理者和办公人员:提升邮件检索效率,优化客户沟通和内部信息管理
  • 任何需要对大量邮件内容做智能分析、搜索和归档的用户

该工作流将邮件数据处理与先进的向量化技术结合,实现邮件内容的结构化存储与智能检索,极大提升邮件管理的智能化与自动化水平。通过灵活的时间区间批量导入和实时监听新邮件,满足多场景下邮件数据的高效利用需求。